既知の制限
このセクションでは、クラウドネイティブのContrail Networking(CN2)リリース23.1に存在する問題と制限について説明します。
一般的なルーティング
- CN2-3429:ファブリックソースNATが孤立した名前空間で有効になっている場合、トラフィックは、分離された名前空間のポッド間、および分離された名前空間と分離されていない名前空間のポッド間を流れます。
回避策: 分離された名前空間にファブリックソースNATを設定しないでください。
一般的な特長
-
CN2-3256:サブインターフェイスを備えたcSRXワークロードは、CN2との互換性がありません。
-
CN2-6327:オプションで juniperheader インターフェイスミラーリングが有効になっている場合、エグレスパケットのみがミラーリングされます。
回避策: エグレスパケットとイングレスパケットの両方をミラーリングする オプションを無効にします juniperheader 。
-
CN2-8729:ノード選択フィールドに単一ノードで実行するよう設定されていない場合、ポストフライトチェックにUDPテストのエラーメッセージが表示されることがあります。また、ping と TCP テストは失敗します。
回避策: contrail-readiness-postfile.yaml ファイルで、ノード選択フィールドに入力して単一のノードで実行します。
-
CN2-5916:X710 NICの接着インターフェイスに4つのインターフェイスが設定されている場合、トラフィックドロップのあるmbufリーフが発生します。
回避策: X710 NICの結合設定で2つのインターフェイスを制限します。
-
CN2-10346:vhost0がボンドインターフェイスにインストールされているカーネルモードノードでvRouterポッドを再起動すると、bond IPアドレスが、bondプライマリインターフェイスではなく、bondセカンダリインターフェイスに割り当てられる場合があります。
回避策のために、以下のスクリプトを実行します。
Bond-patch.txt text · 982 B #!/bin/bash set -x slave_list=($(ip addr show | grep SLAVE | awk '{ print $2 }' | sed 's/://'))Revision History for slave in "${slave_list[@]}"; do IFS=$' ' bond=$(ip addr show dev ${slave} | grep SLAVE | awk -F'master ' '{print $2}' | awk -F' ' '{print $1}') IFS=$'\n' route_list=($(ip route show | grep ${slave})) for route in "${route_list[@]}"; do echo "route: ${route}" new_route=$(echo ${route} | sed "s/${slave}/${bond}/g") route_cmd=$(echo "ip route replace ${new_route}" | sed -e 's|["'\'']||g') eval ${route_cmd} done ipv4=$(ip addr show dev ${slave} | grep 'inet ' | awk '{ print $2 }') ipv6=$(ip addr show dev ${slave} | grep 'inet6 ' | awk '{ print $2 }') echo "slave: '${slave}', bond: '${bond}', ipv4: '${ipv4}', ipv6: '${ipv6}'" if [[ -n "$ipv4" ]]; then ip addr del ${ipv4} dev ${slave} ip addr add ${ipv4} dev ${bond} fi if [[ -n "$ipv6" ]]; then ip addr del ${ipv6} dev ${slave} ip addr add ${ipv6} dev ${bond} fi
-
CN2-13314:ゲートウェイサービスインスタンス(GSI)は、4バイトASNでは動作しません。
回避策:GSIサービスを介してワークロードを接続する際には、2バイトASNを使用します。
Red Hat OpenShift
-
CN2-7787:Openshift 4.10でのKubertの導入は断続的に失敗します。
回避策については 、 Red Hat OCPBUGS-2535 を参照してください。
-
CN2-13011:Red Hat OCPのバックアップと復元に失敗します。
回避策については、Red Hat https://access.redhat.com/solutions/6964756 を参照してください。
CN2 Apstra統合
-
CN2-13607:CN2 Apstraの導入では、Apstraは仮想ネットワークを作成するのに数分かかります。
CN2およびKubernetes
-
CN2-4822:Contrailコントローラとワーカーノードを同じ物理ホスト上でホストするノードでは、BGPaaSオブジェクトを設定できません。
回避策:なし。実稼働環境では、Kubernetes ワーカー ノードとコントローラを異なる物理ホストで実行します。
-
CN2-8728:AWS EC2インスタンスにCN2を導入すると、異なるインターフェイスでKubernetesサービストラフィックとContrailデータパストラフィックを実行することはできません。
回避策: AWSで同じインターフェイスにKubernetesとデータトラフィックを導入しないでください。
-
CN2-10351:Kubevirt v0.58.0は、セキュアレジストリからイメージを取得するために必要な imagePullSecretをサポートしていません:enterprise-hub.juniper.net/contrail-container-prod/。
回避手段のためのこれらのステップに続いて下さい:
- Docker をインストールします。
- ローカルの安全でないレジストリを作成します。
- Docker を再起動します。
- 必要なコンテナをダウンロードします。コンテナは リリース Userspace CNI にあります。dpdk vhostuser インターフェイスは、ジュニパー/kubevirtをサポートしています。これらのコンテナはアセットとして保存されます。
- コンテナを読み込みます。
- 新しい安全でないレジストリにコンテナをタグ付けしてプッシュします。
- operator.yaml と cr.yaml をダウンロードします。
- kubevirt-operator.yaml を変更して、安全でないレジストリを使用します。
セキュリティ
-
CN2-4642:CN2では、ネットワークポリシーが予約されたタグ
application
を使用し、これらのタグはContrailの予約済みリソースとnamespace.
競合します。回避策:ポッドと名前空間のリソースを識別するために、アプリケーションと名前空間のラベルを使用しないでください。
-
CN2-10012:ネットワークポリシーに拒否ルールがある場合、ポリシーを更新して削除しても機能しません。
回避策: ポリシーを削除して再度追加します。