設定多點傳播用戶端執行個體
本頁說明如何設定 Compute Engine 執行個體,以便接收多點播送流量。接收多點傳播流量的執行個體稱為「多點傳播用戶」。
本頁的程序說明如何設定多點傳播消費者,如下所示:
在新或現有執行個體上啟用 IGMP 查詢,並在客體作業系統中設定 IGMPv2。
完成這些步驟後,執行個體上執行的應用程式就能加入及離開多點傳播群組。
對於接收大量流量的多點傳播消費者,請增加網路驅動程式的環形緩衝區大小,避免封包遺失。
如要進一步瞭解設定執行個體後 IGMPv2 的運作方式,請參閱「IGMPv2 的運作方式」。
事前準備
建立多播消費者執行個體前,請參閱下列章節。
查看多點傳播用戶的電腦和作業系統注意事項
為確保最佳效能,請參閱下列指南,並據此建立執行個體:
機型:請參閱「多點傳播供應端和用戶端的機器考量」一文中的指引。
作業系統 (OS) 和網路驅動程式:請參閱下列說明:
建議使用 Linux 作業系統。詳情請參閱「作業系統詳細資料」。
對於接收大量流量的多點傳播消費者,建議增加網路驅動程式的環形緩衝區大小至
2048,以避免封包遺失。如果您使用虛擬機器 (VM) 執行個體,請參閱下列 gVNIC 驅動程式注意事項:
部分較舊的 OS 版本可能無法使用支援增加環形緩衝區空間的 gVNIC 驅動程式版本。預設支援這項功能的作業系統版本範例包括 RHEL 10、Rocky Linux 10 和 Ubuntu 24.04。
如果無法預設增加環狀緩衝區空間,請先手動將 gVNIC 驅動程式升級至 1.4.5 以上版本。
檢查是否有預先設定的刊登位置政策
如果多播管理員為備援多播網域設定網域群組,則 Google Cloud 會自動提供選用的放置政策,除非多播管理員在啟用網域時停用政策。將這項放置政策套用至新執行個體或現有執行個體時,Compute Engine 會盡量將執行個體放置在相應區域中,靠近多點播送網域的基礎架構。
如要確認你是否可以使用刊登位置政策,請按照下列步驟操作:
查看您要建立執行個體的區域,瞭解多點傳播用戶端關聯的詳細資料。請參閱「查看多點傳播用戶關聯」。
如果輸出內容的
placementPolicy欄位包含刊登位置政策名稱,您就可以在建立新執行個體或設定現有執行個體時套用刊登位置政策。請記下這個值,以便在本頁完成程序時使用。
建立多點傳播消費者執行個體
本節說明如何建立新執行個體,做為多點播送消費者使用,方法是啟用 IGMP,並視需要使用選用的放置政策。
如要進一步瞭解如何建立執行個體,請參閱「建立及啟動 Compute Engine 執行個體」。
gcloud
如要建立新的多播消費者執行個體,請使用
compute instances create指令,並指定igmp-query旗標:gcloud compute instances create INSTANCE_NAME \ --zone=ZONE \ --network-interface=network=MULTICAST_CONSUMER_NETWORK,subnet=MULTICAST_CONSUMER_SUBNET,igmp-query=IGMP_QUERY_V2[,no-address] \ --machine-type=MACHINE_TYPE \ --image-project=IMAGE_PROJECT \ --image-family=IMAGE_FAMILY_NAME \ --network-performance-configs=total-egress-bandwidth-tier=TIER_1 \ [--maintenance-policy=MAINTENANCE_POLICY] \ [--resource-policies=PLACEMENT_POLICY_NAME] \ [--shielded-secure-boot] \ [--shielded-vtpm] \ [--shielded-integrity-monitoring]
替換下列值:
INSTANCE_NAME:執行個體的名稱ZONE:要建立執行個體的可用區。必須是您啟用多點傳播用戶虛擬私有雲網路的區域,該網路會代管執行個體。MULTICAST_CONSUMER_NETWORK、MULTICAST_CONSUMER_SUBNET:多點播送消費者虛擬私有雲網路和子網路,用於代管執行個體MACHINE_TYPE:執行個體的機型。如果尚未查看,請先參閱「多播生產者和消費者適用的機器考量事項」一文中的指引。IMAGE_PROJECT:包含圖片的圖片專案,例如ubuntu-os-cloud。IMAGE_FAMILY:映像檔系列,例如ubuntu-2404-lts-amd64。指定映像檔系列時,系統會使用該系列中未淘汰的最新 OS 映像檔版本建立執行個體。或者,您也可以改用
--image旗標,並指定圖片版本。如果您使用的機型有 48 個以上的 vCPU,請保留
-network-performance-configs旗標及其值,這會啟用 Tier_1 網路。如果您使用的機型有 32 個 vCPU,請移除這個旗標,因為 C4 執行個體不支援 Tier_1 網路,且最多只能有 32 個 vCPU。如有配置政策,您可以使用下列標記建立含有配置政策的執行個體。詳情請參閱「在建立執行個體時套用密集配置政策」。
MAINTENANCE_POLICY:執行個體的主機維護政策。如果所選機型不支援即時遷移,則只能指定TERMINATE。否則,您可以指定MIGRATE或TERMINATE。或者,如要為執行個體類型使用預設維護政策,可以省略這個旗標。PLACEMENT_POLICY_NAME:多點傳播用戶端關聯輸出內容中的放置位置政策名稱。
您也可以使用
--shielded和no-address參數,建立沒有外部 IP 位址的 Shielded VM。詳情請參閱「什麼是 Shielded VM?」。
請按照操作說明在客體 OS 中設定 IGMPv2。
按照操作說明增加網路驅動程式的環形緩衝區大小。
將現有執行個體設定為多點播送消費者
本節說明如何啟用 IGMP 並視需要使用選用放置位置政策,將現有執行個體設定為多點播送消費者。
gcloud
如要將現有執行個體設定為多點播送消費者,請使用
compute instances network-interfaces update指令並指定igmp-query旗標。下列指令會更新
nic0介面。如要指定其他介面,請使用--network-interface旗標。gcloud compute instances network-interfaces update INSTANCE_NAME \ --zone=ZONE \ --igmp-query=IGMP_QUERY_V2
替換下列值:
INSTANCE_NAME:執行個體的名稱ZONE:執行個體的可用區
如有可用的配置政策,且您想將政策套用至執行個體,請參閱「將密集配置政策套用至現有的執行個體」。政策名稱請使用多點傳播消費者關聯輸出中的配置政策名稱。
請按照操作說明在客體 OS 中設定 IGMPv2。
按照操作說明增加網路驅動程式的環形緩衝區大小。
如果運算執行個體的機型有 48 個以上的 vCPU,請啟用 Tier_1 網路,如「更新運算執行個體以納入 Tier_1 網路」一文所述。
在客體 OS 中設定 IGMPv2
如要在執行個體的客體 OS 中設定 IGMPv2,請按照下列步驟操作:
使用 SSH 連線至執行個體。
執行下列指令,找出附加至多點播送消費者虛擬私有雲網路中子網路的網路介面名稱。
sudo ifconfig
執行下列指令,強制使用 IGMPv2。
sudo -i echo "2" > /proc/sys/net/ipv4/conf/NETWORK_INTERFACE_NAME/force_igmp_version
將
NETWORK_INTERFACE_NAME替換為網路介面名稱。
增加網路驅動程式的環形緩衝區空間
本節說明如何增加執行個體上網路驅動程式的環形緩衝區空間。
視執行個體使用的 OS 版本而定,您可能需要手動將 gVNIC 驅動程式升級至 1.4.5 以上版本,才能順利執行下列指令。
對於接收大量流量的多點傳播消費者,請將網路驅動程式的環形緩衝區大小增加至 2048,以避免封包遺失。請參閱下列指令範例:
sudo ethtool -G eth0 rx 2048 tx 2048
詳情請參閱「駕駛人功能和設定」。
後續步驟
- 如要快速測試多點傳播設定,而不啟動應用程式工作負載,可以使用
iperf工具,如「測試多點傳播流量的範例指令」一文所述。