5.6. user-provisioned infrastructure の DNS 解決の検証
OpenShift Container Platform を user-provisioned infrastructure にインストールする前に、DNS 設定を検証できます。
このセクションの検証手順は、クラスターのインストール前に正常に実行される必要があります。
前提条件
- user-provisioned infrastructure に必要な DNS レコードを設定している。
手順
インストールノードから、Kubernetes API、ワイルドカードルート、およびクラスターノードのレコード名に対して DNS ルックアップを実行します。応答に含まれる IP アドレスが正しいコンポーネントに対応することを確認します。
Kubernetes API レコード名に対してルックアップを実行します。結果が API ロードバランサーの IP アドレスを参照することを確認します。
$ dig +noall +answer @<nameserver_ip> api.<cluster_name>.<base_domain> 1
- 1
<nameserver_ip>
をネームサーバーの IP アドレスに、<cluster_name>
をクラスター名に、<base_domain>
をベースドメイン名に置き換えます。
出力例
api.ocp4.example.com. 604800 IN A 192.168.1.5
Kubernetes 内部 API レコード名に対してルックアップを実行します。結果が API ロードバランサーの IP アドレスを参照することを確認します。
$ dig +noall +answer @<nameserver_ip> api-int.<cluster_name>.<base_domain>
出力例
api-int.ocp4.example.com. 604800 IN A 192.168.1.5
*.apps.<cluster_name>.<base_domain>
DNS ワイルドカードルックアップの例をテストします。すべてのアプリケーションのワイルドカードルックアップは、アプリケーション Ingress ロードバランサーの IP アドレスに解決する必要があります。$ dig +noall +answer @<nameserver_ip> random.apps.<cluster_name>.<base_domain>
出力例
random.apps.ocp4.example.com. 604800 IN A 192.168.1.5
注記出力例では、同じロードバランサーが Kubernetes API およびアプリケーションの Ingress トラフィックに使用されます。実稼働のシナリオでは、API およびアプリケーション Ingress ロードバランサーを個別にデプロイし、それぞれのロードバランサーインフラストラクチャーを分離してスケーリングすることができます。
random
は、別のワイルドカード値に置き換えることができます。たとえば、OpenShift Container Platform コンソールへのルートをクエリーできます。$ dig +noall +answer @<nameserver_ip> console-openshift-console.apps.<cluster_name>.<base_domain>
出力例
console-openshift-console.apps.ocp4.example.com. 604800 IN A 192.168.1.5
ブートストラップ DNS レコード名に対してルックアップを実行します。結果がブートストラップノードの IP アドレスを参照することを確認します。
$ dig +noall +answer @<nameserver_ip> bootstrap.<cluster_name>.<base_domain>
出力例
bootstrap.ocp4.example.com. 604800 IN A 192.168.1.96
- この方法を使用して、コントロールプレーンおよびコンピュートノードの DNS レコード名に対してルックアップを実行します。結果が各ノードの IP アドレスに対応していることを確認します。
インストールノードから、ロードバランサーとクラスターノードの IP アドレスに対して逆引き DNS ルックアップを実行します。応答に含まれるレコード名が正しいコンポーネントに対応することを確認します。
API ロードバランサーの IP アドレスに対して逆引き参照を実行します。応答に、Kubernetes API および Kubernetes 内部 API のレコード名が含まれていることを確認します。
$ dig +noall +answer @<nameserver_ip> -x 192.168.1.5
出力例
5.1.168.192.in-addr.arpa. 604800 IN PTR api-int.ocp4.example.com. 1 5.1.168.192.in-addr.arpa. 604800 IN PTR api.ocp4.example.com. 2
注記PTR レコードは、OpenShift Container Platform アプリケーションのワイルドカードには必要ありません。アプリケーション Ingress ロードバランサーの IP アドレスに対する逆引き DNS 解決の検証手順は必要ありません。
ブートストラップノードの IP アドレスに対して逆引き参照を実行します。結果がブートストラップノードの DNS レコード名を参照していることを確認します。
$ dig +noall +answer @<nameserver_ip> -x 192.168.1.96
出力例
96.1.168.192.in-addr.arpa. 604800 IN PTR bootstrap.ocp4.example.com.
- この方法を使用して、コントロールプレーンおよびコンピュートノードの IP アドレスに対して逆引きルックアップを実行します。結果が各ノードの DNS レコード名に対応していることを確認します。