2025年kuberas英文怎么读(kubernetes怎么读)

kuberas英文怎么读(kubernetes怎么读)Kubernetes 提供 kubernetes API 使用 Kubernetes 通信 名前 使 Kubernetes 制御 環境設定 名前 探 他 kubeconfig 環境変数 設定

大家好,我是讯享网,很高兴认识大家。



Kubernetesが提供する、 kubernetes APIを使用してKubernetesクラスターのと通信するためのコマンドラインツールです。

このツールの名前は、 です。

コマンドラインツールを使うと、Kubernetesクラスターを制御できます。環境設定のために、は、ディレクトリにあるという名前のファイルを探します。他のkubeconfigファイルは、環境変数を設定するか、フラグを設定することで指定できます。

この概要では、の構文を扱い、コマンド操作を説明し、一般的な例を示します。サポートされているすべてのフラグやサブコマンドを含め、各コマンドの詳細については、kubectlリファレンスドキュメントを参照してください。

インストール方法については、kubectlのインストールおよびセットアップをご覧ください。クイックガイドは、チートシートをご覧ください。コマンドラインツールに慣れている方は、 for Docker UsersでKubernetesの同等のコマンドを説明しています。

ターミナルウィンドウからコマンドを実行するには、以下の構文を使用します。

ここで、、、、は、以下を表します。

  • : 1つ以上のリソースに対して実行したい操作を指定します。例えば、、、、です。
  • : リソースタイプを指定します。リソースタイプは大文字と小文字を区別せず、単数形や複数形、省略形を指定できます。例えば、以下のコマンドは同じ出力を生成します。
  • : リソースの名前を指定します。名前は大文字と小文字を区別します。のように名前が省略された場合は、すべてのリソースの詳細が表示されます。

    複数のリソースに対して操作を行う場合は、各リソースをタイプと名前で指定するか、1つまたは複数のファイルを指定することができます。

    • リソースをタイプと名前で指定する場合
      • タイプがすべて同じとき、リソースをグループ化するにはとします。
        例:
      • 複数のリソースタイプを個別に指定するには、とします。
        例:
    • リソースを1つ以上のファイルで指定する場合は、とします。
      • 特に設定ファイルについては、YAMLの方がより使いやすいため、JSONではなくYAMLを使用してください。
        例:
  • : オプションのフラグを指定します。例えば、またはフラグを使って、Kubernetes APIサーバーのアドレスやポートを指定できます。

ヘルプが必要な場合は、ターミナルウィンドウからを実行してください。

デフォルトでは、は最初にPod内で動作しているか、つまりクラスター内で動作しているかどうかを判断します。まず、との環境変数を確認し、サービスアカウントのトークンファイルがに存在するかどうかを確認します。3つともクラスター内で見つかった場合、クラスター内認証とみなされます。

後方互換性を保つため、クラスター内認証時に環境変数が設定されている場合には、サービスアカウントトークンのデフォルトの名前空間が上書きされます。名前空間のデフォルトに依存しているすべてのマニフェストやツールは、この影響を受けます。

環境変数

環境変数が設定されている場合、名前空間に属するリソースのCLI操作は、デフォルトで環境変数の値になります。例えば、変数にが設定されている場合、は、名前空間のPodを返します。これは、Podが名前空間に属するリソースであり、コマンドで名前空間が指定されていないためです。の出力を見て、リソースが名前空間に属するかどうかを判断してください。

明示的にを使用すると、この動作は上書きされます。

kubectlによるServiceAccountトークンの処理方法

以下の条件がすべて成立した場合、

  • にマウントされたKubernetesサービスアカウントのトークンファイルがある
  • 環境変数が設定されている
  • 環境変数が設定されている
  • kubectlコマンドラインで名前空間を明示的に指定しない

kubectlはクラスター内で実行されているとみなして、そのServiceAccountの名前空間(これはPodの名前空間と同じです)を検索し、その名前空間に対して機能します。これは、クラスターの外の動作とは異なります。kubectlがクラスターの外で実行され、名前空間を指定しない場合、kubectlコマンドは、クライアント構成の現在のコンテキストに設定されている名前空間に対して動作します。kubectlのデフォルトの名前空間を変更するには、次のコマンドを使用できます。

以下の表に、のすべての操作の簡単な説明と一般的な構文を示します。

