Azure Kubernetes Service의 작동 방식

완료됨

이제 AKS(Azure Kubernetes Service)의 기본 사항을 알아보았으므로 간단한 AKS 클러스터를 설정하는 데 필요한 정보를 살펴보겠습니다. 이 정보는 AKS가 기존 개발 및 배포 프로세스와 통합하는 방식을 이해하는 데 도움이 됩니다.

AKS 클러스터 만들기

본질적으로 AKS 클러스터는 클라우드 호스팅 Kubernetes 클러스터입니다. 사용자 지정 Kubernetes 설치와 달리, AKS는 설치 프로세스를 간소화하며 대부분의 기본 클러스터 관리 작업을 처리합니다.

AKS 클러스터를 만들 때 두 가지 옵션이 있습니다. Azure Portal과 Azure CLI 중 하나를 사용할 수 있습니다. 두 옵션을 사용하려면 모두 클러스터에 대한 기본 정보를 구성해야 합니다. 예를 들어 다음을 구성합니다.

  • Kubernetes 클러스터 이름입니다.
  • 설치할 Kubernetes 버전입니다.
  • 컨트롤 플레인 노드에 공개적으로 액세스할 수 있도록 하기 위한 DNS 접두사입니다.
  • 초기 노드 풀 크기입니다.

초기 노드 풀 크기는 기본적으로 두 개의 노드이지만, 프로덕션 환경에는 세 개 이상의 노드를 사용하는 것이 좋습니다.

참고 항목

클러스터의 컨트롤 플레인 노드는 무료입니다. 클러스터에서 사용되는 노드 VM, 스토리지 및 네트워킹 리소스에 해당하는 요금만 지급합니다.

달리 지정하지 않는 한, Azure 서비스 만들기 워크플로는 크기 조정, 인증, 네트워킹 및 모니터링에 기본값 구성을 사용하여 Kubernetes 클러스터를 만듭니다. AKS 클러스터를 만드는 데는 일반적으로 몇 분 정도 걸립니다. AKS 클러스터를 만든 후에 기본값 속성을 변경할 수 있습니다. Azure Portal에서나 명령줄에서 클러스터를 관리할 수 있습니다.

워크로드를 개발하고 AKS에 배포하는 방법

개발 및 배포를 가속화하는 데 사용되는 결합된 서비스를 보여 주는 다이어그램

AKS는 Docker 이미지 형식을 지원합니다. Docker 이미지와 함께 개발 환경을 사용하여 워크로드를 만들고, 워크로드를 컨테이너로 패키지하고, 컨테이너를 Kubernetes Pod로 배포할 수 있습니다.

여기서는 표준 Kubernetes 명령줄 도구 또는 Azure CLI를 사용하여 배포를 관리합니다. 표준 Kubernetes 도구가 지원되므로 기존 Kubernetes를 AKS로 마이그레이션하기 위해 현재 워크플로를 변경할 필요가 없습니다.

또한 AKS는 Helm, Draft, Visual Studio Code용 Kubernetes 확장 및 Visual Studio Kubernetes Tools와 같은 인기 있는 개발 및 관리 도구를 지원합니다.

Bridge to Kubernetes

Bridge to Kubernetes를 사용하면 Kubernetes 클러스터 및 애플리케이션 또는 서비스의 나머지 부분에 연결되어 있는 동안 개발 컴퓨터에서 코드를 실행하고 디버그할 수 있습니다.

Bridge to Kubernetes를 통해 다음을 수행할 수 있습니다.

  • 클러스터에 코드를 빌드하고 배포할 필요가 없도록 합니다. 대신 개발 컴퓨터에서 클러스터로의 직접 연결을 만듭니다. 이 연결로 해당 목적을 위해 Docker 또는 Kubernetes 구성을 만들지 않고도 전체 애플리케이션 컨텍스트에서 서비스를 빠르게 테스트하고 개발할 수 있습니다.
  • 연결된 Kubernetes 클러스터와 개발 컴퓨터 간의 트래픽을 리디렉션합니다. 이 연결을 통해 개발 컴퓨터의 코드와 Kubernetes 클러스터에서 실행되는 서비스가 동일한 Kubernetes 클러스터에 있는 것처럼 통신할 수 있습니다.
  • Kubernetes 클러스터의 Pod에 사용할 수 있는 환경 변수 및 탑재된 볼륨을 개발 컴퓨터에 복제합니다. Bridge to Kubernetes를 사용하면 해당 종속성을 수동으로 복제하지 않고도 코드를 수정할 수 있습니다.

Azure 서비스 통합

AKS를 사용하여 Azure 서비스 제공 사항을 통합하고 AKS 클러스터 솔루션의 일부로 사용할 수 있습니다.

예를 들어 Kubernetes는 미들웨어 및 스토리지 시스템을 제공하지 않습니다. 차량 관리 데이터 처리에 처리 큐를 추가해야 한다고 가정해보겠습니다. Azure Storage 큐를 쉽게 통합하여 데이터 처리 서비스의 용량을 확장할 수 있습니다.