AKS Edge Essentials 網路功能

本文說明如何設定 Windows 主機 OS 與 Linux 和 Windows 節點虛擬機器之間的網路功能。 如需 AKS Edge Essentials 架構的詳細資訊,請參閱 AKS Edge Essentials 概觀

提示

下列指南說明 AKS Edge Essentials 中可用的不同網路概念和組態。 如果您使用單一電腦叢集,安裝程式和部署機制會處理所有必要的網路設定。 部署叢集不需要額外的步驟或設定。

網路

本指南假設您已控制網路和路由器 (,也就是在主設定) 。 如果您是在公司環境中,建議您向網路系統管理員詢問一系列可從網際網路上連線的相同子網) (的免費 IP 位址。

為了建立 Windows 主機 OS 與 Linux 和 Windows 虛擬機器之間的通道,我們會使用 Hyper-V 網路堆疊。 如需有關 Hyper-V 網路的詳細資訊,請參閱 Hyper-V 網路基本概念

AKS Edge Essentials 的下列重要網路概念與 Kubernetes 概念一致:

  • 虛擬交換器:Hyper-V 元件,可讓 Hyper-V 主機上建立的虛擬機器與其他電腦通訊。 如需詳細資訊,請參閱 使用 Hyper-V 建立和設定虛擬交換器。 AKS Edge Essentials 支援兩種類型的虛擬交換器:
    • 內部:連線到只能由在具有虛擬交換器之 Windows 主機 OS 上執行的虛擬機器,以及在主機 OS 與虛擬機器之間使用的網路。
    • 外部:系結至實體網路介面卡,以連線到有線實體網路。 其可讓虛擬機器存取實體網路,進而與外部網路上的裝置通訊。 此外,它可讓相同 Hyper-V 伺服器上的虛擬機器彼此通訊。
  • 控制平面端點 IP 位址:Kubernetes 控制平面可從此 IP 位址連線。 您必須提供在 Kubernetes 控制平面叢集的整個存留期內免費的單一 IP。
  • 服務 IP 位址範圍:服務 IP範圍是保留的 IP 位址集區,用來將 IP 位址配置至 Kubernetes 服務, (Kubernetes 服務/工作負載) ,以便讓應用程式連線。
  • 虛擬機器 IP 位址:在 AKS Edge Essentials 中,Kubernetes 節點會部署為需要 IP 位址的特殊虛擬機器。 您必須將免費 IP 指派給這些 VM。

依部署類型建立網路

如果使用單一電腦叢集或可調整的叢集部署 AKS Edge Essentials,我們支援不同類型的交換器、IP 位址指派和組態,如下表所示。

單一電腦叢集 可調整叢集
虛擬交換器的類型 內部 外部
虛擬交換器建立 自動 使用者手動或根據實體網路介面卡名稱自動進行。
IP 位址指派 自動 – 定義的位址 使用者所設定的靜態 IP 位址。
輸出連線 使用虛擬交換器 直接使用實體網路介面卡。
輸入連線 無法連線 使用虛擬機器 IP 位址。
DNS 使用 DnsServers 參數進行設定 – 如果未提供,請使用 Windows 主機 DNS 伺服器。 使用 DnsServers 參數進行設定 – 如果未提供,請使用 Windows 主機 DNS 伺服器。
Proxy 使用 、 https_proxyno_proxy 參數進行 http_proxy 設定。 使用 http_proxyhttps_proxyno_proxy 參數進行設定。
離線部署 支援使用 InternetDisabled 參數。 支援使用 InternetDisabled 參數。
服務 IP 範圍 ServiceIPRangeSize如果已定義 參數,請從192.168.0.4開始。 ServiceIPRangeStart可以定義 和 ServiceIPRangeSize 參數。
靜態 MAC 位址 支援使用 MacAddress 參數。 支援使用 MacAddress 參數。
最大傳輸單位 (MTU) 支援使用 MTU 參數。 支援使用 MTU 參數。

單一電腦叢集

單一電腦部署會使用內部虛擬交換器來管理網路。 這種類型的部署必須有 Linux 節點;Windows 節點是選擇性的。 下圖顯示使用內部虛擬交換器的單一電腦部署架構:

此圖顯示使用內部虛擬交換器的網路架構。

在單一電腦部署期間,AKS Edge Essentials 會建立名為 aksedgesw-int的內部虛擬交換器,以及適當的虛擬網路介面卡來連接虛擬機器和 Windows 主機 OS。 安裝程式也會處理 NIC 的 IP 位址指派和位址轉譯。 例如,虛擬 NIC 的 IP 位址可以定義如下:

  • Windows 主機 OS:192.168.0。1
  • Linux 節點虛擬機器:192.168.0。2
  • Windows 節點虛擬機器:192.168.0。3
  • 服務 IP 位址啟動:192.168.0。4

192.168.0.0/24位址系列可能會根據內部虛擬交換器而變更;不過,節點和主機 OS 一律會有相同的尾碼:主機 OS (.1) 、Linux VM (.2) 、Windows VM (.3) 和 ServiceIP start (.4) 。

最後,使用位址轉譯,流量可以使用實體網路介面卡連線到外部網路。 上圖顯示使用 10.0.0.0/24 IP 位址系列的外部網路,但這取決於裝置安裝所在的網路環境。

可調整的叢集

在可調整的叢集部署中,在不同裝置內執行的節點必須彼此通訊。 因此,所有節點都必須連線到相同的網路。 若要跨裝置達成此節點對節點通訊,AKS Edge Essentials 可調整的叢集部署會使用外部虛擬交換器。 下圖顯示使用外部虛擬交換器的多部電腦部署架構:

此圖顯示使用外部虛擬交換器的網路架構。

若要啟動這種類型的部署,您必須在部署期間提供下列網路參數:

  • AdapterName:連接到外部網路的實體介面卡名稱。 您可以執行 PowerShell Get-NetAdapter -Physical 命令,以檢視 Name 您選擇的配接器資料行。
  • Ip4Address:指定 VM 所採用的 IP 位址。 每個節點都需要自己的唯一 IP 位址。

部署完成後,所有節點和 Windows 主機 OS 都會使用相同的外部虛擬交換器連線到外部網路。 因為節點會直接連線到網路,所以不需要進行位址轉譯。 上圖顯示使用 192.168.0.0/24 IP 位址系列的網路架構;不過,這取決於安裝裝置的網路環境。

如需可調整叢集設定的詳細資訊,請參閱 AKS Edge Essentials 中的完整 Kubernetes 部署在多部電腦上相應放大

其他網路概念

DNS

網域名稱系統 (DNS) 會將人類可讀取的功能變數名稱轉譯為 (,例如, www.microsoft.com) 轉譯為電腦可讀取的 IP (位址,例如 192.0.2.44) 。 AKS Edge Essentials Linux 虛擬機器會使用 systemd (系統和服務管理員) ,因此 DNS 或名稱解析服務會透過 系統解析 的服務提供給本機應用程式和服務。 Windows 節點會使用預設的 Windows 網路 DNS 服務。

根據預設,在 AKS Edge Essentials 部署期間,您可以使用 參數提供 DNS 伺服器清單 DnsServers 。 如果未提供位址,部署機制會尋找 Windows 主機 OS DNS 伺服器, (使用 ipconfing /all) 檢查並使用這些伺服器位址。

可以檢查 Linux 和 Windows 節點所使用的 DNS 伺服器。 若要這樣做,請使用提升許可權的 PowerShell 會話執行下列 Cmdlet:

  • 針對 Linux VM 節點:

    Invoke-AksEdgeNodeCommand -NodeType Linux -command "resolvectl status"
    

    命令輸出會顯示針對每個 Linux VM 介面所設定的 DNS 伺服器清單。 特別是,請務必檢查 eth0 介面狀態,這是 AKS EE VM 通訊的預設介面。 此外,請務必檢查清單的 [目前 DNS 伺服器 ] 和 [DNS 伺服器 ] 欄位的 IP 位址。 如果沒有 IP 位址,或 IP 位址不是有效的 DNS 伺服器 IP 位址,則 DNS 服務將無法運作。

  • 針對 Windows VM 節點:

    Invoke-AksEdgeNodeCommand -NodeType Windows -command "ipconfig /all"
    

    命令輸出會顯示已設定的 Windows VM 網路介面清單。 特別是,請務必檢查 乙太網路卡 vEthernet (乙太網路) 介面狀態,這是 AKS Edge Essentials VM 通訊的預設介面。 此外,請務必檢查清單 [ DNS 伺服器 ] 欄位的 IP 位址。 如果沒有 IP 位址,或 IP 位址不是有效的 DNS 伺服器 IP 位址,則 DNS 服務將無法運作。

Proxy

Proxy 伺服器是專用軟體,可作為用戶端與網際網路之間的閘道。 它會以媒介方式處理網路要求:當您連線到 Proxy 伺服器時,您的電腦會將要求傳送至伺服器,而不是直接傳送給收件者。 AKS Edge Essentials 支援為 Linux 和 Windows 虛擬機器設定 Proxy 伺服器。

根據預設,在 AKS Edge Essentials 部署期間,您可以使用 、 Proxy.HttpsProxy.No 參數來提供 Proxy 組態 Proxy.Http 。 如果未提供任何參數,部署機制會使用必要的 Kubernetes 內部網路功能來設定 no_proxy 旗標。

  • 針對 Linux VM 節點:

    Invoke-AksEdgeNodeCommand -NodeType Linux -command 'env | grep proxy'
    
  • 針對 Windows VM 節點:

    Invoke-AksEdgeNodeCommand -NodeType Windows -command 'netsh winhttps show proxy'
    

靜態 MAC 位址

Hyper-V 可讓您建立具有靜態動態 MAC 位址的虛擬機器。 在 AKS Edge Essentials 虛擬機器建立期間,您可以使用 參數提供 VM MAC 位址 MacAddress 。 如果未提供任何值,則會隨機產生 MAC 位址並儲存在本機,以在虛擬機器或 Windows 主機重新開機之間保留相同的位址。 若要查詢 AKS Edge Essentials 虛擬機器 MAC 位址,您可以使用下列命令:

  • 針對 Linux VM 節點:

    Get-AksEdgeNodeAddr -NodeType Linux
    
  • 針對 Windows VM 節點:

    Get-AksEdgeNodeAddr -NodeType Windows
    

後續步驟