주:

3개의 작업자 노드로 Oracle Cloud Infrastructure Container Engine for Kubernetes 설정

소개

이 사용지침서에서는 Oracle Cloud Infrastructure Container Engine for Kubernetes(OKE)를 사용하여 Kubernetes 제어 플레인 및 데이터 플레인(노드 풀)으로 구성된 Kubernetes 클러스터를 설정하는 방법에 대해 설명합니다. 또한 Kubernetes 플랫폼에서 두 개의 샘플 애플리케이션을 배포하고 삭제하여 작동 여부를 입증할 것입니다. 이 튜토리얼은 컨테이너 호스팅 애플리케이션을 위해 Kubernetes 내부에서 제공되는 네트워킹 서비스를 살펴볼 향후 튜토리얼을 위한 단계를 설정합니다.

이미지

이미지

OKE 배치 모델의 예는 다음과 같습니다.

선택할 수 있는 여러 OKE 배치 모델에 대한 자세한 내용은 Example Network Resource Configurations을 참조하십시오.

이 자습서에서는 예제 3 배포 모델을 구현합니다.

목표

작업 1: 새 Kubernetes 클러스터 생성 및 구성요소 확인

Kubernetes 제어 클러스터 및 작업자 노드는 Oracle Cloud Infrastructure(OCI) 내에 완전히 배포 및 구성됩니다. 이를 Oracle Cloud Infrastructure Container Engine for Kubernetes라고 합니다.

작업 2: OCI 콘솔에서 배치된 Kubernetes 클러스터 구성요소 확인

OKE를 사용하여 Kubernetes 클러스터를 생성하면 이 배치를 지원하기 위해 OCI 내에 일부 리소스가 생성됩니다.

가장 중요한 첫번째 리소스는 VCN(가상 클라우드 네트워크)입니다. 빠른 생성 옵션을 선택했기 때문에 OKE 전용의 새 VCN이 생성되었습니다.

방금 수집한 모든 정보를 다이어그램에 배치하면 다음 그림과 같이 다이어그램이 표시됩니다.

이미지

작업 3: CLI를 사용하여 Kubernetes 클러스터가 실행 중인지 확인

OCI Cloud Shell을 사용하여 OKE 클러스터에서 관리를 수행하기 위해 접속됩니다.

이미지

작업 4: kubectl을 사용하여 샘플 Nginx 응용 프로그램 배치

작업 5: Helm 차트를 사용하여 샘플 MySQL 애플리케이션 배치

작업 6: Pod 및 네임스페이스 정리

기본 네임스페이스(Nginx)에 애플리케이션을 배치했고, 새 네임스페이스(MySQL)에 애플리케이션을 배치했습니다. Helm 차트를 사용하여 필요할 때마다 새로 시작할 수 있도록 환경을 정리해 보겠습니다.

  1. 다음 명령을 사용하여 모든 워커 노드(클러스터 전체)를 가져옵니다.

    kubectl get nodes -o wide
    
  2. 다음 명령을 사용하여 현재(기본) 이름 공간에서 실행 중인 모든 포드를 가져옵니다.

    kubectl get pods -o wide
    
  3. 다음 명령을 실행하여 모든 네임스페이스를 가져옵니다.

    kubectl get namespaces
    
  4. 다음 명령을 실행하여 현재(기본) 이름 공간에서 특별히 실행 중인 모든 포드를 가져옵니다.

    kubectl get pods --namespace=default
    
  5. 다음 명령을 실행하여 특별히 MySQL 이름 공간에서 실행 중인 모든 포드를 가져옵니다.

    kubectl get pods --namespace=mysql
    

이미지

이미지

이미지

  1. 다음 명령을 실행하여 기본 이름 공간에서 모든 배치 또는 Pod를 삭제합니다.

    kubectl delete --all deployments --namespace=default
    
  2. 다음 명령을 사용하여 배치 또는 포드가 삭제되었는지 확인합니다.

    kubectl get pods --namespace=default
    
  3. 다음 명령을 사용하여 특별히 MySQL 이름 공간에서 실행 중인 모든 포드를 가져옵니다. 그래도 존재하는지 확인하세요.

    kubectl get pods --namespace=mysql
    

이미지

  1. 다음 명령을 실행하여 모든 배치 또는 Pod와 전체 MySQL 네임스페이스를 삭제합니다.

    kubectl delete namespace mysql
    
  2. 이 명령을 사용하여 모든 네임스페이스를 수집하고 MySQL 네임스페이스가 삭제되었는지 확인합니다.

    kubectl get namespaces    
    

이미지

확인

추가 학습 자원

docs.oracle.com/learn에서 다른 실습을 살펴보거나 Oracle Learning YouTube 채널에서 더 많은 무료 학습 콘텐츠에 액세스하십시오. 또한 education.oracle.com/learning-explorer를 방문하여 Oracle Learning Explorer가 되십시오.

제품 설명서는 Oracle Help Center를 참조하십시오.