0Pricing
DevOps Bootcamp · レッスン

kubectlコマンドの基礎

Kubernetesクラスターを操作し、リソースを管理するための基本的な`kubectl`コマンドを習得します。

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

Kubernetes CLI を使ってみる

kubectl Commands Essentialsへようこそ!このレッスンでは、Kubernetes クラスターと通信するコマンドラインツール、kubectlの使い方を学びます。

kubectlは、アプリケーションの管理、クラスターリソースの確認、ターミナルからの問題のデバッグを行うためのリモコンのようなものだと考えてください。

kubectlコマンドの基礎 — イラスト1

kubectl の接続方法

kubectlが何かを実行するには、通信先の Kubernetes クラスターを知る必要があります。これはkubeconfig ファイル(通常は~/.kube/config)で管理されます。

  • クラスターの IP や認証情報など、接続に必要な情報が含まれています。
  • kubectlは、このファイルのデフォルトコンテキストを自動的に使用します。
  • コンテキストを切り替えて、複数のクラスターを管理できます。

クラスターリソースの取得

kubectl getコマンドは基本となるコマンドです。Pod、ノード、Deployment、Service など、クラスター内のさまざまなリソースを一覧表示できます。

現在実行中または設定済みの内容を確認するための窓口となるコマンドです。

kubectl get pods
kubectl get nodes
kubectl get services

リソースの詳細情報

getが概要を表示するのに対し、kubectl describeは特定のリソースに関する詳細な情報を豊富に表示します。イベント、状態、設定などが含まれるため、デバッグに役立ちます。

kubectl describe pod my-app-pod-xyz
kubectl describe node my-node-name

設定ファイルの適用

Kubernetes リソースは YAML ファイルを使って定義します。kubectl apply -fコマンドを使うと、これらのファイルに基づいてリソースを作成または更新できます。この操作は冪等性があるため、複数回安全に実行できます。

次は、単純な Pod 定義です。

apiVersion: v1
kind: Pod
metadata:
  name: my-first-pod
spec:
  containers:
  - name: web
    image: nginx:latest
    ports:
    - containerPort: 80

Apply によるリソースの作成

前のシーンで定義した Pod を作成するには、それを.yamlファイル(例:pod.yaml)として保存し、kubectl applyを使います。

このコマンドにより、YAML に記述された状態とクラスターの実際の状態が一致するように Kubernetes に指示します。

kubectl apply -f pod.yaml

# After applying, verify:
kubectl get pod my-first-pod

コンテナログの表示

トラブルシューティングでは、コンテナログの確認が最初の手順になることがよくあります。kubectl logsコマンドを使うと、Pod 内の特定のコンテナからログを取得できます。

-fを使うと、tail -fと同じようにログをリアルタイムで追跡できます。

kubectl logs my-first-pod
kubectl logs -f my-first-pod

Pod 内でのコマンド実行

実行中のコンテナ内でデバッグ用のコマンドを実行する必要がありますか?kubectl execを使えば実行できます。対話型シェルを開くこともできます。

  • -i:対話型モード
  • -t:疑似 TTY
  • --:kubectlのオプションと実行するコマンドを区切る
kubectl exec -it my-first-pod -- bash

# Or run a single command:
kubectl exec my-first-pod -- ls /app

リソースの削除

クラスターからリソースを削除するには、kubectl deleteコマンドを使います。種類と名前を指定して削除することも、作成時に使った YAML ファイルを指定して削除することもできます。

deleteは永続的な操作なので、注意して使用してください!

kubectl delete pod my-first-pod
kubectl delete -f pod.yaml

kubectl コマンドの確認

名前がworker-node-1の特定のノードについて、詳細な情報を取得するには、どのkubectlコマンドを使いますか?

まとめ:kubectl ツールキット

よくできました!基本的なkubectlコマンドを習得しました。

  • get:リソースを一覧表示します。
  • describe:詳細情報を取得します。
  • apply -f:YAML からリソースを作成または更新します。
  • logs:コンテナの出力を表示します。
  • exec:コンテナ内でコマンドを実行します。
  • delete:リソースを削除します。

これらのコマンドは、Kubernetes を操作する際の毎日の相棒です!

よくある質問

「kubectlコマンドの基礎」レッスンは無料ですか?

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

「kubectlコマンドの基礎」で何を学びますか?

Kubernetesクラスターを操作し、リソースを管理するための基本的な`kubectl`コマンドを習得します。 ブラウザで直接実行するハンズオンコードでDevOps Bootcampを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。

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

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

「kubectlコマンドの基礎」レッスンにはどのくらい時間がかかりますか?

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

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

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

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

  1. Kubernetesアーキテクチャ
  2. Pod:最小単位
  3. kubectlコマンドの基礎
  4. 整理のためのNamespaceとLabel
← DevOps Bootcampに戻る