第5章 ネットワーク
5.1. DNS 設定の詳細 リンクのコピーリンクがクリップボードにコピーされました!
5.1.1. 一般的な DNS 設定 リンクのコピーリンクがクリップボードにコピーされました!
CodeReady Containers によって管理される OpenShift クラスターは、2 DNS ドメイン名 (crc.testing および apps-crc.testing) を使用します。crc.testing ドメインは、OpenShift のコアサービス用です。apps-crc.testing ドメインは、クラスターにデプロイされた OpenShift アプリケーションにアクセスするためのものです。
たとえば、OpenShift API サーバーは、console-openshift-console.apps-crc.testing を使用して OpenShift コンソールにアクセスしている間に api.crc.testing として公開されます。これらの DNS ドメインは、CodeReady コンテナーの仮想マシン内で実行される dnsmasq DNS コンテナーによって提供されます。
crc setup を実行すると、システムの DNS 設定を調整して、これらのドメインを解決できるようにします。crc start を起動する際に DNS が適切に設定されていることを確認するには、追加のチェックが行われます。
5.1.2. Linux リンクのコピーリンクがクリップボードにコピーされました!
Linux では、ディストリビューションによっては、CodeReady コンテナーは以下の DNS 設定を想定します。
5.1.2.1. NetworkManager + systemd-resolved リンクのコピーリンクがクリップボードにコピーされました!
この設定は、Fedora 33 以降および Ubuntu デスクトップエディションで使用されます。
- CodeReady コンテナーは NetworkManager がネットワークを管理することを想定します。
-
CodeReady コンテナーは、
testingドメインの要求を192.168.130.11DNS サーバーに転送するようにsystemd-resolvedを設定します。192.168.130.11は、CodeReady コンテナーの仮想マシンの IP です。 systemd-resolved設定は、/etc/NetworkManager/dispatcher.d/99-crc.shの NetworkManager の dispatcher スクリプトで行います。resolvectl domain crc ~testing resolvectl dns crc 192.168.130.11 resolvectl default-route crc false exit 0
resolvectl domain crc ~testing resolvectl dns crc 192.168.130.11 resolvectl default-route crc false exit 0Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.1.2.2. NetworkManager + dnsmasq リンクのコピーリンクがクリップボードにコピーされました!
この設定は、Fedora 32 以前、Red Hat Enterprise Linux、CentOS で使用されます。
- CodeReady コンテナーは NetworkManager がネットワークを管理することを想定します。
-
NetworkManager は、
/etc/NetworkManager/conf.d/crc-nm-dnsmasq.conf設定ファイルを介してdnsmasqを使用します。 この
dnsmasqインスタンスの設定ファイルは/etc/NetworkManager/dnsmasq.d/crc.confです。server=/crc.testing/192.168.130.11 server=/apps-crc.testing/192.168.130.11
server=/crc.testing/192.168.130.11 server=/apps-crc.testing/192.168.130.11Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
NetworkManager の
dnsmasqインスタンスは、crc.testingおよびapps-crc.testingドメインのリクエストを192.168.130.11DNS サーバーに転送します。
-
NetworkManager の
5.1.3. macOS リンクのコピーリンクがクリップボードにコピーされました!
macOS では、CodeReady Containers は次の DNS 設定を想定します。
-
CodeReady Containers は、
testingドメインに対するすべての DNS リクエストを CodeReady Containers 仮想マシンに転送するように macOS に指示する/etc/resolver/testingファイルを作成します。 -
CodeReady Containers は、VM IP アドレスを指す
api.crc.testingエントリーを/etc/hostsに追加します。oc実行可能ファイルにはこのエントリーが必要です。詳細は、OpenShift issue #23266 を参照してください。