您可以在未連線到網際網路的環境中,部署 Tanzu Kubernetes Grid 管理叢集和工作負載叢集,例如:
本主題說明如何將管理叢集部署到 vSphere 或 AWS 上的網際網路受限環境。如果您是在可以透過外部網際網路連線來提取映像的連線環境中使用 Tanzu Kubernetes Grid,則無需進行這些程序。
附註本檔提供在氣隙環境中部署Tanzu Kubernetes Grid管理和工作負載叢集的一般步驟。要在氣隙環境中使用驗證的特定組態部署管理和工作負載叢集,請參閱 VMware Tanzu 參考架構說明文件。
若要進行此程序,您可以在線上和離線環境中,使用單一機器或不同機器作為啟動機器。
若您要安裝 Harbor 登錄,請下載 Harbor OVA 檔案:
將管理叢集和工作負載叢集部署在網際網路受限的環境之前,您必須具有:
TKG_*_PROXY
變數設定為 Proxy 伺服器的位址,並將 TKG_PROXY_CA_CERT
設定為 Proxy 伺服器的 CA (如果其憑證是自我簽署的話)。請參閱設定 Proxy。本檔提供在氣隙環境中的 vSphere 網路上部署 Tanzu Kubernetes Grid 管理和工作負載叢集的一般步驟。如要在氣隙環境中的 vSphere 網路上部署已驗證特定組態中的叢集,請參閱《VMware Tanzu Kubernetes Grid 2.1 氣隙參考設計和部署》文件中的氣隙參考設計中 Sphere 網路上的 VMware Tanzu Kubernetes Grid 和在氣隙環境中的 vSphere 網路上部署 Tanzu Kubernetes Grid。
在 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.1 氣隙參考設計和部署》文件中的 VMware Tanzu Kubernetes Grid on AWS 氣隙參考設計和在氣隙環境中的 AWS 上部署 Tanzu Kubernetes Grid。
在 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:將映像下載到線上機器 | 是 |
是 |
步驟 3:將適用於 Linux 的 Tanzu CLI 映像下載到線上機器 | 否 |
是 |
步驟 4:將檔案複製到離線機器 | 否 |
是 |
步驟 5:解壓縮離線機器上的檔案 | 否 |
是 |
步驟 6:將隔離的叢集外掛程式安裝在離線機器上 | 否 |
是 |
步驟 7:登入離線機器上的私人登錄 | 是 |
是 |
步驟 8:將映像上傳至私人登錄 | 是 |
是 |
僅當您尚未透過在線上機器上執行 tanzu plugin sync
命令來安裝 isolated-cluster
外掛程式時,才需遵循此步驟。
安裝 isolated-cluster
外掛程式:
tanzu plugin sync
重要執行此步驟之前,請確定下載映像所在的磁碟分割具有 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.1.1
會將 TAR 檔案形式的映像服務包以及 publish-images-fromtar.yaml
檔案下載到線上機器。YAML 檔案會定義映像與 TAR 檔案之間的對應。
將適用於 Linux 的 Tanzu CLI 映像 (ZIP 檔案) 下載到線上機器:
在產品下載 (Product Downloads) 下,捲動到標有 VMware Tanzu CLI 2.1 CLI 的區段,然後找出適用於 Linux 的 VMware Tanzu CLI (VMware Tanzu CLI for Linux)。
按一下立即下載 (Download Now)。會將 tanzu-cli-bundle-linux-amd64.tar.gz
ZIP 檔案下載到本機機器。
(選用) 驗證所下載的檔案與原始檔案相同。對於每一次的下載,VMware 都會提供 SHA-1、SHA-256 和 MD5 總和檢查。若想取得這些總和檢查,請按一下您要下載的項目下的閱讀更多 (Read More)。如需詳細資訊,請參閱使用密碼編譯雜湊。
透過 USB 隨身碟或其他儲存媒介,將下列檔案複製到離線機器 (即 Proxy 環境或氣隙環境中的啟動機器):
tanzu-cli-bundle-linux-amd64.tar.gz
ZIP 檔案在離線的啟動機器上,將 TAR 檔案解壓縮到 tanzu
目錄:
tar -xvf tanzu-cli-bundle-linux-amd64.tar.gz -C $HOME/tanzu
cd $HOME/tanzu/cli
sudo install core/v0.28.1/tanzu-core-linux_amd64 /usr/local/bin/tanzu
tar -xvf tanzu-framework-plugins-standalone-linux-amd64.tar.gz
將 isolated-cluster
外掛程式安裝在離線啟動機器上:
tanzu plugin install isolated-cluster --local standalone-plugins/
透過 Docker,登入離線機器上的私人登錄:
docker login <URL>
其中,URL
是私人存放庫的 URL,其中,映像將儲存在 Proxy 環境或氣隙環境中。
將映像服務包上傳至離線機器:
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 參考架構說明文件。
要使用組態檔部署管理叢集,請參閱從組態檔部署管理叢集。
如果您在升級過程中進行了此程序,請參閱升級 Tanzu Kubernetes Grid。
如果需要在網際網路受限的環境中部署支援 FIPS 的 Tanzu Kubernetes Grid 版本,請按照支援 FIPS 的版本中所述進行操作。