Slide 1

Slide 1 text

Rancherと出会って BB流 初心者でもわかる、虜になる瞬間 Rancher Meetup Osaka #12 Taisuke Okamoto

Slide 2

Slide 2 text

自己紹介 岡本泰典 (Taisuke Okamoto) KaaS Engineer (Storage, Network etc...) 株式会社IDCフロンティア @taisuke_bigbaby 2 Community ● CloudNative Days Co-chair ● Grafana Meetup Japan Co-organizer Hobby ● DJ, VJ etc... 最近のできごと ● 今年も健康診断は「D」でした... (5年連続)

Slide 3

Slide 3 text

1. BBとRancherの出会い 2. BB流 Rancherのここが良いぞ 3. ここが惜しいぞRancher 4. Rancherを使いこなす上で大切なこと AGENDA 3

Slide 4

Slide 4 text

話すこと ● 弊社でのRancherの導入背景 ● Rancherの基本的な使い方 ● 周辺ツールの概要、基本的な使い方 ● Rancherを運用する上で考慮するべき事項 ● etc... 話さないこと ● コンテナ、Kubernetesの基礎知識 ● Rancherそのものに関する詳細な仕組みなど ● 類似ツールとの機能比較 ● エンタープライズ向けの特殊な設定など ● etc... 話すこと / 話さないこと 4

Slide 5

Slide 5 text

5 BBとRancherの出会い

Slide 6

Slide 6 text

遡ること2021年、私とRancherは出会いました 6 弊社ではRancherを基盤に、顧客にKubernetes環境を提供しています。 顧客に合わせ、さまざまな環境下で利用することができます。 https://www.idcf.jp/container

Slide 7

Slide 7 text

「サービスやるなら、こういうの必要だよねー」 ● マルチクラウド対応 ● ユーザ管理 ● カタログ(Helm Chart)の配布 ● クラスターロギング、監視 ● etc... 「全部開発するのは流石になぁ。。。。。」 「求めるもの全部入っているプラットフォームはないのか?」 「先輩、Rancherというものがありますよ!!」 なぜ、Rancherを採用したのか? 7

Slide 8

Slide 8 text

クラスター管理プラットフォームは Rancherだけではありません。 2024年現在、代表的なものだと以下のようなものが挙げられます。 ● portainer ● Qovery ● Platform9 ● Rafay ● etc… ちなみに... 8

Slide 9

Slide 9 text

9 BB流 Rancherのここが良いぞ

Slide 10

Slide 10 text

「Rancherと言えば!」の機能ですが、1つに集約できることはやはり便利です。 マルチクラウドのクラスター管理 10

Slide 11

Slide 11 text

Kubernetesの知識がない開発者でも簡単にコンテナをデプロイ可能できます。 アプリケーション開発者が感じている、 Kubernetesに対する心理的ハードルはかなり低 くなっていると思います。 GUI上でのKubernetesオブジェクトの作成 11

Slide 12

Slide 12 text

Longhorn、NeuVectorと言った自社製品との親和性の高さも魅力的です。 ほとんどのツールはRancherのカタログから簡単に導入できます。 エコシステムとの親和性の高さ 12 https://www.suse.com/c/ja/simplify-generative-ai-deployments-with-suse-ecm-stack-and-nvidia-nim/

Slide 13

Slide 13 text

Cluster Toolsを使用することでクラスター管理を手軽に拡張できます。 とくに赤枠のツールは必須で入れておくと良いでしょう。 Cluster Toolsを用いたダッシュボードの強化 13 資料作成の時点で、 OPA Gatekeeperは非推奨 Kubewardenへの移行を推奨

Slide 14

Slide 14 text

標準で搭載している機能であり、即時に GitOpsを導入できます。 また、Fleetを単独で利用することも可能です。 Fleetを用いたGitOps 14 https://fleet.rancher.io/ cat > example.yaml << "EOF" apiVersion: fleet.cattle.io/v1alpha1 kind: GitRepo metadata: name: sample-app namespace: fleet-local spec: repo: "任意のリポジトリを設定 " paths: - /sample-app/manifests targets: - clusterGroup: 任意のクラスターを指定 EOF $ kubectl apply -f example.yaml

Slide 15

Slide 15 text

個人的には、CNIを自由に選べるのは簡単に検証できるのでありがたいです。 ● Canal (ざっくり言うと、FlannelとCalicoのハイブリッド版) ● Flannel ● Calico ● Cilium また、CNIプラグインとしてMultusやSR-IOVもサポートしています。 ※ 詳細については今回は省略します 任意にCNIプロバイダーを選べる 15

Slide 16

Slide 16 text

