Reportez-vous à ces instructions pour installer des modules standards sur un cluster TKG provisionné avec une TKr pour vSphere 7.x.
Conditions requises
Reportez-vous à la section Workflow d'installation de modules standard sur TKr pour vSphere 7.x.
Installer Contour avec Envoy
Installez l'entrée Contour avec le service Envoy.
- Répertoriez les versions de Contour disponibles dans le référentiel.
kubectl get packages -n tkg-system | grep contour
- Créez la spécification
contour.yaml
.Reportez-vous à la section #GUID-ED287018-E690-4993-9D34-F10BCFEE7609__GUID-CC995CF8-0F4B-4D92-A782-A3832C0EA5AE.
- Si nécessaire, personnalisez
contour-data-values
pour votre environnement.Reportez-vous à la section Référence du module Contour.
- Installez Contour.
kubectl apply -f contour.yaml
serviceaccount/contour-sa createdclusterrolebinding.rbac.authorization.k8s.io/contour-role-binding created packageinstall.packaging.carvel.dev/contour created secret/contour-data-values created
- Vérifiez l'installation du module Contour.
kubectl get pkgi -A
- Vérifiez les objets Contour.
kubectl get all -n contour-ingress
NAME READY STATUS RESTARTS AGE pod/contour-777bdddc69-fqnsp 1/1 Running 0 102s pod/contour-777bdddc69-gs5xv 1/1 Running 0 102s pod/envoy-d4jtt 2/2 Running 0 102s pod/envoy-g5h72 2/2 Running 0 102s pod/envoy-pjpzc 2/2 Running 0 102s NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE service/contour ClusterIP 10.105.242.46 <none> 8001/TCP 102s service/envoy LoadBalancer 10.103.245.57 10.197.154.69 80:32642/TCP,443:30297/TCP 102s NAME DESIRED CURRENT READY UP-TO-DATE AVAILABLE NODE SELECTOR AGE daemonset.apps/envoy 3 3 3 3 3 <none> 102s NAME READY UP-TO-DATE AVAILABLE AGE deployment.apps/contour 2/2 2 2 102s NAME DESIRED CURRENT READY AGE replicaset.apps/contour-777bdddc69 2 2 2 102s
Le module Contour installe 2 espaces Contour et 3 espaces Envoy. Contour et Envoy sont exposés en tant que services. Dans cet exemple, le service Envoy dispose d'une adresse IP externe 10.197.154.69. Cette adresse IP est allouée à partir de la plage CIDR spécifiée pour
. Une instance d'équilibrage de charge est créée pour cette adresse IP. Les membres du pool de serveurs pour cet équilibreur de charge sont les espaces Envoy. Les espaces Envoy supposent les adresses IP des nœuds worker sur lesquels ils s'exécutent. Vous pouvez voir ces adresses IP en interrogeant les nœuds de cluster (kubectl get nodes -o wide
).
contour.yaml
Utilisez le fichier
contour.yaml
suivant pour installer Contour avec Envoy. Mettez à jour la variable de version pour qu'elle corresponde à la version du module cible.
apiVersion: v1 kind: ServiceAccount metadata: name: contour-sa namespace: tkg-system --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: name: contour-role-binding roleRef: apiGroup: rbac.authorization.k8s.io kind: ClusterRole name: cluster-admin subjects: - kind: ServiceAccount name: contour-sa namespace: tkg-system --- apiVersion: packaging.carvel.dev/v1alpha1 kind: PackageInstall metadata: name: contour namespace: tkg-system spec: serviceAccountName: contour-sa packageRef: refName: contour.tanzu.vmware.com versionSelection: constraints: 1.26.1+vmware.1-tkg.1 #PKG-VERSION values: - secretRef: name: contour-data-values --- apiVersion: v1 kind: Secret metadata: name: contour-data-values namespace: tkg-system stringData: values.yml: | --- namespace: tanzu-system-ingress contour: configFileContents: {} useProxyProtocol: false replicas: 2 pspNames: "vmware-system-restricted" logLevel: info envoy: service: type: LoadBalancer annotations: {} externalTrafficPolicy: Cluster disableWait: false hostPorts: enable: true http: 80 https: 443 hostNetwork: false terminationGracePeriodSeconds: 300 logLevel: info certificates: duration: 8760h renewBefore: 360h