操作                構文説明アルファ機能に該当する利用可能なコマンドを一覧表示します。これらの機能は、デフォルトではKubernetesクラスターで有効になっていません。1つ以上のリソースのアノテーションを、追加または更新します。利用可能なAPIリソースを一覧表示します。利用可能なAPIバージョンを一覧表示します。ファイルまたは標準出力から、リソースの設定変更を適用します。実行中のコンテナにアタッチして、出力ストリームを表示するか、コンテナ(標準入力)と対話します。認可を検査します。ReplicationControllerで管理されているPodのセットを、自動的にスケールします。証明書のリソースを変更します。クラスター内のマスターとサービスに関するエンドポイント情報を表示します。指定されたシェル(bashまたはzsh)のシェル補完コードを出力します。kubeconfigファイルを変更します。詳細は、個々のサブコマンドを参照してください。異なるAPIバージョン間で設定ファイルを変換します。YAMLとJSONに対応しています。Nodeをスケジュール不可に設定します。コンテナとの間でファイルやディレクトリをコピーします。ファイルまたは標準出力から、1つ以上のリソースを作成します。ファイル、標準出力、またはラベルセレクター、リソースセレクター、リソースを指定して、リソースを削除します。1つ以上のリソースの詳細な状態を表示します。ファイルまたは標準出力と、現在の設定との差分を表示します。メンテナンスの準備のためにNodeをdrainします。デファルトのエディタを使い、サーバー上の1つ以上のリソースリソースの定義を編集し、更新します。イベントを一覧表示します。Pod内のコンテナに対して、コマンドを実行します。様々なリソースのドキュメントを取得します。例えば、Pod、Node、Serviceなどです。ReplicationController、Service、Podを、新しいKubernetesサービスとして公開します。1つ以上のリソースを表示します。kustomization.yamlファイル内の指示から生成されたAPIリソースのセットを一覧表示します。引数はファイルを含むディレクトリのPath,またはリポジトリルートに対して同じ場所を示すパスサフィックス付きのgitリポジトリのURLを指定しなければなりません。1つ以上のリソースのラベルを、追加または更新します。Pod内のコンテナのログを表示します。すべてのコマンドに適用されるグローバルコマンドラインオプションを一覧表示します。Strategic Merge Patchの処理を使用して、リソースの1つ以上のフィールドを更新します。プラグインと対話するためのユーティリティを提供します。1つ以上のローカルポートを、Podに転送します。Kubernetes APIサーバーへのプロキシを実行します。ファイルや標準出力から、リソースを置き換えます。リソースのロールアウトを管理します。有効なリソースには、Deployment、DaemonSetとStatefulSetが含まれます。指定したイメージを、クラスター上で実行します。指定したReplicationControllerのサイズを更新します。アプリケーションリソースを設定します。1つ以上のNodeのtaintを更新します。リソース(CPU/メモリー/ストレージ)の使用量を表示します。Nodeをスケジュール可に設定します。クライアントとサーバーで実行中のKubernetesのバージョンを表示します。実験中の機能: 1つ以上のリソースが特定の状態になるまで待ちます。

コマンド操作について詳しく知りたい場合は、kubectlリファレンスドキュメントを参照してください。

以下の表に、サポートされているすべてのリソースと、省略されたエイリアスの一覧を示します。

(この出力はから取得でき、Kubernetes 1.25.0時点で正確でした。)

リソース名短縮名APIバージョン名前空間に属するかリソースの種類v1trueBindingv1falseComponentStatusv1trueConfigMapv1trueEndpointsv1trueEventv1trueLimitRangev1falseNamespacev1falseNodev1truePersistentVolumeClaimv1falsePersistentVolumev1truePodv1truePodTemplatev1trueReplicationControllerv1trueResourceQuotav1trueSecretv1trueServiceAccountv1trueServiceadmissionregistration.k8s.io/v1falseMutatingWebhookConfigurationadmissionregistration.k8s.io/v1falseValidatingWebhookConfigurationapiextensions.k8s.io/v1falseCustomResourceDefinitionapiregistration.k8s.io/v1falseAPIServiceapps/v1trueControllerRevisionapps/v1trueDaemonSetapps/v1trueDeploymentapps/v1trueReplicaSetapps/v1trueStatefulSetauthentication.k8s.io/v1falseTokenReviewauthorization.k8s.io/v1trueLocalSubjectAccessReviewauthorization.k8s.io/v1falseSelfSubjectAccessReviewauthorization.k8s.io/v1falseSelfSubjectRulesReviewauthorization.k8s.io/v1falseSubjectAccessReviewautoscaling/v2trueHorizontalPodAutoscalerbatch/v1trueCronJobbatch/v1trueJobcertificates.k8s.io/v1falseCertificateSigningRequestcoordination.k8s.io/v1trueLeasediscovery.k8s.io/v1trueEndpointSliceevents.k8s.io/v1trueEventflowcontrol.apiserver.k8s.io/v1beta2falseFlowSchemaflowcontrol.apiserver.k8s.io/v1beta2falsePriorityLevelConfigurationnetworking.k8s.io/v1falseIngressClassnetworking.k8s.io/v1trueIngressnetworking.k8s.io/v1trueNetworkPolicynode.k8s.io/v1falseRuntimeClasspolicy/v1truePodDisruptionBudgetpolicy/v1beta1falsePodSecurityPolicyrbac.authorization.k8s.io/v1falseClusterRoleBindingrbac.authorization.k8s.io/v1falseClusterRolerbac.authorization.k8s.io/v1trueRoleBindingrbac.authorization.k8s.io/v1trueRolescheduling.k8s.io/v1falsePriorityClassstorage.k8s.io/v1falseCSIDriverstorage.k8s.io/v1falseCSINodestorage.k8s.io/v1trueCSIStorageCapacitystorage.k8s.io/v1falseStorageClassstorage.k8s.io/v1falseVolumeAttachment

