vSphere 7.x용 TKr로 프로비저닝된 TKG 클러스터에 표준 패키지를 설치하려면 다음 지침을 참조하십시오.
사전 요구 사항
vSphere 7.x용 TKr에 표준 패키지를 설치하기 위한 워크플로의 내용을 참조하십시오.
엔보이를 사용하여 Contour 설치
엔보이 서비스를 사용하여 Contour 수신을 설치합니다.
- 저장소에서 사용 가능한 Contour 버전을 나열합니다.
kubectl get packages -n tkg-system | grep contour
contour.yaml
규격을 생성합니다.#GUID-ED287018-E690-4993-9D34-F10BCFEE7609__GUID-CC995CF8-0F4B-4D92-A782-A3832C0EA5AE의 내용을 참조하십시오.
- 필요한 경우 환경에 맞게
contour-data-values
를 사용자 지정합니다.Contour 패키지 참조의 내용을 참조하십시오.
- 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
- Contour 패키지 설치를 확인합니다.
kubectl get pkgi -A
- 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
Contour 패키지는 2개의 Contour 포드와 3개의 엔보이 포드를 설치합니다. Contour와 엔보이가 모두 서비스로 노출됩니다. 이 예에서, 엔보이 서비스의 외부 IP 주소는 10.197.154.69입니다. 이 IP 주소는
에 지정된 CIDR에서 분할됩니다. 이 IP 주소에 대해 로드 밸런서 인스턴스가 생성됩니다. 이 로드 밸런서에 대한 서버 풀의 멤버는 엔보이 포드입니다. 엔보이 포드는 해당 주소가 실행되는 작업자 노드의 IP 주소를 가정합니다. 클러스터 노드(kubectl get nodes -o wide
)를 쿼리하여 이러한 IP를 볼 수 있습니다.
contour.yaml
다음
contour.yaml
을 사용하여 엔보이로 Contour를 설치합니다. 대상 패키지 버전과 일치하도록 버전 변수를 업데이트합니다.
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