토폴로지 확인

Terraform 구성에서 정의한 리소스가 생성되었는지 확인하고, 기본 및 관리 호스트에 대한 SSH 액세스를 테스트하고, Kubernetes 클러스터에 대한 액세스를 확인합니다.

배치된 리소스를 확인합니다.

  1. Oracle Cloud Infrastructure 웹 콘솔에 사인인합니다.
  2. 오른쪽 위 모서리에 있는 영역 메뉴에서 terraform.tfvars에 지정된 영역 ID에 해당하는 영역 이름을 선택합니다.
    예를 들어, terraform.tfvars에서 지역 ID us-ashburn-1를 지정한 경우 US East(Ashburn) 를 선택합니다.
  3. 서비스 메뉴에서 계산 을 선택합니다.
  4. 왼쪽 탐색 창의 구획 필드에서 terraform.tfvars에 지정된 구획 ID에 해당하는 구획 이름을 선택합니다.
  5. 다음 인스턴스가 존재하는지 확인합니다.
    • label_prefix -bastion 및 label_prefix -admin 이라는 두 개의 인스턴스가 있습니다. 여기서 label_prefixterraform.tfvarslabel_prefix 변수에 대해 지정한 값입니다.
    • 이름이 cluster_name -... - n 인 세 개 이상의 인스턴스(여기서 cluster_name 는 클러스터에 대해 지정한 이름이고 n는 0부터 시작하는 순서 번호) 인스턴스 수는 Kubernetes 클러스터에 대해 지정한 노드 수와 일치합니다.
  6. 각 인스턴스의 이름을 누르고 [인스턴스 세부 정보 ] 페이지에서 가용성 도메인, 이미지 및 모양이 terraform.tfvars에 지정된 설정과 일치하는지 확인합니다.
  7. 인스턴스의 Instance Details(인스턴스 세부정보) 페이지의 Instance Information(인스턴스 정보) 에서 Virtual Cloud Network(가상 클라우드 네트워크) 필드를 찾아 VCN 이름을 누릅니다.
  8. [가상 클라우드 네트워크 세부 정보 ] 페이지에서 CIDR 블록이 terraform.tfvars에 지정된 주소와 일치하는지 확인합니다.
  9. 왼쪽 탐색 창의 리소스 에서 VCN에 다음 리소스가 포함되어 있는지 확인합니다. 숫자는 각 리소스의 수를 나타냅니다.
    • 서브넷: 기본 계산 인스턴스와 관리 컴퓨트 인스턴스를 모두 생성하도록 선택한 경우 네 개의 서브넷을 선택합니다. 컴퓨트 인스턴스 중 하나만 생성하도록 선택한 경우 세 개의 서브넷을 사용합니다. 그렇지 않은 경우 2.
    • 경로 테이블: NAT 게이트웨이를 생성하도록 선택한 경우 3개의 경로 테이블(그렇지 않은 경우 2) 을 선택합니다.
    • 인터넷 게이트웨이: 1
    • 보안 목록: 기본 관리 컴퓨트 인스턴스를 둘 다 생성하도록 선택한 경우 보안 목록이 5개(컴퓨트 인스턴스 중 하나만 생성하도록 선택한 경우) 후 서브넷이 4개(그렇지 않은 경우 3) 입니다.
    • DHCP 옵션: 1
    • NAT 게이트웨이: NAT 게이트웨이를 생성하도록 선택한 경우 1; 그렇지 않은 경우 0.
    • 서비스 게이트웨이: 서비스 게이트웨이를 생성하도록 선택한 경우 1, 그렇지 않은 경우 0.
  10. 각 네트워킹 리소스를 누르고 해당 세부정보를 봅니다.
  11. 서비스 메뉴에서 개발자 서비스 를 선택한 다음 컨테이너 클러스터(OKE) 를 선택합니다.
  12. 이름이 label_prefix - cluster_name 인 클러스터가 존재하고 활성 상태인지 확인합니다.
  13. 클러스터의 이름을 누르고 콘솔의 [노드 풀 ] 섹션으로 스크롤하여 노드 풀의 수와 크기가 지정한 설정과 일치하는지 확인합니다.

Bastion 및 관리 호스트에 대한 SSH 액세스 확인

기본 호스트 또는 관리 호스트를 생성하도록 선택한 경우 SSH 접속을 생성할 수 있는지 여부를 테스트합니다.

터미널 창에서 이전에 terraform apply 작업 출력에서 복사한 ssh 명령을 실행합니다.

terraform apply의 이전 출력에서 ssh 명령을 복사하지 않은 경우 Terraform 구성이 포함된 최상위 디렉토리로 이동하고 terraform output 명령을 실행합니다. ssh_to_adminssh_to_bastion 출력을 복사합니다.

ssh 명령은 다음 형식입니다.
  • 관리 호스트: ssh -i privateKeyPath -J opc@bastionPublicIP opc@adminPrivateIP
  • 기본 호스트: ssh -i privateKeyPath opc@bastionPublicIP

Kubernetes 클러스터 액세스

kubectl CLI 또는 웹 기반 Kubernetes 대시보드를 사용하여 Kubernetes 클러스터에 액세스하고 관리할 수 있습니다.

  • kubectl가 관리 호스트에 자동으로 설치 및 구성됩니다.
  • 로컬 호스트에서 kubectl를 실행하려면 설치하고 KUBECONFIG 환경 변수를 설정합니다.

    kubectl CLI는 KUBECONFIG 변수를 사용하여 Kubernetes 클러스터에 액세스하기 위한 매개변수를 확인합니다. Terraform 구성을 적용하면 필수 클러스터 액세스 매개변수가 생성되고 generated 디렉토리의 kubeconfig 라는 로컬 파일에 저장됩니다.

    로컬 호스트에서 KUBECONFIG 환경 변수를 설정하려면 다음 명령을 실행합니다.
    export KUBECONFIG=generated/kubeconfig
  • Kubernetes 대시보드에 액세스하려면 다음 단계를 수행하십시오.
    1. 다음 명령을 실행하여 Kubernetes API 서버에 대한 프록시 서버를 시작합니다.
      kubectl proxy
    2. 브라우저를 사용하여 http://localhost:8001/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/으로 이동합니다.