3.4. 読み込みおよびマージのルール
CLI 操作を実行する際、CLI 設定の読み込みおよびマージの順序は、以下のルールに従います。
CLI 設定ファイルは、以下の階層およびマージルールを使用してワークステーションから取得されます。
-
--config
オプションが設定されている場合、そのファイルのみが読み込まれます。フラグが一度だけ設定される可能性があり、マージは実行されません。 -
$KUBECONFIG
環境変数が設定されている場合は、これを使用します。変数はパスの一覧である可能性があり、その場合、パスは 1 つにマージされます。値が変更される場合は、スタンザを定義するファイルで変更されます。値が作成される場合は、存在する最初のファイルで作成されます。ファイルがチェーン内に存在しない場合は、一覧の最後のファイルが作成されます。 -
または、~/.kube/config ファイルが使用され、マージは実行されません。
-
使用するコンテキストは、以下のチェーンの最初のヒットに基づいて決定されます。
-
--context
オプションの値。 -
CLI 設定ファイルの
current-context
値。 -
この段階では空の値が許可されます。
-
使用するユーザーおよびクラスターが決定されます。この時点では、コンテキストがある場合とない場合があります。 コンテキストは、以下のチェーンの最初のヒットに基づいて作成されます。 これは、ユーザー用に 1 回、クラスター用に 1 回実行されます。
-
ユーザー名の
--user
オプションおよびクラスター名の--cluster
オプションの値。 -
--context
オプションがある場合は、コンテキストの値を使用します。 -
この段階では空の値が許可されます。
-
ユーザー名の
使用する実際のクラスター情報が決定されます。この時点では、クラスター情報がある場合とない場合があります。それぞれのクラスター情報は、以下のチェーンの最初のヒットに基づいて作成されます。
以下のコマンドラインオプションのいずれかの値。
-
--server
-
--api-version
-
--certificate-authority
-
--insecure-skip-tls-verify
-
- クラスター情報および属性の値がある場合は、それを使用します。
-
サーバーロケーションがない場合は、エラーが生じます。
使用する実際のユーザー情報が決定されます。ユーザーは、クラスターと同じルールを使用して作成されます。ただし、複数の手法が競合することによって操作が失敗することから、ユーザーごとの 1 つの認証手法のみを使用できます。コマンドラインのオプションは、設定ファイルの値よりも優先されます。以下は、有効なコマンドラインのオプションです。
-
--auth-path
-
--client-certificate
-
--client-key
-
--token
-
- 欠落している情報がある場合には、デフォルト値が使用され、追加情報を求めるプロンプトが出されます。