ある特定のコマンドの出力に対してフォーマットやソートを行う方法については、以下の節を参照してください。どのコマンドが様々な出力オプションをサポートしているかについては、kubectlリファレンスドキュメントをご覧ください。

すべてのコマンドのデフォルトの出力フォーマットは、人間が読みやすいプレーンテキスト形式です。特定のフォーマットで、詳細をターミナルウィンドウに出力するには、サポートされているコマンドにまたはフラグのいずれかを追加します。


讯享网

構文

の操作に応じて、以下の出力フォーマットがサポートされています。

出力フォーマット説明カスタムカラムのコンマ区切りのリストを使用して、テーブルを表示します。ファイル内のカスタムカラムのテンプレートを使用して、テーブルを表示します。JSON形式のAPIオブジェクトを出力します。jsonpath式で定義されたフィールドを表示します。ファイル内のjsonpath式で定義されたフィールドを表示します。リソース名のみを表示します。追加情報を含めて、プレーンテキスト形式で出力します。Podの場合は、Node名が含まれます。YAML形式のAPIオブジェクトを出力します。

この例において、以下のコマンドは1つのPodの詳細を、YAML形式のオブジェクトとして出力します。

各コマンドでサポートされている出力フォーマットの詳細については、kubectlリファレンスドキュメントを参照してください。

カスタムカラム

カスタムカラムを定義して、必要な詳細のみをテーブルに出力するには、オプションを使います。カスタムカラムをインラインで定義するか、またはのようにテンプレートファイルを使用するかを選択できます。

インラインで定義する例は、以下の通りです。

テンプレートファイルを使用して定義する例は、以下の通りです。

ここで、には以下の内容が含まれます。

 

讯享网

どちらのコマンドを実行した場合でも、以下の結果を得ます。

讯享网

サーバーサイドカラム

は、サーバーからオブジェクトに関する特定のカラム情報を受け取ることをサポートしています。 つまり、与えられた任意のリソースについて、サーバーはそのリソースに関連する列や行を返し、クライアントが表示できるようにします。 これにより、サーバーが表示の詳細をカプセル化することで、同一クラスターに対して使用されているクライアント間で、一貫した人間が読みやすい出力が可能です。

この機能は、デフォルトで有効になっています。無効にするには、コマンドにフラグを追加します。

Podの状態に関する情報を表示するには、以下のようなコマンドを使用します。

以下のように出力されます。

 

ターミナルウィンドウで、オブジェクトをソートされたリストに出力するには、サポートされているコマンドにフラグを追加します。フラグで任意の数値フィールドや文字列フィールドを指定することで、オブジェクトをソートします。フィールドの指定には、jsonpath式を使用します。

構文

名前でソートしたPodのリストを表示するには、以下のように実行します。

よく使われるの操作に慣れるために、以下の例を使用してください。

- ファイルや標準出力から、リソースの適用や更新を行います。

- 1つ以上のリソースの一覧を表示します。

- 1つ以上のリソースの詳細な状態を、デフォルトでは初期化されないものも含めて表示します。

- ファイル、標準出力、または指定したラベルセレクター、名前、リソースセレクター、リソースを指定して、リソースを削除します。

- Pod内のコンテナに対してコマンドを実行します。

- Pod内のコンテナのログを表示します。

- 提案されたクラスターに対する更新の差分を表示します。

プラグインの書き方や使い方に慣れるために、以下の例を使用してください。

プラグインを書いたら、実行可能にします。

讯享网

で利用可能なプラグインをすべて表示するには、サブコマンドを使用してください。

出力は以下のようになります。

 

コマンドは、実行不可能なプラグインや、他のプラグインの影に隠れてしまっているプラグインなどについて、警告することもできます。例えば、以下のようになります。

讯享网

プラグインは、既存のコマンドの上に、より複雑な機能を構築するための手段であると考えることができます。

次の例では、下記の内容を含んだが既に作成済であることを前提としています。

上記のコマンドを実行すると、KUBECONFIGファイル内のカレントコンテキストのユーザーを含んだ出力を得られます。

  • リファレンスドキュメントをお読みください。
    • kubectlコマンドリファレンス
    • コマンドライン引数リファレンス
  • の使用規則について学習してください。
  • kubectlのJSONPathのサポートについてお読みください。
  • プラグインを使用して kubectl を拡張する方法についてお読みください。
    • プラグインについてより詳しく知りたい場合は、example CLI pluginをご覧ください。

小讯
上一篇 2025-04-24 18:01
下一篇 2025-06-01 18:00

相关推荐

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/195266.html