Traffine I/O

日本語

2022-06-02

Kubectl

Kubectlとは

KubectlはKubernetesクラスターと対話するためのコマンドラインツールです。Kubernetesクラスターとリソースの管理、検査、操作を行うことができます。

Kubectlのインストール

Kubectlを使用する前に、インストールする必要があります。以下に、異なるオペレーティングシステムへのKubectlのインストール手順を示します。

Windows

  1. Kubernetesのリリースページから最新のKubectl実行ファイルをダウンロードします。

https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/

  1. Kubectl実行ファイルをシステムのPATHに追加します。

MacOS

Homebrewを使用して以下のコマンドを実行します。

bash
$ brew install kubectl

Linux

Ubuntu/Debianではapt、CentOS/Red Hatではyumなどのパッケージマネージャーを使用します。Ubuntuの場合の例は次のとおりです。

bash
$ sudo apt-get install -y kubectl

基本的なKubectlコマンド

いくつかの基本的なKubectlコマンドについて説明します。

リソースの一覧表示 (kubectl get)

kubectl getコマンドは、クラスター内のさまざまなリソース(ノード、ポッド、サービスなど)を一覧表示するために使用されます。

bash
$ kubectl get pods

出力形式を変更するためにフラグを使用することもできます。例えば、リソースをYAML形式で表示するには以下のコマンドを実行します。

bash
$ kubectl get pod my-pod -o yaml

リソースの詳細表示 (kubectl describe)

kubectl describeコマンドは、特定のリソースに関する詳細な情報を表示します。特にトラブルシューティングに役立ち、指定したリソースの概要と詳細データを表示します。

bash
$ kubectl describe pod my-pod

クラスター構成の表示 (kubectl config view)

kubectl config viewコマンドを使用して、kubeconfigの設定(クラスター構成、ユーザー、コンテキストなど)を表示することができます。

bash
$ kubectl config view

このコマンドは、Kubectlが異なるクラスターとの対話方法が設定されているかを確認するのに特に役立ちます。

クラスター情報の表示 (kubectl cluster-info)

kubectl cluster-infoコマンドを使用して、Kubernetesクラスターに関する基本情報を表示します。これには、マスターや関連するURLを持つサービスなどが含まれます。

bash
$ kubectl cluster-info

このコマンドにより、Kubernetesクラスターのハイレベルな構造を把握することができます。

リソースの作成 (kubectl create)

YAMLまたはJSONの構成ファイルからリソースを作成するためにkubectl createコマンドを使用できます。

bash
$ kubectl create -f my-pod.yaml

リソースへの構成の適用 (kubectl apply)

kubectl applyコマンドは、リソースに対する構成変更を適用するために使用されます。特に構成ファイルでリソースを更新する際に便利です。

bash
$ kubectl apply -f my-pod.yaml

リソースの削除 (kubectl delete)

kubectl deleteコマンドを使用すると、Kubernetesクラスター内のリソースを削除することができます。

bash
$ kubectl delete pod my-pod

ログの表示 (kubectl logs)

実行中のコンテナのログを表示するためにkubectl logsコマンドを使用できます。これはデバッグのために役立ちます。

bash
$ kubectl logs my-pod

コンテナ内でコマンドを実行 (kubectl exec)

kubectl execコマンドを使用すると、ポッドに属するコンテナ内でコマンドを実行できます。

ルートディレクトリのファイルをリストするには以下のコマンドを実行します。

bash
$ kubectl exec my-pod -- ls /

コンテナ内でシェルにアクセス (kubectl exec -it)

次のコマンドを使用して、コンテナ内のシェルにアクセスできます。

bash
$ kubectl exec -it my-pod -- /bin/bash

サービスの公開 (kubectl expose)

kubectl exposeコマンドは、ポッドを公開するために使用されます。

bash
$ kubectl expose deployment my-deployment --type=LoadBalancer --port=8080

リソースのスケーリング (kubectl scale)

kubectl scaleコマンドを使用して、リソースのレプリカの数を拡張または縮小することができます。

bash
$ kubectl scale deployment my-deployment --replicas=3

参考

https://kubernetes.io/docs/reference/kubectl/

Ryusei Kakujo

researchgatelinkedingithub

Focusing on data science for mobility

Bench Press 100kg!