Consulte los ejemplos para personalizar servicio Tanzu Kubernetes Grid con opciones de configuración global para la interfaz de redes de contenedor (Container Network Interface, CNI), el servidor proxy y los certificados TLS.
Acerca de la configuración de servicio Tanzu Kubernetes Grid
Requisito previo: Configurar la edición de Kubectl
Para escalar un clúster de Tanzu Kubernetes, actualice el manifiesto del clúster mediante el comando kubectl edit tanzukubernetescluster/CLUSTER-NAME
. El comando kubectl edit abre el manifiesto del clúster en el editor de texto definido por las variables de entorno KUBE_EDITOR o EDITOR. Para obtener instrucciones sobre cómo configurar la variable de entorno, consulte Especificar un editor de texto predeterminado para Kubectl.
Al guardar los cambios en la especificación, kubectl
informa de que las ediciones se registraron correctamente. Para cancelar, simplemente cierre el editor sin guardar.
Configurar la CNI predeterminada
servicio Tanzu Kubernetes Grid proporciona una interfaz de redes de contenedor (Container Network Interface, CNI) predeterminada para los clústeres de Tanzu Kubernetes. La configuración predeterminada permite crear clústeres sin que para ello sea necesario especificar la CNI. Para cambiar el valor de CNI predeterminado, edite la especificación del servicio.
servicio Tanzu Kubernetes Grid admite dos CNI: Antrea y Calico, de las cuales Antrea es la predeterminada. Para obtener más información, consulte Redes de clústeres de servicio Tanzu Kubernetes Grid.
- Realice la autenticación con clúster supervisor.
kubectl vsphere login --server=SVC-IP-ADDRESS --vsphere-username USERNAME
- Cambie el contexto al espacio de nombres de vSphere de destino.
kubectl config use-context tkgs-cluster-ns
- Indique la CNI predeterminada.
kubectl get tkgserviceconfigurations
Resultado de ejemplo:NAME DEFAULT CNI tkg-service-configuration antrea
- Cargue para editar la especificación de servicio Tanzu Kubernetes Grid.
kubectl edit tkgserviceconfigurations tkg-service-configuration
El sistema abre la especificación
tkg-service-configuration
en el editor de texto predeterminado que definen las variables de entorno KUBE_EDITOR o EDITOR. - Edite el valor de
spec.defaultCNI
.Por ejemplo, cambie desde:spec: defaultCNI: antrea
Cambie a:spec: defaultCNI: calico
- Para aplicar los cambios, guarde el archivo en el editor de texto. Para cancelar, cierre el editor sin guardar.
Al guardar el cambio en el editor de texto, kubectl actualiza la especificación de servicio de
tkg-service-configuration
. - Compruebe que se haya actualizado la CNI predeterminada.
kubectl get tkgserviceconfigurations
Se actualiza la CNI predeterminada. Cualquier clúster aprovisionado con la configuración de red predeterminada utiliza la CNI predeterminada.NAME DEFAULT CNI tkg-service-configuration calico
Configurar un servidor proxy global
TkgServiceConfiguration
. Si desea ver una descripción de los campos requeridos, consulte
Parámetros de configuración para la API v1alpha1 de servicio Tanzu Kubernetes Grid.
- Realice la autenticación con clúster supervisor.
kubectl vsphere login --server=SVC-IP-ADDRESS --vsphere-username USERNAME
- Cambie el contexto al espacio de nombres de vSphere de destino.
kubectl config use-context tkgs-cluster-ns
- Obtener la configuración actual.
kubectl get tkgserviceconfigurations
Resultado de ejemplo:NAME DEFAULT CNI tkg-service-configuration antrea
- Cargue para editar la especificación de servicio Tanzu Kubernetes Grid.
kubectl edit tkgserviceconfigurations tkg-service-configuration
El sistema abre la especificación
tkg-service-configuration
en el editor de texto predeterminado que definen las variables de entorno KUBE_EDITOR o EDITOR. - Agregue la subsección
spec.proxy
con cada campo que se pide, incluidoshttpProxy
,httpsProxy
ynoProxy
.apiVersion: run.tanzu.vmware.com/v1alpha1 kind: TkgServiceConfiguration metadata: ... name: tkg-service-configuration-example resourceVersion: "44170525" selfLink: /apis/run.tanzu.vmware.com/v1alpha1/tkgserviceconfigurations/tkg-service-configuration uid: 10347195-5f0f-490e-8ae1-a758a724c0bc spec: defaultCNI: antrea proxy: httpProxy: http://<user>:<pwd>@<ip>:<port> httpsProxy: http://<user>:<pwd>@<ip>:<port> noProxy: [SVC-POD-CIDRs, SVC-EGRESS-CIDRs, SVC-INGRESS-CIDRs]
- Rellene cada campo de proxy con los valores adecuados. Si desea ver una descripción de cada campo, consulte Parámetros de configuración para la API v1alpha1 de servicio Tanzu Kubernetes Grid.
Los valores requeridos para el campo
noProxy
provienen de la Red de cargas de trabajo del clúster supervisor. Consulte la imagen en el tema anterior sobre dónde obtener estos valores.Por ejemplo:apiVersion: run.tanzu.vmware.com/v1alpha1 kind: TkgServiceConfiguration metadata: ... name: tkg-service-configuration-example resourceVersion: "44170525" selfLink: /apis/run.tanzu.vmware.com/v1alpha1/tkgserviceconfigurations/tkg-service-configuration uid: 10347195-5f0f-490e-8ae1-a758a724c0bc spec: defaultCNI: antrea proxy: httpProxy: http://user:[email protected]:3128 httpsProxy: http://user:[email protected]:3128 noProxy: [10.246.0.0/16,192.168.144.0/20,192.168.128.0/20]
- Para aplicar los cambios, guarde el archivo en el editor de texto. Para cancelar, cierre el editor sin guardar.
Al guardar los cambios en el editor de texto, kubectl actualiza servicio Tanzu Kubernetes Grid con la configuración definida en la especificación de servicio de
tkg-service-configuration
. - Compruebe que el servicio Tanzu Kubernetes Grid se haya actualizado con la configuración del proxy.
kubectl get tkgserviceconfigurations -o yaml
- Para comprobarlo, aprovisione el clúster Tanzu Kubernetes. Consulte Flujo de trabajo para aprovisionar clústeres de Tanzu Kubernetes mediante la API v1alpha2 de TKGS.
Utilice el siguiente comando para confirmar que el clúster está utilizando el proxy.
kubectl get tkc CLUSTER-NAME -n NAMESPACE -o yaml
Configuración de un proxy basado en certificados
El uso de un servidor proxy para enrutar el tráfico de Internet es un requisito estricto en algunos entornos. Por ejemplo, una empresa de un sector con muchas regulaciones, como una entidad financiera, requiere que todo el tráfico de Internet pase por un proxy corporativo.
Puede configurar servicio Tanzu Kubernetes Grid para aprovisionar clústeres de Tanzu Kubernetes para que utilicen un servidor proxy para el tráfico HTTP/S saliente. Para obtener más información, consulte Parámetros de configuración para la API v1alpha1 de servicio Tanzu Kubernetes Grid.
TkgServiceConfiguration
.
apiVersion: run.tanzu.vmware.com/v1alpha1 kind: TkgServiceConfiguration metadata: name: tkg-service-configuration-example spec: defaultCNI: antrea proxy: httpProxy: http://user:[email protected]:3128 httpsProxy: http://user:[email protected]:3128 noProxy: [10.246.0.0/16,192.168.144.0/20,192.168.128.0/20] 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
Configuración del registro privado externo
apiVersion: run.tanzu.vmware.com/v1alpha1 kind: TkgServiceConfiguration metadata: name: tkg-service-configuration-example spec: defaultCNI: antrea trust: additionalTrustedCAs: - name: harbor-vm-cert data: <<<base64-encoded string of a PEM encoded public cert>>>>