このドキュメントは The Kubectl Book の翻訳です。翻訳の GitHub リポジトリはこちら。
- リソースを get / describe するためのクエリ
get / describe でのオブジェクトのマッチング
動機
get / describe でクエリに一致するリソースを検索します。
kustomization.yaml
によるリソース構成
project/ 内の kustomization.yaml
で提供されているすべてのリソースを取得します。
kubectl get -k project/
ディレクトリによるリソース構成
ディレクトリのリソース構成内にあるすべてのリソースを取得します。
kubectl get -f configs/
リソースタイプ
名前空間内にある与えられたタイプのすべてのリソースを取得します。
リソースのグループとバージョンは apiserver のディスカバリーサービスによって決定されます。
単数形、複数形、省略形の名前も、名前付きリソースタイプとセレクタ付きリソースタイプに適用されます。
# Plural
kubectl get deployments
# Singular
kubectl get deployment
# Short name
kubectl get deploy
グループ / バージョン付きのリソースタイプ
名前空間内にある与えられたタイプのすべてのリソースを取得します。
リソースのグループとバージョンを明示します。
kubectl get deployments.apps
kubectl get deployments.v1.apps
名前付きのリソースタイプ
名前空間内で与えられたタイプの名前付きリソースを取得します。
kubectl get deployment nginx
ラベルセレクタ
名前空間内で与えられたタイプのラベルセレクタにマッチするリソースをすべて取得します。
kubectl get deployments -l app=nginx
名前空間
デフォルトでは get / describe はデフォルトの名前空間からリソースを取得しますが、--namespace
で名前空間を指定できます。
---all-namespaces
フラグはすべての名前空間からリソースを取得します。
kubectl get deployments --all-namespaces
複数のリソースタイプを並べる
get / describe は複数のリソースタイプを受け付けます。セクションを分割して各々のリソースを表示します。
kubectl get deployments,services
複数のリソースタイプを名前で並べる
get / describe は複数のリソースタイプと名前を受け付けます。
kubectl get kubectl get rc/web service/frontend pods/web-pod-13je7
初期化されていないリソース
Kubernetes のリソースは初期化プロセスが完了するまで表示されません。初期化が未完了のリソースは --include-uninitialized
フラグで表示できます。
kubectl get deployments --include-uninitialized
リソースが見つからない場合
デフォルトでは、get / describe はリクエストされたオブジェクトが存在しなければエラーを返します。--ignore-not-found
フラグを付けると、リソースが見つからなくても kubectrl が終了コード 0 で終了します。
kubectl get deployment nginx --ignore-not-found