Puede personalizar servicio Tanzu Kubernetes Grid con ajustes globales de funciones clave, como la interfaz de redes de contenedor (Container Network Interface, CNI), el servidor proxy y los certificados TLS. Tenga presentes las consideraciones y las concesiones necesarias al implementar la funcionalidad global frente a la funcionalidad por clúster.
De forma opcional, puede configurar servicio Tanzu Kubernetes Grid con parámetros globales.
TkgServiceConfiguration
se aplicará a todos los clústeres de
Tanzu Kubernetes aprovisionados por ese servicio. Si se inicia una actualización gradual, ya sea de forma manual o mediante actualización, los clústeres se actualizan según la especificación de servicio modificada.
Especificación TkgServiceConfiguration
TkgServiceConfiguration
proporciona campos para configurar la instancia de
servicio Tanzu Kubernetes Grid.
apiVersion: run.tanzu.vmware.com/v1alpha1 kind: TkgServiceConfiguration metadata: name: tkg-service-configuration-example spec: defaultCNI: <antrea or calico> proxy: httpProxy: http://<user>:<pwd>@<ip>:<port> httpsProxy: http://<user>:<pwd>@<ip>:<port> noProxy: [<array of CIDRs to not proxy>] trust: additionalTrustedCAs: - name: <first-cert-name> data: <base64-encoded string of a PEM encoded public cert 1> - name: <second-cert-name> data: <base64-encoded string of a PEM encoded public cert 2>
Parámetros de la especificación TcardServiceConfiguration
TkgServiceConfiguration
. Para ver ejemplos, consulte
Ejemplos de configuración de la API de servicio Tanzu Kubernetes Grid v1alpha1.
Campo | Valor | Descripción |
---|---|---|
defaultCNI |
antrea or calico |
CNI predeterminada para que utilicen los clústeres. El valor predeterminado es antrea . La otra CNI admitida es calico . |
proxy |
Marcador de sección para los parámetros de proxy . |
Los parámetros de proxy son httpProxy , httpsProxy y noProxy . Todos los parámetros son obligatorios. Si falta algún parámetro de proxy , no podrá crear clústeres de Tanzu Kubernetes. |
httpProxy |
URI con el formato http://<user>:<pwd>@<ip>:<port> |
No permite el protocolo https . Si se utiliza https , no se podrán crear clústeres de Tanzu Kubernetes. |
httpsProxy |
URI con el formato http://<user>:<pwd>@<ip>:<port> |
No permite el protocolo https . Si se utiliza https , no se podrán crear clústeres de Tanzu Kubernetes. |
noProxy |
Matriz de bloques CIDR que no utilizarán proxy, por ejemplo: Obtenga los valores necesarios de la red de carga de trabajo en el clúster supervisor: Consulte la imagen a continuación para ver los valores que se deben incluir en el campo de matriz |
No debe utilizar proxy con las subredes utilizadas por la red de carga de trabajo en el clúster supervisor para pods, entrada y salida. No es necesario incluir el CIDR de servicios del clúster supervisor en el campo Los endpoints Los CIDR de pod y de servicio para los clústeres de Tanzu Kubernetes no se usan como proxy automáticamente. No es necesario que los agregue al campo |
trust |
Marcador de sección para los parámetros de trust . |
No acepta datos. |
additionalTrustedCAs |
Acepta una matriz de certificados con name y data para cada uno. |
No acepta datos. |
name |
Cadena | El nombre del certificado de TLS. |
data |
Cadena | La cadena codificada en base64 de un certificado público con codificación PEM. |
Obtenga los valores de noProxy
requeridos de la red de carga de trabajo del clúster supervisor como se muestra en la imagen.
Cuándo utilizar las opciones de configuración globales o por clúster
TkgServiceConfiguration
es una especificación global que afecta a todos los clústeres de Tanzu Kubernetes aprovisionados por la instancia de servicio Tanzu Kubernetes Grid.
TkgServiceConfiguration
, tenga en cuenta las alternativas por clúster que pueden satisfacer su caso práctico, en lugar de una configuración global.
Configuración | Opción global | Opción por clúster |
---|---|---|
CNI predeterminada | Edite la especificación TkgServiceConfiguration . Consulte Ejemplos de configuración de la API de servicio Tanzu Kubernetes Grid v1alpha1. |
Especifique la CNI en la especificación del clúster. Por ejemplo, Antrea es la CNI predeterminada. Para usar Calico, especifíquelo en el YAML del clúster. Consulte Ejemplos del aprovisionamiento de clústeres de Tanzu Kubernetes mediante la API de servicio Tanzu Kubernetes Grid v1alpha1. |
Servidor proxy | Edite la especificación TkgServiceConfiguration . Consulte Ejemplos de configuración de la API de servicio Tanzu Kubernetes Grid v1alpha1. |
Incluya los parámetros de configuración del servidor proxy en la especificación del clúster. Consulte Ejemplos del aprovisionamiento de clústeres de Tanzu Kubernetes mediante la API de servicio Tanzu Kubernetes Grid v1alpha1. |
Certificados de confianza | Edite la especificación TkgServiceConfiguration . Existen dos casos de uso: configurar un registro de contenedor externo y una configuración de proxy basada en certificados. Consulte Ejemplos de configuración de la API de servicio Tanzu Kubernetes Grid v1alpha1. |
Sí, puede incluir certificados personalizados por clúster o anular la configuración de trust establecida globalmente en la especificación del clúster. Consulte Ejemplos del aprovisionamiento de clústeres de Tanzu Kubernetes mediante la API de servicio Tanzu Kubernetes Grid v1alpha1. |
TkgServiceConfiguration
, esa información de proxy se propaga al manifiesto del clúster después de la implementación inicial del clúster. La configuración global del proxy se agrega al manifiesto del clúster solo si no hay ningún campo de configuración de proxy presente cuando se crea el clúster. En otras palabras, la configuración por clúster tiene prioridad y sobrescribirá la configuración global del proxy. Para obtener más información, consulte
Parámetros de configuración para la API v1alpha1 de servicio Tanzu Kubernetes Grid.
Antes de editar la especificación TkgServiceConfiguration
, tenga en cuenta las ramificaciones de aplicar la configuración a nivel global.
Campo | Se aplica | Impacto en los clústeres existentes si se agrega o se cambia | Anulación por clúster al crear un clúster | Anulación por clúster al actualizar un clúster |
---|---|---|---|---|
defaultCNI |
Globalmente | Ninguno | Sí, puede anular la configuración global al crear el clúster | No, no puede cambiar la CNI de un clúster existente. Si utilizó la CNI predeterminada configurada globalmente al crear el clúster, no puede cambiarla |
proxy |
Globalmente | Ninguno | Sí, puede anular la configuración global al crear el clúster | Sí, con U2+ puede anular la configuración global al actualizar el clúster |
trust |
Globalmente | Ninguno | Sí, puede anular la configuración global al crear el clúster | Sí, con U2+ puede anular la configuración global al actualizar el clúster |
Propagar cambios de configuración global a clústeres existentes
La configuración realizada a nivel global en TkgServiceConfiguration
no se propaga automáticamente a los clústeres existentes. Por ejemplo, si realiza cambios en la configuración de proxy
o trust
en TkgServiceConfiguration
, dichos cambios no afectarán a los clústeres que ya están aprovisionados.
Para propagar un cambio global a un clúster existente, debe aplicar una revisión al clúster de Tanzu Kubernetes para que herede los cambios realizados en TkgServiceConfiguration
.
kubectl patch tkc <CLUSTER_NAME> -n <NAMESPACE> --type merge -p "{\"spec\":{\"settings\":{\"network\":{\"proxy\": null}}}}"
kubectl patch tkc <CLUSTER_NAME> -n <NAMESPACE> --type merge -p "{\"spec\":{\"settings\":{\"network\":{\"trust\": null}}}}"