您可以在未連線到網際網路的環境中,部署 Tanzu Kubernetes Grid 管理叢集和工作負載叢集,例如:
本主題說明如何將管理叢集部署到 vSphere 或 AWS 上的網際網路受限環境。如果您是在可以透過外部網際網路連線來提取映像的連線環境中使用 Tanzu Kubernetes Grid,則無需進行這些程序。
附註本檔提供在氣隙環境中部署Tanzu Kubernetes Grid管理和工作負載叢集的一般步驟。要在氣隙環境中使用驗證的特定組態部署管理和工作負載叢集,請參閱《VMware Tanzu Kubernetes Grid 2.3 氣隙參考設計和部署》。TKG v2.3 參考設計同時適用于 TKG v2.3 和 v2.4。
若要進行此程序,您可以在線上和離線環境中,使用單一機器或不同機器作為啟動機器。
若您要安裝 Harbor 登錄,請下載 Harbor OVA 檔案:
將管理叢集和工作負載叢集部署在網際網路受限的環境之前,您必須具有:
TKG_*_PROXY
變數設定為 Proxy 伺服器的位址,並將 TKG_PROXY_CA_CERT
設定為 Proxy 伺服器的 CA (如果其憑證是自我簽署的話)。請參閱設定 Proxy。附註Vmware 不支援在代理或氣隙環境中具有 Windows Worker 節點的 TKG 工作負載叢集。
本檔提供在氣隙環境中的 vSphere 網路上部署 Tanzu Kubernetes Grid 管理和工作負載叢集的一般步驟。如要在氣隙環境中的 vSphere 網路上以驗證的特定組態部署叢集,請參閱《VMware Tanzu Kubernetes Grid 2.3 氣隙參考設計和部署》文件中的 VMware Tanzu Kubernetes Grid on vSphere 氣隙參考設計和在氣隙環境中的 vSphere 網路連接上部署 Tanzu Kubernetes Grid。TKG v2.3 參考設計同時適用于 TKG v2.3 和 v2.4。
在 vSphere 上,網際網路受限的 Tanzu Kubernetes Grid 安裝架構具有防火牆,且主要元件之間能夠通訊,如下所示。
附註下圖說明在線上和離線環境中使用不同啟動機器的案例。
在 vSphere 上,除了上述一般必要條件外,您還必須:
將藉以建立節點虛擬機器的 OVA 上傳至 vSphere。請參閱〈將管理叢集部署到 vSphere〉中的將基礎映像範本匯入到 vSphere。
建立虛擬機器後,如果您無法使用預設使用者名稱/密碼來登入,若為 Photon OS,則可依照重設遺失的 Root 密碼中所述,使用 Gnu GRUB 來重設密碼。
以 Root 使用者身分登入 Jumpbox,然後啟用遠端 SSH,如下所示:
PermitRootLogin yes
。在本例中,該行已存在,請移除「#」。service sshd restart
,重新啟動 SSH 伺服器安裝及設定與 Docker 相容的私人容器登錄,例如 Harbor、Docker 或 Artifactory,如下所示。此登錄是在 Tanzu Kubernetes Grid 外部執行,並且有別於任何部署為叢集共用服務的登錄:
設定離線子網路,以作為網際網路受限的環境,並將其與 Jumpbox 相關聯。
設定 DHCP 伺服器,以將私人 IP 配置給新執行個體。
在資料中心建立 vSphere Distributed Switch,以便從一個中央位置同時處理多台主機的網路組態。
本文件提供在氣隙環境中在 AWS 上部署 Tanzu Kubernetes Grid 管理和工作負載叢集的一般步驟。如要在氣隙環境中的 AWS 上以驗證的特定組態部署叢集,請參閱《VMware Tanzu Kubernetes Grid 2.3 氣隙參考設計和部署》文件中的 VMware Tanzu Kubernetes Grid on AWS 氣隙參考設計和在氣隙環境中的 AWS 上部署 Tanzu Kubernetes Grid。TKG v2.3 參考設計同時適用于 TKG v2.3 和 v2.4。
在 Amazon Web Services (AWS) 上,Tanzu Kubernetes Grid Proxy 安裝架構具有防火牆,且主要元件之間能夠通訊,如下所示。在控制平面網域與工作負載網域之間,以及在工作負載元件與控制平面元件之間,會自動建立安全群組 (SG)。
對於 AWS 上的 Proxy 安裝架構,除了上述一般必要條件外,您還需要:
建立離線 VPC 後,您必須在其中新增以下端點 (VPC 端點可在您的 VPC 與支援的 AWS 服務之間啟用私人連線):
sts
ssm
ec2
ec2messages
elasticloadbalancing
secretsmanager
ssmmessages
若要將服務端點新增到 VPC,請執行以下動作:
若要準備網際網路受限的環境以部署 Tanzu Kubernetes Grid,您可以選擇下列其中一個選項:
用於線上和離線環境的單一啟動機器。
用於線上和離線環境的不同啟動機器。
根據您選取的選項,依照下表中所述的步驟執行:
單一啟動機器 | 不同的啟動機器 | |
---|---|---|
步驟 1:在線上機器上安裝隔離叢集外掛程式 | 是 |
是 |
步驟 2:將 TKG 映像下載到線上機器 | 是 |
是 |
步驟 3:將適用於 Linux 的 Tanzu CLI 二進位映像下載到線上機器 | 否 |
是 |
步驟 4:將 CLI 外掛程式服務包下載至線上機器 | 否 |
是 |
步驟 5:將檔案複製到離線機器 | 否 |
是 |
步驟 6:解壓縮離線機器上的檔案 | 否 |
是 |
步驟 7:登入離線機器上的私人登錄 | 是 |
是 |
步驟 8:將 Tanzu CLI 安裝在離線機器上 | 否 |
是 |
步驟 9:在離線機器上安裝 CLI 外掛程式服務包 | 是 |
是 |
步驟 10:將 TKG 映像上傳至私人登錄 | 是 |
是 |
如要安裝 isolated-cluster
外掛程式:
按照《VMware Tanzu CLI 說明文件》的安裝 Tanzu CLI 外掛程式中說明的安裝單一外掛程式程序,安裝 isolated-cluster
外掛程式。
確保 isolated-cluster
外掛程式的版本編號與核心 Tanzu CLI 的版本編號相容:
執行 tanzu plugin list
以查看 Tanzu CLI 外掛程式的版本編號。
請參閱《關於Tanzu Kubernetes Grid》中的 TKG 和 Tanzu CLI 外掛程式版本以確認 isolated-cluster
外掛程式版本與 TKG v2.4 相容。
tanzu version
列出的核心 Tanzu CLI 版本應與 TKG 版本資訊產品快照中列出的 TKG v2.4 Tanzu CLI 版本相符。如果 isolated-cluster
外掛程式版本與 TKG 版本不相符,請按照升級 Tanzu Kubernetes Grid 下所述升級 TKG。
重要執行此步驟之前,請確定下載映像所在的磁碟分割具有 45 GB 可用空間。
在具有網際網路連線的 Linux 啟動機器上,下載映像服務包:
tanzu isolated-cluster download-bundle --source-repo <SOURCE-REGISTRY> --tkg-version <TKG-VERSION> --ca-certificate <SECURITY-CERTIFICATE>
其中:
SOURCE-REGISTRY
是映像儲存所在的登錄的 IP 位址或主機名稱。TKG-VERSION
是您要部署在 Proxy 或氣隙環境中的 Tanzu Kubernetes Grid 版本。SECURITY-CERTIFICATE
是映像儲存所在的登錄的安全性憑證。若要略過安全性憑證的驗證,請使用 --insecure
,而不是 --ca-certificate
。這兩個字串都是選用的。如果未指定任何值,系統會驗證預設伺服器安全性憑證。
範例如下:
tanzu isolated-cluster download-bundle --source-repo projects.registry.vmware.com/tkg --tkg-version v2.4.0
會將 TAR 檔案形式的映像服務包以及 publish-images-fromtar.yaml
檔案下載到線上機器。YAML 檔案會定義映像與 TAR 檔案之間的對應。
將適用於 Linux 的 Tanzu CLI 映像 (ZIP 檔案) 下載到線上機器:
tanzu-cli-linux-amd64.tar.gz
ZIP 檔案下載到本機機器。將 CLI 外掛程式服務包下載至線上機器:
在 Tanzu CLI 中,執行下列命令以下載 CLI 外掛程式服務包:
tanzu plugin download-bundle --group vmware-tkg/default --to-tar /tmp/plugin-bundle.tar.gz
透過 USB 隨身碟或其他儲存媒介,將下列檔案複製到離線機器 (即 Proxy 環境或氣隙環境中的啟動機器):
tanzu-cli-bundle-linux-amd64.tar.gz
ZIP 檔案在離線的啟動載入機器上,將 Tanzu CLI 映像 ZIP 檔案解壓縮到 tanzu
目錄:
tar -xvf tanzu-cli-bundle-linux-amd64.tar.gz -C $HOME/tanzu
透過 Docker,登入離線機器上的私人登錄:
docker login <URL>
其中,URL
是私人存放庫的 URL,其中,映像將儲存在 Proxy 環境或氣隙環境中。
將 Tanzu CLI 安裝在離線機器上:
sudo install tanzu-cli-linux_amd64 /usr/local/bin/tanzu
在離線機器上安裝 CLI 外掛程式服務包。
如果氣隙環境中的私人登錄設定了自我簽署 CA 憑證,請按照為自訂登錄新增憑證組態中的說明新增您的憑證驗證偏好設定。
將 CLI 外掛程式服務包上傳到氣隙環境中的私人存放庫:
tanzu plugin upload-bundle --tar /tmp/plugin-bundle.tar.gz --to-repo PRIVATE-REPO/tanzu_cli/plugins
其中,PRIVATE-REPO
是私人存放庫的 URL,其中,映像將儲存在 Proxy 環境或氣隙環境中。例如,registry.example.com
。
更新 Tanzu CLI 以指向新的外掛程式來源:
tanzu plugin source update default --url PRIVATE-REPO/tanzu_cli/plugins/plugin-inventory:latest
確認外掛程式是否可被探索到:
tanzu plugin search
tanzu plugin group search
安裝 CLI 外掛程式:
tanzu plugin install
將 TKG 映像服務包上傳至私人登錄:
tanzu isolated-cluster upload-bundle --source-directory <SOURCE-DIRECTORY> --destination-repo <DESTINATION-REGISTRY> --ca-certificate <SECURITY-CERTIFICATE>
其中:
SOURCE-DIRECTORY
是映像 TAR 檔案儲存位置的路徑。DESTINATION-REGISTRY
是私人登錄的路徑,其中,映像將託管於氣隙環境中。SECURITY-CERTIFICATE
是私人登錄的安全性憑證,其中,映像將託管於 Proxy 環境或氣隙環境中。若要略過安全性憑證的驗證,請使用 --insecure
,而不是 --ca-certificate
。這兩個字串都是選用的。如果未指定任何值,系統會驗證預設伺服器安全性憑證。範例如下:
tanzu isolated-cluster upload-bundle --source-directory ./ --destination-repo hostname1 --ca-certificate /tmp/registryca.crt
使用下列組態檔參考變數,來設定用來放置您所移動的映像的登錄:
TKG_CUSTOM_IMAGE_REPOSITORY
TKG_CUSTOM_IMAGE_REPOSITORY_CA_CERTIFICATE
或 TKG_CUSTOM_IMAGE_REPOSITORY_SKIP_TLS_VERIFY
。如需有關這些組態變數的詳細資訊,請參閱私人映像登錄組態。
附註您也可以使用
tanzu config set env.CONFIG-VARIABLE
命令,在將來使用 Tanzu CLI 時設定登錄並保留環境變數。如需詳細資訊,請參閱 VMware Tanzu CLI 命令參考中的 tanzu config set。
網際網路受限的環境現在可供您部署或升級 Tanzu Kubernetes Grid 管理叢集,並可開始在 vSphere 或 AWS 上部署工作負載叢集。
要在氣隙環境中使用驗證的特定組態部署管理和工作負載叢集,請參閱《VMware Tanzu Kubernetes Grid 2.3 氣隙參考設計和部署》。TKG v2.3 參考設計同時適用于 TKG v2.3 和 v2.4。
要使用組態檔部署管理叢集,請參閱從組態檔部署管理叢集。
如果您在升級過程中進行了此程序,請參閱升級 Tanzu Kubernetes Grid。