【アプリケーション開発者】 ● Kubernetesを(いい意味で)意識しなくて良い ○ GUIベースで直感的な操作で開発できる ■ 極論、YAMLやkubectlを十分に理解していなくても良い ● CI/CDパイプラインを手軽に統合可能 それぞれの目線で Rancherの良さを考えてみると 16

Slide 17

Slide 17 text

【Rancher運用者】 ● GUIから簡素的なトラブルシューティングが可能 ● クラスター管理の一元化できる ● 中央集権的なユーザー管理と権限の付与ができる ● Cluster Toolsによって、モニタリングなどを簡単に行える それぞれの目線で Rancherの良さを考えてみると 17

Slide 18

Slide 18 text

18 ここが惜しいぞRancher

Slide 19

Slide 19 text

Rancherでは通常のHelm Chartにいくつかファイルを追加することで、 GUIでHelm Chartの詳細な情報を表示することができます。 questions.yamlではUIでのフォームの質問文を表示(左図)してくれるのですが、ここで 配列の表現ができません。 Helm Chartの配列はUIでは表現できない 19 / │ ├── charts/ │ ├── / │ │ ├── / │ │ │ ├── Chart.yaml │ │ │ ├── questions.yaml │ │ │ ├── README.md │ │ │ ├── requirements.yml │ │ │ ├── values.yml │ │ │ ├── templates/ https://ranchermanager.docs.rancher.com/how-to-guides/new-user-guides/helm-charts-in-rancher/create-apps

Slide 20

Slide 20 text

現在、FleetはGitリポジトリかBundleからのデプロイのみ対応しています。 しかし、双方で歯がゆい部分があります。 ● Gitデプロイ ○ RancherとGit両方で設定が必要で手間がかかる ● Bundleデプロイ ○ Fleet CLIでの変換が必要であり、一般ユーザーには普及していない 「ここらへん、なんとかならないかなぁー」と思っていたら ... Issue立ちました Fleetでのデプロイ方法について 20 https://github.com/rancher/fleet/issues/2962 v2.11.0でリリース予定 (まだ先になりそう .....)

Slide 21

Slide 21 text

21 Rancherを使いこなす上で 大切なこと

Slide 22

Slide 22 text

Rancherの本分は「マルチクラスターを管理するプラットフォーム 」です。 確かに多くの機能を有していますが、闇雲に使うのもよくありません。 また、何もかもをGUIでできるわけでもありません。 その点を理解しつつ、Ranhcerの良さを最大限活用していく必要があります。 アーキテクチャを正しく理解する 22

Slide 23

Slide 23 text

意識しなくてもいいとは言いましたが、最低限は理解しておくべきです。 理解しておくことで、よりRancherを扱いやすくなるでしょう。 ● Kubernetesの基本概念(Pod、Service、Ingress等) ● ネットワークの基礎(DNS、ロードバランサー、証明書) ● CLI(kubectl、helm、docker) 最低限の知識は持ちましょう 23

Slide 24

Slide 24 text

Rancherのバックアップ機能は、あくまで「 Rancherのため」のものです。 GUIで全て完結させてしまうと、再現性は保証できません。 そのため、自分たちのクラスターの環境はマニフェストで管理しましょう。 (CI/CDなどを設定する時も結局、必要にはなるので ....) IaCでの管理も大事 24

Slide 25

Slide 25 text

Rancherは多くのクラスターを一元管理できます。 そのため、適切な設定を行わなければ、多くのクラスターに影響が発生します。 特にユーザの権限設定は注意をはらいましょう。 また、イメージの脆弱性など定期的なアップデートも重要です。 セキュリティと監視を確実に 25

Slide 26

Slide 26 text

Rancherには標準で多くのツールが用意されています。 先ほど説明したFleet以外にも、多くのエコシステムを手軽に導入できます。 自分たちの構成を理解しつつ必要なものはどんどん活用しましょう。 自動化やカタログの使用で運用を効率化 26

Slide 27

Slide 27 text

27 さいごに

Slide 28

Slide 28 text

Rancherをインストールしても管理するものがなければ勉強になりません。 そんな時に、おすすめは「Rancher Desktop」です。 手軽にRancherに触れたい人へ 28 https://rancherdesktop.io/

Slide 29

Slide 29 text

Rancher Desktopは裏ではk3sクラスターが動作しています。 Rancherにふれるきっかけとして、このクラスターを管理してみましょう。 公式ドキュメントに手順がありますがワンラインコマンドで構築できます。 Rancher DesktopにRancherを構築する 29 https://docs.rancherdesktop.io/how-to-guides/rancher-on-rancher-desktop/

Slide 30

Slide 30 text

30 素敵なRancherライフを