許可されるアドレス ペアの設定
ジュニパーネットワークスは、Kubernetes オーケストレーション環境で Cloud-Native Contrail® Networking リリース 22.1 以降を™使用して、許可されるアドレス ペア(AP)をサポートしています。
Contrail Networking で許可されるアドレス ペアを使用すると、セカンダリ IP アドレスを使用して、IP/MAC(CIDR)アドレスをゲスト インターフェイス(VirtualMachineInterface
)に追加できます。
クラスター内にポッドを作成すると、各ポッドは仮想マシン インターフェイスからその IP アドレスを自動的に取得します。ポッドが同じ仮想ネットワーク上 にいない 場合は、AAPを追加して、サブネットに関係なくトラフィックがポートを通過できるようにします。たとえば、ポッドのIPアドレスが192.168.2.0であるとします。サブネット192.168.2.0/24を持つAAPを定義すると、AAPはポッドがゲストインターフェイスと通信できるようにします。vRouter はトラフィックを転送し、ポッドに到達可能性をアドバタイズします。
AAPを設定するには、次のコードブロックに示すように、ポッドYAMLファイルに次の属性を挿入します。
kind: Pod metadata: name: my-pod namespace: my-namespace annotations: k8s.v1.cni.cncf.op/networks: | [ { "name": "net-a", "cni-args": { "net.juniper.contrail.allowedAddressPairs": [{ "ip": 192.168.2.0/24 "mac": "02:3f:66:ad:00:e9", "addressMode": "active-active" }],} ... }, { "name": "net-b", ... },
この AllowedAddressPairs
属性には、以下の表で説明されているように、許可されるアドレス・ペア定義のリストが含まれています。
定義の | 説明 |
---|---|
Ip | トラフィックの通過を許可する外部ポッドIPアドレスを指定します。 |
Mac | (オプション)外部ポッドのMACアドレスを指定します。 |
アドレスモード | (オプション)HA(高可用性)モードを指定します。アクティブ/アクティブまたはアクティブ/スタンバイから選択します。アクティブ/スタンバイがデフォルトです。 addressMode のデフォルト値は空の文字列です。アクティブ /スタンバイ は VRRP アドレスに使用されます。 ECMP にはアクティブ/アクティブ が使用されます。 |
Kubemanager では、ポッド イベントの PodController
監視により、新しい AAP ごとにインターフェイス定義が読み取られます。次に、コントローラは、 を AllowedAddressPair
生成して、 のインターフェイスのリストに追加します VirtualMachineInterface
。
代替構成
または、 から直接 AAP インターフェイスを VirtualMachineInterface
設定できます。この設定を AAP に適用するには、kubectl コマンドライン ツールから次のコマンドを実行します。
kubectl patch --namespace project-kubemanager VirtualMachineInterface $VMINAME -p "$(cat ./aap.yaml)"
前述のコマンドは、次のコード ブロックに示すように、AAP 設定で既存 VirtualMachineInterface
のものを更新します。
spec: allowedAddressPairs: allowedAddressPair: - ip: ipPrefix: 192.0.2.0 ipPrefixLen: 24