2.4. MicroShift クラスターの IPv6 デュアルスタックネットワークへの移行


MicroShift 設定ファイルのサービスおよびクラスターネットワークパラメーターに 2 つのエントリーを設定することで、IPv4 および IPv6 アドレスファミリーをサポートするデュアルスタッククラスターネットワークをデュアルスタッククラスターネットワークに変換できます。

  • 設定の最初の IP ファミリーは、クラスター内のプライマリー IP スタックです。
  • MicroShift システム Pod とサービスは、MicroShift の再起動時に自動的に更新されます。
  • クラスターがデュアルスタックネットワークに移行し、再起動したら、それらを再起動して、デュアルスタックネットワーク用のワークロード 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)があります。

手順

  1. まだ行っていない場合は、/etc/microshift/ ディレクトリーにある指定された config.yaml.default ファイルのコピーを作成し、config.yaml という名前を変更します。
  2. 新しい MicroShift の config.yaml/etc/microshift/ ディレクトリーに保持します。config.yaml ファイルは、MicroShift サービスが起動するたびに読み取られます。

    注記

    これを作成すると、config.yaml ファイルは組み込み設定よりも優先されます。

  3. 有効な値を使用して、MicroShift YAML の network セクションに IPv6 設定を追加します。

    警告

    再起動と移行後も同じ最初のエントリーを保持する必要があります。これは、シングルツーシングルスタック(シングルスタック)またはデュアルスタックで当てはまります。最初のエントリーへの変更が必要な場合は、etcd データベースの完全な消去が必要になります。これにより、アプリケーションデータ損失が発生する可能性があり、サポートされていません。

    1. 有効な値を使用して、MicroShift YAML の network セクションにある 2 番目のネットワークの IPv6 設定を追加します。
    2. MicroShift config.yamlnetwork セクションにネットワーク割り当てを追加して、IPv6 をセカンダリーネットワークとして使用するデュアルスタックを有効にします。

      ネットワーク割り当てによるデュアルスタック IPv6 設定の例

      # ...
      apiServer:
        subjectAltNames:
        - 192.168.113.117
        - 2001:db9:ca7:ff::1db8 1
      network:
        clusterNetwork:
        - 10.42.0.0/16 2
        - fd01::/48 3
        serviceNetwork:
        - 10.43.0.0/16
        - fd02::/112 4
      node:
        nodeIP: 192.168.113.117 5
        nodeIPv6: 2001:db9:ca7:ff::1db8 6
      # ...

      1
      IPv6 ノードアドレス。
      2
      IPv4 network.24 未満の CIDR 値で clusterNetwork を指定します。
      3
      IPv6 network.64 未満の CIDR 値で clusterNetwork を指定します。
      4
      接頭辞が 112 である IPv6 CIDR を指定します。Kubernetes は最低レベルの 16 ビットのみを使用します。接頭辞が 112 の場合、IP アドレスは 112 から 128 ビットに割り当てられます。
      5
      ノード IP アドレスの例。以前の IPv4 IP アドレスを維持します。
      6
      ノード IP アドレスの例。IPv6 アドレスファミリーである必要があります。
  4. 必要なその他の設定を完了してから、次のコマンドを実行して MicroShift を再起動します。

    $ sudo systemctl restart microshift
  5. 必要に応じてアプリケーション Pod とサービスの IP ファミリーポリシーをリセットし、それらのアプリケーション Pod とサービスを再起動してデュアルスタックネットワークを有効にします。簡単な例は、「アプリケーション Pod およびサービスの IP ファミリーポリシーの設定」を参照してください。

検証

次の手順に従って、すべてのシステムサービスと Pod に 2 つの IP アドレス(ファミリーごとに 1 つずつ)があることを確認できます。

  1. 次のコマンドを実行して、Pod のステータスを取得します。

    $ oc get pod -A -o wide

    出力例

    NAMESPACE                  NAME                                      READY   STATUS    RESTARTS        AGE     IP                NODE           NOMINATED NODE   READINESS GATES
    kube-system                csi-snapshot-controller-bb7cb654b-7s5ql   1/1     Running   0               46m     10.42.0.6         microshift-9   <none>           <none>
    kube-system                csi-snapshot-webhook-95f475949-jrqv8      1/1     Running   0               46m     10.42.0.4         microshift-9   <none>           <none>
    openshift-dns              dns-default-zxkqn                         2/2     Running   0               46m     10.42.0.5         microshift-9   <none>           <none>
    openshift-dns              node-resolver-r2h5z                       1/1     Running   0               46m     192.168.113.117   microshift-9   <none>           <none>
    openshift-ingress          router-default-5b75594b4-228z7            1/1     Running   0               2m5s    10.42.0.3         microshift-9   <none>           <none>
    openshift-ovn-kubernetes   ovnkube-master-bltk7                      4/4     Running   2 (2m32s ago)   2m36s   192.168.113.117   microshift-9   <none>           <none>
    openshift-ovn-kubernetes   ovnkube-node-9ghgs                        1/1     Running   2 (2m32s ago)   46m     192.168.113.117   microshift-9   <none>           <none>
    openshift-service-ca       service-ca-5d7bd9db6-qgwgw                1/1     Running   0               46m     10.42.0.7         microshift-9   <none>           <none>
    openshift-storage          lvms-operator-656cd9b59b-8rpf4            1/1     Running   0               46m     10.42.0.8         microshift-9   <none>           <none>
    openshift-storage          vg-manager-wqmh4                          1/1     Running   2 (2m39s ago)   46m     10.42.0.10        microshift-9   <none>           <none>

  2. 次のコマンドを実行して、OVN-K ネットワークプラグインによって定義されたネットワークを取得します。

    $ oc get pod -n openshift-ovn-kubernetes ovnkube-master-bltk7 -o jsonpath='{.status.podIPs}'

    出力例

    [{"ip":"192.168.113.117"},{"ip":"2001:db9:ca7:ff::1db8"}]

  3. 次のコマンドを実行して、ノードリソースで定義されたネットワークを取得します。

    $ oc get pod -n openshift-ingress router-default-5b75594b4-228z7 -o jsonpath='{.status.podIPs}'

    出力例

    [{"ip":"10.42.0.3"},{"ip":"fd01:0:0:1::3"}]

注記

シングルスタックネットワークに戻すには、ネットワークに 2 番目のエントリーを削除し、デュアルスタックに移行する前に設定された単一スタックに戻ることができます。

Red Hat logoGithubRedditYoutubeTwitter

詳細情報

試用、購入および販売

コミュニティー

Red Hat ドキュメントについて

Red Hat をお使いのお客様が、信頼できるコンテンツが含まれている製品やサービスを活用することで、イノベーションを行い、目標を達成できるようにします。

多様性を受け入れるオープンソースの強化

Red Hat では、コード、ドキュメント、Web プロパティーにおける配慮に欠ける用語の置き換えに取り組んでいます。このような変更は、段階的に実施される予定です。詳細情報: Red Hat ブログ.

会社概要

Red Hat は、企業がコアとなるデータセンターからネットワークエッジに至るまで、各種プラットフォームや環境全体で作業を簡素化できるように、強化されたソリューションを提供しています。

© 2024 Red Hat, Inc.