TKG 延伸需要 TLS 憑證。您可以安裝 cert-manager 來滿足此必要條件,或者可以使用您自己的自我簽署憑證。也支援來自 CA 的憑證。

關於將您自己的 TLS 憑證用於 TKG 延伸

安裝 cert-manager 已記錄在每個 TKG 延伸的部署程序中。或者,您可以使用自己的 TLS 憑證。
備註: 此工作假設您使用已安裝 OpenSSL 的 Linux 主機。

產生憑證授權機構憑證

在生產環境中,您應從 CA 取得憑證。在開發或測試環境中,您可以產生自己的自我簽署憑證。若要產生 CA 憑證,請完成下列指示。
  1. 產生 CA 憑證私密金鑰。
    openssl genrsa -out ca.key 4096
  2. 產生 CA 憑證。
    將以下命令用作範本。根據您的環境更新 -subj 選項中的值。如果您使用 FQDN 來連線 TKG 延伸主機,則必須指定此 FQDN 為一般名稱 (CN) 屬性。
    openssl req -x509 -new -nodes -sha512 -days 3650 \
     -subj "/C=US/ST=PA/L=PA/O=example/OU=Personal/CN=tkg-extensions.system.tanzu" \
     -key ca.key \
     -out ca.crt
    

產生伺服器憑證

憑證通常包含 .crt 檔案和 .key 檔案,例如, tls.crttls.key
  1. 產生私密金鑰。
    openssl genrsa -out tls.key 4096
  2. 產生憑證簽署要求 (CSR)。
    將以下命令用作範本。根據您的環境更新 -subj 選項中的值。如果您使用 FQDN 來連線 TKG 延伸主機,則必須指定此 FQDN 為一般名稱 (CN) 屬性,並在金鑰和 CSR 檔案名稱中使用 FQDN。
    openssl req -sha512 -new \
        -subj "/C=US/ST=PA/L=PA/O=example/OU=Personal/CN=tkg-extensions.system.tanzu" \
        -key tls.key \
        -out tls.csr
    
  3. 產生 x509 v3 延伸檔案。

    將以下命令用作範本。建立此檔案,以便針對符合主體別名 (SAN) 和 x509 v3 延伸需求的 TKG 延伸主機產生憑證。

    cat > v3.ext <<-EOF
    authorityKeyIdentifier=keyid,issuer
    basicConstraints=CA:FALSE
    keyUsage = digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment
    extendedKeyUsage = serverAuth
    subjectAltName = @alt_names
    
    [alt_names]
    DNS.1=tkg-extensions.system.tanzu
    EOF
    
  4. 使用 x509 v3 延伸檔案產生 TKG 延伸主機的憑證
    openssl x509 -req -sha512 -days 3650 \
    -extfile v3.ext \
    -CA ca.crt -CAkey ca.key -CAcreateserial \
    -in tls.csr \
    -out tls.crt
    
  5. 使用下列格式將檔案 ca.crttls.crttls.key 的內容複製到 TKG-EXTENSION-data-values.yaml 檔案中。
    ingress:
      tlsCertificate:
        tls.crt: |
            -----BEGIN ...
    
  6. 請根據記錄繼續部署支援的 TKG 延伸。