Red Hat Training

A Red Hat training course is available for OpenShift Container Platform

8.9. 멀티 캐스트 활성화

중요

현재 멀티캐스트는 고 대역폭 솔루션이 아닌 낮은 대역폭 조정 또는 서비스 검색에 가장 적합합니다.

OpenShift Container Platform Pod 간 멀티 캐스트 트래픽은 기본적으로 비활성화되어 있습니다. ovs-multitenant 또는 ovs -networkpolicy 플러그인을 사용하는 경우 프로젝트의 해당 netnamespace 오브젝트에 주석을 설정하여 프로젝트별로 멀티 캐스트를 활성화할 수 있습니다.

$ oc annotate netnamespace <namespace> \
    netnamespace.network.openshift.io/multicast-enabled=true

주석을 제거하여 멀티 캐스트를 비활성화합니다.

$ oc annotate netnamespace <namespace> \
    netnamespace.network.openshift.io/multicast-enabled-

ovs-multitenant 플러그인을 사용하는 경우:

  1. 격리된 프로젝트에서 포드에서 전송한 멀티 캐스트 패킷은 프로젝트의 다른 모든 포드로 전달됩니다.
  2. 네트워크를 함께 가입한 경우 각 프로젝트의 netnamespace 에서 멀티 캐스트를 활성화하여 모든 프로젝트에서 적용되도록 해야 합니다. 결합된 네트워크에서 Pod가 전송한 멀티 캐스트 패킷은 연결된 모든 네트워크의 모든 Pod로 전달됩니다.
  3. default 프로젝트에서 멀티 캐스트를 활성화하려면 kube-service-catalog 프로젝트에서 도 활성화해야 합니다. 글로벌 프로젝트는 멀티 캐스트를 위해 "글로벌"이 아닙니다. 글로벌 프로젝트의 Pod에서 전송한 멀티 캐스트 패킷은 모든 프로젝트의 모든 포드가 아닌 다른 글로벌 프로젝트의 Pod에만 전달됩니다. 마찬가지로 글로벌 프로젝트의 포드는 모든 프로젝트의 모든 포드에서 아닌 다른 글로벌 프로젝트의 Pod에서 전송된 멀티 캐스트 패킷만 받습니다.

ovs-networkpolicy 플러그인을 사용하는 경우:

  1. Pod에서 전송한 멀티 캐스트 패킷은 NetworkPolicy 오브젝트에 관계없이 프로젝트의 다른 모든 Pod로 전달됩니다. (포드가 유니캐스트를 통해 통신할 수 없는 경우에도 멀티 캐스트를 통해 통신할 수 있습니다.)
  2. 한 프로젝트에서 Pod가 전송한 멀티 캐스트 패킷은 프로젝트 간에 통신을 허용하는 NetworkPolicy 오브젝트가 있더라도 다른 프로젝트의 Pod로 전달되지 않습니다.