클러스터 작성 후에 Ingress 하위 도메인이 존재하지 않는 이유는 무엇입니까?
가상 프라이빗 클라우드 클래식 인프라
클러스터를 작성하고 ibmcloud ks cluster get --cluster <cluster>를 실행하여 상태를 확인하십시오. 클러스터 **상태(state)**가 normal이지만 Ingress 하위 도메인 및 Ingress 시크릿을 사용할 수 없습니다.
클러스터가 normal 상태이더라도 Ingress 하위 도메인 및 시크릿이 진행 중일 수 있습니다. Ingress 하위 도메인 및 시크릿 생성은 완료되는 데 15분 이상 걸릴 수 있습니다.
클래식 클러스터
- 작업자 노드가 완전히 배치되고 VLAN에서 준비가 되면, VLAN의 휴대용 공용 및 휴대용 사설 서브넷을 요청합니다.
- 휴대용 서브넷 요청이 성공적으로 충족된 후에는
ibm-cloud-provider-vlan-ip-config구성 맵이 휴대용 공용 및 휴대용 사설 IP 주소로 업데이트됩니다. ibm-cloud-provider-vlan-ip-config구성 맵이 업데이트되면 구역당 하나의 공용 ALB가 작성을 위해 트리거됩니다.- ALB를 노출하는 로드 밸런서 서비스가 작성되고 IP 주소가 지정됩니다.
- 로드 밸런서의 IP 주소는 IBM NS1 에서 Ingress 하위 도메인을 등록하는 데 사용됩니다. IBM NS1 등록 과정에서 지연이 발생할 수 있습니다.
VPC 클러스터
- VPC 클러스터를 작성하면 하나의 공용 VPC 로드 밸런서 및 하나의 사설 VPC 로드 밸런서가 VPC의 클러스터 외부에 자동으로 작성됩니다.
- 구역당 하나의 공용 ALB가 작성을 위해 트리거됩니다.
- ALB를 노출하는 로드 밸런서 서비스가 작성되고 호스트 이름이 지정됩니다.
- 로드 밸런서의 호스트명은 IBM NS1 에서 Ingress 하위 도메인을 등록하는 데 사용됩니다. IBM NS1 등록 과정에서 지연이 발생할 수 있습니다.
이름이 동일하거나 유사한 클러스터를 삭제한 후 클러스터를 작성하고 계십니까? 대신 동일한 이름 또는 유사한 이름의 클러스터를 작성한 후에도 Ingress 하위 도메인이 없는 이유는 무엇입니까?를 참조하십시오.
일반적으로 클러스터를 준비하고 15분 후에 Ingress 하위 도메인 및 시크릿이 작성됩니다.
클러스터가 15분 이상 normal 상태가 된 후에도 Ingress 하위 도메인 및 시크릿을 계속 사용할 수 없으면 다음 단계를 수행하여 작성 프로세스 진행상태를 확인할 수 있습니다.
-
작업자 노드의 **상태(state)**가
normal이고 **상태(Status)**가Ready인지 확인하십시오. 클러스터를 작성한 후 작업자 노드를 준비하려면 최대 20분이 소요될 수 있습니다.ibmcloud ks worker ls -c CLUSTER_NAME_OR_ID출력 예
ID Public IP Private IP Flavor State Status Zone Version kube-blrs3b1d0p0p2f7haq0g-mycluster-default-000001f7 169.xx.xxx.xxx 10.xxx.xx.xxx u3c.2x4.encrypted deployed Ready dal10 1.36 -
ALB 작성을 위한 전제조건 단계가 완료되었는지 확인하십시오.
- 클래식 클러스터: ‘
ibm-cloud-provider-vlan-ip-config’ 구성 맵에 대한 세부 정보를 확인하세요.
kubectl describe cm ibm-cloud-provider-vlan-ip-config -n kube-system ``` * 구성 맵에서 IP 주소가 표시되면 다음 단계를 계속하십시오. * **이벤트** 섹션에서 `ErrorSubnetLimitReached: There are already the maximum number of subnets permitted in this VLAN`과 유사한 경고 메시지가 표시되면 [VLAN 용량 문제점 해결 주제](/docs/containers?topic=containers-cs_subnet_limit)를 참조하십시오. IP 주소로 채워진 구성 맵의 출력 예제: ```sh {: screen} NAME: ibm-cloud-provider-vlan-ip-config Namespace: kube-system Labels: <none> Annotations: <none> Data ==== reserved_public_vlan_id: ---- vlanipmap.json: ---- { "vlans": [ { "id": "2234947", "subnets": [ { "id": "2215454", "ips": [ "10.XXX.XXX.XXX", "10.XXX.XXX.XXX", "10.XXX.XXX.XXX", "10.XXX.XXX.XXX", "10.XXX.XXX.XXX" ], "is_public": false, "is_byoip": false, "cidr": "10.XXX.XXX.X/29" } ], "zone": "dal10", "region": "us-south" }, { "id": "2234945", "subnets": [ { "id": "2219170", "ips": [ "169.XX.XXX.XX", "169.XX.XXX.XX", "169.XX.XXX.XX", "169.XX.XXX.XX", "169.XX.XXX.XX" ], "is_public": true, "is_byoip": false, "cidr": "169.XX.XXX.X/29" } ], "zone": "dal10", "region": "us-south" } ], "vlan_errors": [], "reserved_ips": [] } cluster_id: ---- bmnj1b1d09lpvv3oof0g reserved_private_ip: ---- reserved_private_vlan_id: ---- reserved_public_ip: ---- Events: <none>- VPC 클러스터: 해당 ALB에 대한 VPC 로드 밸런서가 존재하는지 확인하십시오. 출력에서
kube-<cluster_ID>로 시작하는 VPC 로드 밸런서 Name을 찾으십시오.infrastructure-service플러그인을 설치하지 않은 경우ibmcloud plugin install infrastructure-service를 실행하여 설치하십시오.
ibmcloud is load-balancers ``` VPC 로드 밸런서가 나열되는 경우에도 DNS 항목이 계속 등록 중일 수 있습니다. VPC 로드 밸런서가 작성될 때, 호스트 이름은 공용 DNS를 통해 등록됩니다. 경우에 따라 이 DNS 항목이 클라이언트가 사용 중인 특정 DNS에 복제되는 데 몇 분이 소요될 수 있습니다. {: note} - 클래식 클러스터: ‘
-
클러스터에 대한 ALB가 있으며 이 ALB에 IP 주소(클래식 클러스터) 또는 호스트 이름(VPC 클러스터)이 지정되어 있는지 확인하십시오.
ibmcloud ks ingress alb ls -c <cluster_name_or_ID>출력 예
ALB ID Enabled Status Type ALB IP Zone Build ALB VLAN ID NLB Version private-crbmnj1b1d09lpvv3oof0g-alb1 false disabled private - dal10 ingress:1.1.2_2507_iks 2234947 2.0 public-crbmnj1b1d09lpvv3oof0g-alb1 true enabled public 169.XX.XXX.XX dal10 ingress:1.1.2_2507_iks 2234945 2.0- 공용 ALB가 나열되고 IP 주소(클래식 클러스터) 또는 호스트 이름(VPC 클러스터)이 지정되면 다음 단계를 계속하십시오.
- 공용 ALB가 나열되지만 IP 주소(클래식 클러스터) 또는 호스트 이름(VPC 클러스터)이 지정되지 않으면 사용하지 않도록 시도하고 ALB를 다시 사용하도록 설정하십시오.
- 클래식 클러스터:
ibmcloud ks ingress alb disable --alb <ALB_ID> -c <cluster_name_or_ID>ibmcloud ks ingress alb enable classic --alb <ALB_ID> -c <cluster_name_or_ID> - VPC 클러스터:
ibmcloud ks ingress alb disable --alb <ALB_ID> -c <cluster_name_or_ID>ibmcloud ks ingress alb enable vpc-gen2 --alb <ALB_ID> -c <cluster_name_or_ID>
- 클래식 클러스터:
- 몇 분 후에 ALB가 작성되지 않으면 도움을 받을 수 있는 방법을 검토하십시오.
-
ALB를 노출하는
LoadBalancer서비스가 존재하고 공용 ALB와 동일한 IP 주소(클래식 클러스터) 또는 호스트 이름(VPC 클러스터)이 지정되는지를 확인하십시오.LoadBalancer서비스가 나열되고 IP 주소(클래식 클러스터) 또는 호스트 이름(VPC 클러스터)이 지정되면 다음 단계를 계속하십시오.- 몇 분 후에
LoadBalancer가 작성되지 않으면 도움을 받을 수 있는 방법을 검토하십시오.
kubectl get svc -n kube-system | grep LoadBalancer출력 예
public-crbmnj1b1d09lpvv3oof0g-alb1 LoadBalancer 172.21.XXX.XXX 169.XX.XXX.XX 80:30723/TCP,443:31241/TCP 1d -
Ingress 하위 도메인 및 시크릿이 작성되는지 여부를 다시 확인하십시오. 이러한 항목을 사용할 수 없지만 1 - 4단계의 모든 컴포넌트가 있는지 확인한 경우 도움을 받는 방법을 검토하십시오.
ibmcloud ks cluster get -c <cluster_name_or_ID>