9.6. EgressIP オブジェクトのデュアルスタックネットワークの設定
デュアルスタックネットワーク用に設定されたクラスターの場合、単一の EgressIP オブジェクトにデュアルスタックネットワークを適用できます。EgressIP オブジェクトは、そのデュアルスタックネットワーク機能を Pod に拡張できます。
Red Hat は、デュアルスタックネットワーク機能を実現するために 2 つの EgressIP オブジェクトを作成することをサポートしていません。たとえば、1 つのオブジェクトで IPv4 アドレスを指定し、別のオブジェクトを使用して IPv6 アドレスを指定する設定です。この設定制限は、Pod へのアドレスタイプの割り当てに影響します。
前提条件
-
1 つの
EgressIPオブジェクトが 1 つのノードに IPv4 アドレスを割り当て、もう 1 つのノードに IPv6 アドレスを割り当てることができるように、2 つの出力ノードを作成した。詳細は、「ノードへの Egress IP アドレスの割り当て」を参照してください。
手順
EgressIPオブジェクトを作成し、そのオブジェクトの IPv4 および IPv6 アドレスを設定します。次のEgressIPオブジェクトの例では、セレクターを使用して、どの Pod が送信トラフィックに指定された Egress IP アドレスを使用するかを識別します。kind: EgressIP metadata: name: egressip-dual spec: egressIPs: - 192.168.118.30 - 2600:52:7:94::30 namespaceSelector: matchLabels: env: qa podSelector: matchLabels: egressip: ds # ...
検証
EgressIPオブジェクトをテストおよび検証するためのPodマニフェストファイルを作成します。Pod はクライアントワークロードとして機能し、EgressIPポリシーが期待どおりに機能することを確認するために送信トラフィックを送信します。apiVersion: v1 kind: Pod metadata: name: ubi-egressip-pod namespace: test labels: egressip: ds spec: containers: - name: fedora-curl image: registry.redhat.io/ubi9/ubi command: ["/bin/bash", "-c", "sleep infinity"] # ...ここでは、以下のようになります。
<labels>-
EgressIPオブジェクトがこれらのラベルを使用してターゲット Pod に Egress IP アドレスを適用できるように、カスタム識別子を設定します。
Pod 内から外部サーバーに
curlリクエストを実行します。このアクションは、送信トラフィックがEgressIPオブジェクトで指定したアドレスを正しく使用していることを確認します。$ curl <ipv_address>ここでは、以下のようになります。
<ipv_address>-
EgressIPオブジェクトに応じて、IPv4 アドレスまたは IPv6 アドレスを入力します。