7.2. ホステッドクラスター用の Kubernetes API サーバーの設定
ホステッドクラスター用に Kubernetes API サーバーをカスタマイズする場合は、次の手順を実行します。
前提条件
- 実行中のホステッドクラスターがある。
-
HostedCluster
リソースを変更するためのアクセス権がある。 Kubernetes API サーバーに使用するカスタム DNS ドメインがある。
- カスタム DNS ドメインは適切に設定され、解決可能である。
- DNS ドメインには有効な TLS 証明書が設定されている。
- ドメインへのネットワークアクセスが環境内で適切に設定されている。
- カスタム DNS ドメインは、ホステッドクラスター全体において一意である。
- カスタム証明書を設定した。詳細は「、ホステッドクラスターでのカスタム API サーバー証明書の設定」を参照してください。
手順
プロバイダープラットフォームで、
kubeAPIServerDNSName
URL が Kubernetes API サーバーが公開されている IP アドレスを指すように DNS レコードを設定します。DNS レコードは適切に設定され、クラスターから解決可能である必要があります。DNS レコードの設定に使用するコマンドの例
dig + short kubeAPIServerDNSName
$ dig + short kubeAPIServerDNSName
Copy to Clipboard Copied! Toggle word wrap Toggle overflow HostedCluster
仕様で、次の例に示すようにkubeAPIServerDNSName
フィールドを変更します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して設定を適用します。
oc -f <hosted_cluster_spec>.yaml
$ oc -f <hosted_cluster_spec>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 設定が適用されると、HyperShift Operator はカスタム DNS ドメインを指す新しい
kubeconfig
シークレットを生成します。CLI またはコンソールを使用して
kubeconfig
シークレットを取得します。CLI を使用してシークレットを取得するには、次のコマンドを入力します。
kubectl get secret <hosted_cluster_name>-custom-admin-kubeconfig \ -n <cluster_namespace> \ -o jsonpath='{.data.kubeconfig}' | base64 -d
$ kubectl get secret <hosted_cluster_name>-custom-admin-kubeconfig \ -n <cluster_namespace> \ -o jsonpath='{.data.kubeconfig}' | base64 -d
Copy to Clipboard Copied! Toggle word wrap Toggle overflow コンソールを使用してシークレットを取得するには、ホステッドクラスターに移動し、Download Kubeconfig をクリックします。
注記コンソールで show login command オプションを使用して、新しい
kubeconfig
シークレットを使用することはできません。