Extensões TKG exigem certificados TLS. Você pode instalar o cert-manager para satisfazer esse pré-requisito ou pode usar seus próprios certificados autoassinados. Também há suporte para certificados de uma autoridade de certificação.
Sobre como usar seus próprios certificados TLS com extensões TKG
A instalação do cert-manager é documentada como parte do processo de implantação para cada extensão TKG. Como alternativa, você pode usar seus próprios certificados TLS.
Observação: Esta tarefa pressupõe que você esteja usando um host Linux com OpenSSL instalado.
Gerar um certificado de autoridade de certificação
Em um ambiente de produção, você deve obter um certificado de uma autoridade de certificação. Em um ambiente de desenvolvimento ou teste, você pode gerar seu próprio certificado autoassinado. Para gerar um certificado de autoridade de certificação, siga as instruções a seguir.
- Gere uma chave privada de certificado de CA.
openssl genrsa -out ca.key 4096
- Gere o certificado CA.
Use o seguinte comando como modelo. Atualize os valores na opção
-subj
com base no seu ambiente. Se você usar um FQDN para conectar seu host de Extensões TKG, deverá especificar esse FQDN como o atributo de nome comum (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
Gerar um certificado de servidor
O certificado geralmente contém um arquivo .crt e um arquivo .key, por exemplo,
tls.crt
e
tls.key
.
- Gere uma chave privada.
openssl genrsa -out tls.key 4096
- Gere uma solicitação de assinatura de certificado (CSR).
Use o seguinte comando como modelo. Atualize os valores na opção
-subj
com base no seu ambiente. Se você usar um FQDN para conectar seu host de Extensões TKG, deverá especificar esse FQDN como o atributo de nome comum (CN) e usar o FQDN nos nomes de arquivo de chave e CSR.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
- Gere um arquivo de extensão x509 v3.
Use o seguinte comando como modelo. Crie esse arquivo para que você possa gerar um certificado para o seu host de extensões TKG que esteja em conformidade com os requisitos de SAN (Subject Alternative Name) e de extensão x509 v3.
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
- Use o arquivo de extensão x509 v3 para gerar um certificado para o host de extensões TKG
openssl x509 -req -sha512 -days 3650 \ -extfile v3.ext \ -CA ca.crt -CAkey ca.key -CAcreateserial \ -in tls.csr \ -out tls.crt
- Copie o conteúdo dos arquivos
ca.crt
,tls.crt
etls.key
no arquivoTKG-EXTENSION-data-values.yaml
usando o seguinte formato.ingress: tlsCertificate: tls.crt: | -----BEGIN ...
- Prossiga com a implantação de uma extensão TKG compatível, conforme documentado.