DevOps Bootcamp · レッスン

Helm が kubeconfig でクラスターを見つける仕組み

kubectl と同じ Context を Helm でも再利用します。

レッスン 2/413 ステップ

「Helm が kubeconfig でクラスターを見つける仕組み」はCoddyKit上の無料DevOps Bootcampレッスンです。 これはレッスン2/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはDevOps Bootcamp学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 DevOps Bootcampコースには全4レッスンが含まれています。

Helmはkubectlの設定を使う

Helmは独自のクラスター接続情報を作りません。kubectlがすでに使っているまったく同じ kubeconfig を再利用するため、kubectlが動作すればHelmも動作します。

kubeconfigの場所

デフォルトでは、設定ファイルは ~/.kube/config にあります。そこにはクラスターのエンドポイント、ユーザーの認証情報、それらを組み合わせるコンテキストが含まれています。

cat ~/.kube/config

kubeconfigが保持する3つの情報

kubeconfigでは、clusters(サーバーURL)、ユーザー(認証情報)、そしてクラスター、ユーザー、名前空間を組み合わせるコンテキストを定義します。

現在のコンテキスト

Helmは current-context、つまりファイル内でアクティブとして指定されているコンテキストに対して動作します。コマンドを実行する前に、接続先のクラスターを確認してください。

kubectl config current-context

コンテキストを切り替える

kubectl config use-context でクラスターを切り替えます。Helmもすぐにそれに従うため、開発環境、ステージング環境、本番環境の間で作業を移すときに使います。

kubectl config use-context staging

コマンドごとに上書きする

別のクラスターで1つのコマンドだけ実行したい場合は、--kube-context フラグを使って、アクティブなコンテキストを変更せずに対象を指定できます。

helm list --kube-context staging

KUBECONFIG変数

KUBECONFIG 環境変数を使うと、Helmが別の設定ファイルを参照するようにしたり、コロン区切りのリストで複数のファイルを統合したりできます。

export KUBECONFIG=~/.kube/config:~/.kube/work-config

名前空間が重要

Helmではリリースを namespace 単位で管理します。-nを指定しない場合はコンテキストのデフォルトが使われるため、誤った名前空間で操作しないよう、名前空間を明示してください。

helm list -n my-app

マネージドクラスターの認証情報

クラウドクラスターはkubeconfigを自動的に作成します。aws eks update-kubeconfig のようなコマンドを実行すると、適切な認証情報を持つコンテキストが追加され、Helmが接続できるようになります。

aws eks update-kubeconfig --name my-cluster

すべてのコンテキストを一覧表示する

接続可能なすべてのクラスターを確認するには、kubectl config get-contexts を実行します。アスタリスクが付いた行が、現在Helmの操作対象となるコンテキストです。

kubectl config get-contexts

デプロイ前に確認する

kubectl get nodes を実行すれば、設定を使って稼働中のクラスターに接続できることを簡単に確認できます。kubectlでノードが表示されれば、Helmも同じクラスターに接続できます。

kubectl get nodes

確認

kubectlの実行に成功したので、これからHelmを使おうとしています。

まとめ

Helmはkubectlの kubeconfig を利用します。現在のコンテキストを把握し、use-contextで切り替え、デプロイ前には必ず名前空間を確認してください。✅

無料で開始

AI チューターと学ぶ DevOps Bootcamp — 無料

ブラウザでリアルコードを書いて実行し、24/7 の AI チューターから瞬時にサポートを受け、ウェブまたはアプリで続きから学習できます。

コース
142
レッスン
568

よくある質問

「Helm が kubeconfig でクラスターを見つける仕組み」レッスンは無料ですか?

はい。「Helm が kubeconfig でクラスターを見つける仕組み」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、DevOps Bootcampコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 DevOps Bootcampコースには全4レッスンが含まれています。

「Helm が kubeconfig でクラスターを見つける仕組み」で何を学びますか?

kubectl と同じ Context を Helm でも再利用します。 ブラウザで直接実行するハンズオンコードでDevOps Bootcampを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

DevOps Bootcampを始めるのに経験は必要ですか?

事前経験は必要ありません。CoddyKitのDevOps Bootcampは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン2/4です。

「Helm が kubeconfig でクラスターを見つける仕組み」レッスンにはどのくらい時間がかかりますか?

ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。

このDevOps Bootcampレッスンでコードを書いて実行できますか?

はい。すべてのDevOps Bootcampレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。

このコースのすべてのレッスン

  1. OS に Helm CLI をインストールする
  2. Helm が kubeconfig でクラスターを見つける仕組み
  3. helm version と helm env による基本確認
  4. Shell 補完とヘルプを有効にする
← DevOps Bootcampに戻る