跳至主要内容

在代理後方使用 Fleet

在本節中,你將學習如何在具有公共 IP 的 Rancher 伺服器和沒有公共 IP 但配置為使用代理的 Kubernetes 叢集的設定中啟用 Fleet。

Rancher 不會與已註冊的下游叢集建立連接。部署在下游叢集上的 Rancher agent 必須能夠與 Rancher 建立連接。

要設定 Fleet 在代理後方工作,你需要為下游叢集設定 Agent Environment Variables。這些是叢集級別的配置選項。

透過 Rancher UI,你可以為任何叢集類型配置這些環境變數,包括已註冊和自訂叢集。可以在編輯現有叢集或佈建新叢集時新增這些變數。

對於公共下游叢集,在 Rancher UI 中設定所需的環境變數就足夠了。

對於私有節點或私有叢集,環境變數需要在節點本身上設定。然後從 Rancher UI 配置環境變數,通常在佈建自訂叢集或註冊私有叢集時進行。有關如何在 K3s Kubernetes 叢集中的 Ubuntu 節點上設定環境變數的範例,請參閱本節。

所需的環境變數​

在為代理新增 Fleet agent 環境變數時,請將 <PROXY_IP> 替換為你的私有代理 IP。

警告

NO_PROXY 環境變數沒有標準化,值的接受格式可能因應用程式而異。在 Rancher 中配置 NO_PROXY 變數時,值必須符合 Golang 期望的格式。

具體來說,值應該是一個以逗號分隔的字串,僅包含 IP 位址、CIDR 表示法、網域名稱或特殊 DNS 標籤(例如 *)。有關期望值格式的完整說明,請參閱 上游 Golang 文件

變數名稱值
HTTP_PROXYhttp://<PROXY_IP>:8888
HTTPS_PROXYhttp://<PROXY_IP>:8888
NO_PROXY127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,.svc,.cluster.local

在 Rancher UI 中設定環境變數​

要將環境變數新增到現有叢集:

  1. 點擊 ☰ > Cluster Management。
  2. 前往你想要新增環境變數的叢集,然後點擊 ⋮ > Edit Config。
  3. 在 Cluster configuration 下點擊 Agent Environment Vars。
  4. 點擊 Add。
  5. 輸入所需的環境變數
  6. 點擊 Save。

結果: Fleet agent 在代理後方工作。

在私有節點上設定環境變數​

對於私有節點和私有叢集,代理環境變數需要在節點本身上設定,並且從 Rancher UI 配置。

此範例顯示如何在 K3s Kubernetes 叢集中的 Ubuntu 節點上設定環境變數:

ssh -o ForwardAgent=yes ubuntu@<public_proxy_ip>
ssh <k3s_ip>
export proxy_private_ip=<private_proxy_ip>
export HTTP_PROXY=http://${proxy_private_ip}:8888
export HTTPS_PROXY=http://${proxy_private_ip}:8888
export NO_PROXY=127.0.0.0/8,10.0.0.0/8,172.16.0.0/12,192.168.0.0/16,.svc,.cluster.local
export KUBECONFIG=/etc/rancher/k3s/k3s.yaml