bootstrap-config.yaml 檔案中,輸入必要引數的值,這些引數是將 Antrea Kubernetes 叢集登錄至 NSX 中所需要的。

如果 Kubernetes 叢集中的 VMware Container Networking™ with Antrea™ 版本為 1.7.0 或更早版本,請遵循本說明文件中的指示,手動編輯 antrea-interworking.zip 檔案中提供的 bootstrap-config.yaml 檔案。

如果 Kubernetes 叢集中的 VMware Container Networking™ with Antrea™ 版本為 1.8.0 或更新版本,則可以略過本說明文件。請遵循 向 NSX 登錄 Antrea Kubernetes 叢集的必要條件 說明文件的工作 6 中的指示,為叢集建立啟動程序組態。

必要條件
請確定您已完成將 Antrea Kubernetes 叢集登錄至 NSX 的必要工作。請參閱 向 NSX 登錄 Antrea Kubernetes 叢集的必要條件
啟動程序組態檔案

解壓縮 antrea-interworking-version.zip 檔案時,您會取得 bootstrap-config.yaml 檔案,其中包含一些預留位置註解,可協助您在這個檔案中填寫引數。

apiVersion: v1
kind: Namespace
metadata:
  name: vmware-system-antrea
  labels:
    app: antrea-interworking
    openshift.io/run-level: '0'
---
# NOTE: In production the bootstrap config and secret should be filled by admin
# manually or external automation mechanism.
apiVersion: v1
kind: ConfigMap
metadata:
  name: bootstrap-config
  namespace: vmware-system-antrea
data:
  bootstrap.conf: |
    # Fill in the cluster name. It should be unique across all clusters managed by NSX.
    clusterName: Name
    # Fill in the NSX manager IPs. If there are multiple IPs, separate them with commas.
    NSXManagers: [IP1, IP2, IP3]
    # vhcPath is deprecated and ignored. It is replaced by vpcPath.
    vhcPath: ""
    # vpcPath is supported only in Antrea-NSX interworking image v0.7 or later.
    vpcPath: ""
---
apiVersion: v1
kind: Secret
metadata:
  name: nsx-cert
  namespace: vmware-system-antrea
type: kubernetes.io/tls
data:
  # One line base64 encoded data. Can be generated by command: cat tls.crt | base64 -w 0
  tls.crt:
  # One line base64 encoded data. Can be generated by command: cat tls.key | base64 -w 0
  tls.key:
指定必要引數的值

您要登錄至 NSX 中的每一個 Kubernetes 叢集,都需要有個別的 bootstrap-config.yaml 檔案。請在此檔案中指定下列必要引數的值。

clusterName

輸入 Antrea Kubernetes 叢集的唯一名稱。對於登錄至 NSX 中的所有 Kubernetes 叢集,該名稱必須是唯一的。例如,cluster-sales

NSXManagers

輸入 NSX Manager IP 位址。若要指定 NSX Manager 叢集中多個 NSX Manager 節點的 IP 位址,請以逗號來分隔這些 IP 位址。

備註: 您可以將一個 Antrea Kubernetes 叢集登錄至單一 NSX Manager 叢集中。單一叢集可以有一到三個 NSX Manager 節點。

例如,如果 NSX Manager 叢集有三個 NSX Manager 節點,請以 [192.168.1.1, 192.168.1.2, 192.168.1.3] 形式來輸入組態。如果叢集有單一 NSX Manager 節點,請以 [192.168.1.1] 形式來輸入組態。

建議您避免在此引數中新增 NSX Manager 虛擬 IP (VIP),因為 Antrea NSX 介面卡 需要直接連線至所有 NSX Manager。

tls.crt

tls.crt 是自我簽署憑證,用來在 NSX 中建立主體身分識別使用者。

針對 Kubernetes 叢集,以單行形式輸入 TLS 憑證的 Base64 編碼資料。

例如,若要將 cluster-sales.crt 憑證檔的編碼資料列印在終端機上,請在 Linux CLI 中執行以下命令:

cat cluster-sales.crt | base64 -w 0
tls.key

針對 Kubernetes 叢集,以單行形式輸入私密金鑰檔的 Base64 編碼資料。

例如,若要將 cluster-sales-private.key 檔案的編碼資料列印在終端機上,請在 Linux CLI 中執行以下命令:

cat cluster-sales-private.key | base64 -w 0

tls.key 不會傳送至 NSX管理平面介面卡中央控制平面介面卡會使用此金鑰,來證明其擁有主體身分識別使用者。

備註: vhcPath 引數已過時且會忽略,而改為支援 vpcPath 引數。但是,僅在 Antrea-NSX Interworking 映像 v0.7 或更新版本 (隨附於 VMware Container Networking™ with Antrea™ v1.5.0) 中才支援 vpcPath 引數。舊版 Antrea-NSX Interworking 映像不支援 vpcPath 引數。

範例: 啟動程序組態檔案

apiVersion: v1
kind: Namespace
metadata:
  name: vmware-system-antrea
  labels:
    app: antrea-interworking
    openshift.io/run-level: '0'
---
# NOTE: In production the bootstrap config and secret should be filled by admin
# manually or external automation mechanism.
apiVersion: v1
kind: ConfigMap
metadata:
  name: bootstrap-config
  namespace: vmware-system-antrea
data:
  bootstrap.conf: |
    clusterName: cluster-sales
    NSXManagers: [10.196.239.128, 10.196.239.129]
    vpcPath: ""
---
apiVersion: v1
kind: Secret
metadata:
  name: nsx-cert
  namespace: vmware-system-antrea
type: kubernetes.io/tls
data:
  tls.crt: LS0tLS1CRUd…LS0tLS0K
  tls.key: LS0tLS1CRUd…S0tLS0tCg==

下一步

bootstrap-config.yaml 檔案和 interworking.yaml 部署資訊清單檔案提交至 Kubernetes API 伺服器,以便將 Antrea Kubernetes 叢集登錄至 NSX