4.10. ML2/OVN デプロイメントでのマルチキャストの有効化

マルチキャストトラフィックをサポートするには、マルチキャストトラフィックがマルチキャストグループ内の仮想マシン (VM) インスタンスに到達できるように、デプロイメントのセキュリティー設定を変更します。マルチキャストトラフィックのフラッディングを防ぐには、IGMP スヌーピングを有効にします。

重要

マルチキャストスヌーピングの設定をテストして十分に理解してから、設定を実稼働環境に適用してください。設定が間違っていると、マルチキャストが中断したり、誤ったネットワーク動作を引き起こしたりする可能性があります。

前提条件

  • ML2/OVN メカニズムドライバーを使用する OpenStack デプロイメント

手順

  1. セキュリティーを設定し、適切な仮想マシンインスタンスへのマルチキャストトラフィックを許可します。たとえば、セキュリティーグループルールのペアを作成し、IGMP クエリーアーからの IGMP トラフィックが仮想マシンインスタンスに到達/発進するのを許可し、3 番目のルールでマルチキャストトラフィックを許可します。

    セキュリティーグループ mySG により、IGMP トラフィックが仮想マシンインスタンスに到達/発進するのを許可します。

     openstack security group rule create --protocol igmp --ingress mySG
    
     openstack security group rule create --protocol igmp --egress mySG

    別のルールにより、マルチキャストトラフィックが仮想マシンインスタンスに到達するのを許可します。

    openstack security group rule create  --protocol udp mySG

    セキュリティーグループルールを設定する代わりに、オペレーターはネットワーク上のポートセキュリティーを選択的に無効にすることもできます。ポートセキュリティーを無効にする場合は、関連するセキュリティーリスクについて検討し、対応を計画してください。

  2. アンダークラウドノードの環境ファイルで heat パラメーター NeutronEnableIgmpSnooping: True を設定します。たとえば、以下の行を ovn-extras.yaml に追加します。

    parameter_defaults:
            NeutronEnableIgmpSnooping: True

  3. この環境ファイルをご自分の環境に該当するその他の環境ファイルと共に openstack overcloud deploy コマンドに追加して、オーバークラウドをデプロイします。

    $ openstack overcloud deploy \
    --templates \
    …
    -e <other_overcloud_environment_files> \
    
    -e ovn-extras.yaml \
    …

    <other_overcloud_environment_files> を既存のデプロイメントに含まれる環境ファイルのリストに置き換えます。

検証

  1. マルチキャストスヌーピングが有効であることを確認します。ノースバウンドデータベースの Logical_Switch テーブルをリスト表示します。

    $ ovn-nbctl list Logical_Switch

    出力例

    _uuid         : d6a2fbcd-aaa4-4b9e-8274-184238d66a15
    other_config  : {mcast_flood_unregistered="false", mcast_snoop="true"}
    ...

    Networking サービス (neutron) の igmp_snooping_enable 設定は、OVN ノースバウンドデータベースの Logical_Switch テーブルの other_config 列で設定される mcast_snoop オプションに変換されます。mcast_flood_unregistered は常に false である点に注意してください。

  2. IGMP グループを表示します。

    $ ovn-sbctl list IGMP_group

    出力例

    _uuid    : 2d6cae4c-bd82-4b31-9c63-2d17cbeadc4e
    address  : "225.0.0.120"
    chassis  : 34e25681-f73f-43ac-a3a4-7da2a710ecd3
    datapath : eaf0f5cc-a2c8-4c30-8def-2bc1ec9dcabc
    ports    : [5eaf9dd5-eae5-4749-ac60-4c1451901c56, 8a69efc5-38c5-48fb-bbab-30f2bf9b8d45]
    ...

関連情報