Kubernetesは、コンテナ化されたワークロードとサービスを管理するための最も移植性の高いオープンソースプラットフォームです。広く利用可能なサービス、サポート、ツールを提供することにより、自動化ツールとして機能します。
一方、Kubectlは、クラスター内のノードを管理する機能を備えたKubernetesの主要コンポーネントの1つであるため、Kubernetesクラスターを制御します。 Kubectl getコマンドは、Kubernetesリソースに関するクラスター上の関連データをフェッチできます。
この記事では、「Kubectlget」コマンドの使用法についていくつかの例を挙げて説明します。
Kubectlgetコマンド
Kubernetesリソースに関するクラスター上のデータをフェッチするための重要なkubectlgetコマンドの一部を以下に示します。
Kubectl get pod
関連するkubernetesクラスタのコンテナのポッドに関する詳細を取得するには、次のようなコマンドがあります。
デフォルトの名前空間で使用可能なすべてのポッドのリストを取得するには、次のようにコマンドを実行します。
$ kubectl get pod
ただし、特定のポッドの詳細を取得するには、ポッド名を次のように入力します。
$ kubectl get pod <pod name>
例 :
$ kubectl get pod nginx-http-6cf5c9bf86-p5q2x
ここで、ポッド名は「nginx-http-6cf5c9bf86-p5q2x」です。特定のポッドに関するすべての詳細が表示されます。
Kubectlがデプロイを取得
関連するkubernetesクラスタのコンテナのデプロイに関する詳細を取得するには、次のようなコマンドがあります。
デフォルトの名前空間で使用可能なすべてのデプロイメントのリストを取得するには、以下に示すようにコマンドを実行します。
$ kubectl get deployment
ただし、特定のデプロイメントの詳細を取得するには、デプロイメント名を次のように入力できます。
$ kubectl get deployment <deployment name>
例 :
$ kubectl get deployment nginx-http
ここで、デプロイメント名は「nginx-http」です。特定の展開に関するすべての詳細が表示されます。
Kubectlがサービスを受ける
関連するkubernetesクラスタのコンテナのサービスに関する詳細を取得するには、次のようなコマンドがあります。
デフォルトの名前空間で使用可能なすべてのサービスのリストを取得するには、次のようにコマンドを実行します。
$ kubectl get service
ただし、特定のサービスの詳細を取得するには、サービス名を次のように入力します。
$ kubectl get service <service name>
例 :
$ kubectl get service nginx-http-svc
ここでのサービス名は「nginx-http-svc」です。特定のサービスに関するすべての詳細が表示されます。
Kubectlが入力を取得
関連するkubernetesクラスタのコンテナの入力に関する詳細を取得するには、次のようなコマンドがあります。
デフォルトの名前空間で使用可能なすべての入力のリストを取得するには、以下に示すようにコマンドを実行します。
$ kubectl get ingress
ただし、特定の入力の詳細を取得するには、入力の名前を次のように入力します。
$ kubectl get ingress <ingress name>
例 :
$ kubectl get ingress ingress-nginx
ここで、入力名は「ingress-nginx」です。特定の入力に関するすべての詳細が表示されます。
Kubectl get configmap
関連するkubernetesクラスタのコンテナの設定マップの詳細を取得するには、次のようなコマンドがあります。
デフォルトの名前空間で使用可能なすべての構成マップのリストを取得するには、以下に示すようにコマンドを実行します。
$ kubectl get configmap
ただし、特定の構成マップの詳細を取得するには、構成名を次のように入力します。
$ kubectl get configmap <configmap name>
例 :
$ kubectl get configmap nginx-http-cm
ここで、configmapの名前は「nginx-http-cm」です。特定の構成マップに関するすべての詳細が表示されます。
Kubectlは秘密を取得します
関連するkubernetesクラスタのコンテナのシークレットに関する詳細を取得するには、次のようなコマンドがあります。
デフォルトの名前空間で使用可能なすべてのシークレットのリストを取得するには、次のようにコマンドを実行します。
$ kubectl get secrets
ただし、特定のシークレットの詳細を取得するには、シークレット名を次のように入力します。
$ kubectl get secrets <secrets name>
例 :
$ kubectl get secrets default-token-xct8s
ここでの秘密の名前は「default-token-xct8s」です。特定の秘密に関するすべての詳細が表示されます。
Kubectl get namespace
関連するkubernetesクラスタのコンテナの名前空間に関する詳細を取得するには、次のようなコマンドがあります。
$ kubectl get namespace <namespace name>
例 :
$ kubectl get namespace
ここでは、デフォルトの名前空間を使用しています。コマンドを「kubectlgetnamespace」として実行することにより、使用可能なすべての名前空間を一覧表示します。
結論
この記事では、ポッド、デプロイ、サービスなどのさまざまなオプションで「kubectl getコマンド」を使用する方法を学習しました。これにより、Kubernetesリソースに関するクラスター上の関連データがフェッチされます。