2.3. MicroShift 起動前の IPv6 デュアルスタックネットワークの設定
サービスを起動する前に設定ファイルを使用して、IPv4 および IPv6 アドレスファミリーをサポートするデュアルスタックネットワークで実行するように MicroShift クラスターを設定できます。
- 設定の最初の IP ファミリーは、クラスター内のプライマリー IP スタックです。
- クラスターがデュアルスタックネットワークで実行された後に、それらを再起動して、デュアルスタック用のアプリケーション Pod およびアドオンサービスを有効化します。
OVN-Kubernetes ネットワークプラグインでは、IPv4 と IPv6 の両方のデフォルトルートが同じネットワークデバイスに存在する必要があります。別のネットワークデバイス上の IPv4 および IPv6 のデフォルトルートはサポートされていません。
IPv6 を必要とするデュアルスタックネットワークを使用する場合、::FFFF:198.51.100.1
などの IPv4 にマッピングされた IPv6 アドレスは使用できません。
前提条件
-
OpenShift CLI (
oc
) がインストールされている。 - クラスターへの root アクセス権限がある。
- クラスターが OVN-Kubernetes ネットワークプラグインを使用している。
- ホストには、それぞれのデフォルトを含む、IPv4 と IPv6 の両方のアドレスとルートがあります。
- ホストには、少なくとも 2 つの L3 ネットワーク (IPv4 と IPv6) があります。
手順
-
/etc/microshift/
ディレクトリーにある指定されたconfig.yaml.default
ファイルのコピーを作成し (まだ作成していない場合)、config.yaml
という名前を付けます。 新しい MicroShift の
config.yaml
を/etc/microshift/
ディレクトリーに保持します。config.yaml
ファイルは、MicroShift サービスが起動するたびに読み取られます。注記これを作成すると、
config.yaml
ファイルは組み込み設定よりも優先されます。MicroShift を起動していない場合は、MicroShift YAML の
network
セクションのデフォルト値を有効な値に置き換えます。ネットワーク割り当てを使用したデュアルスタック IPv6 ネットワーク設定の例
apiServer: # ... apiServer: subjectAltNames: - 192.168.113.117 - 2001:db9:ca7:ff::1db8 network: clusterNetwork: - 10.42.0.0/16 - fd01::/48 1 serviceNetwork: - 10.43.0.0/16 - fd02::/112 2 node: nodeIP: 192.168.113.117 3 nodeIPv6: 2001:db9:ca7:ff::1db8 4 # ...
必要なその他の MicroShift 設定を完了してから、次のコマンドを実行して MicroShift を起動します。
$ sudo systemctl start microshift
- 必要に応じてアプリケーション Pod とサービスの IP ファミリーポリシーをリセットし、それらのアプリケーション Pod とサービスを再起動してデュアルスタックネットワークを有効化します。簡単な例については、「アプリケーション Pod およびサービスの IP ファミリーポリシーのリセット」を参照してください。
検証
次の手順に従って、すべてのシステムサービスと Pod に 2 つの IP アドレス (ファミリーごとに 1 つずつ) があることを確認できます。
次のコマンドを実行して、ノードリソースで定義されたネットワークを取得します。
$ oc get pod -n openshift-ingress router-default-5b75594b4-w7w6s -o jsonpath='{.status.podIPs}'
出力例
[{"ip":"10.42.0.4"},{"ip":"fd01:0:0:1::4"}]
次のコマンドを実行して、ホストネットワーク Pod によって定義されたネットワークを取得します。
$ oc get pod -n openshift-ovn-kubernetes ovnkube-master-2fm2k -o jsonpath='{.status.podIPs}'
出力例
[{"ip":"192.168.113.117"},{"ip":"2001:db9:ca7:ff::1db8"}]