다음을 통해 공유


Nexus Kubernetes 클러스터 개요

이 문서에서는 Azure Operator Nexus 플랫폼에서 컨테이너화된 애플리케이션을 배포하고 운영하는 데 사용할 수 있는 관리되는 Kubernetes Service인 Nexus Kubernetes Cluster의 핵심 개념을 설명합니다.

Kubernetes란?

Kubernetes는 컨테이너 기반 애플리케이션과 관련 네트워킹 및 스토리지 구성 요소를 관리하는 플랫폼으로서 빠르게 진화하고 있습니다. Kubernetes는 기본 인프라 구성 요소가 아니라 애플리케이션 워크로드에 중점을 두고 있습니다. 관리 작업을 위한 강력한 API 집합을 통해 지원되는 선언적 배포 방식을 제공합니다. Kubernetes에 대해 자세히 알아보려면 Kubernetes란?을 참조하세요.

Nexus Kubernetes 서비스

Nexus Kubernetes 클러스터 서비스는 Nexus 인스턴스를 통한 온-프레미스 배포용으로 설계된 Kubernetes 배포판입니다. 컨테이너의 자동화된 만들기를 간소화하도록 설계되었으며 데이터 집약적인 네트워크 기능과 관련된 워크로드를 실행하도록 최적화되었습니다.

Kubernetes 클러스터와 마찬가지로 Nexus Kubernetes 클러스터에는 두 가지 구성 요소가 있습니다.

  • 컨트롤 플레인: 핵심 Kubernetes Service를 제공하고 애플리케이션 워크로드의 수명 주기를 관리합니다.

  • 노드: 애플리케이션과 지원 서비스를 실행하려면 Kubernetes 노드가 필요합니다. 컨테이너 런타임 환경을 제공합니다. 각 NKS 클러스터에는 노드가 하나 이상 있습니다. 노드는 Kubernetes 노드 구성 요소를 실행하는 VM(가상 머신)에서 호스트됩니다. VM은 Nexus 인스턴스에 NKS 클러스터 배포의 일부로 만들어집니다. Nexus Kubernetes 클러스터에는 두 가지 형식의 노드 풀이 있습니다.

    • AKS 클러스터를 만들 때, 초기 노드 수와 그 크기(SKU)를 정의합니다. 이를 통해 시스템 노드 풀이 만들어집니다. 시스템 노드 풀은 중요한 시스템 Pod를 호스트합니다.
    • 반면, 다양한 컴퓨팅 또는 스토리지 수요가 있는 애플리케이션을 지원하기 위해 Nexus 에이전트 풀이라고도 하는 사용자 노드 풀을 만들 수 있습니다. Nexus 에이전트 풀의 각 VM은 CPU, 메모리, 디스크 등과 같은 균일한 구성을 준수합니다. 에이전트 풀이 설정되면 그 안에 있는 VM 수는 고정된 상태로 유지됩니다. Nexus Kubernetes 클러스터의 용량의 크기를 조정하기 위해 더 많은 에이전트 풀을 만들고 기존 클러스터에 통합할 수 있습니다. 즉, Nexus 에이전트 풀은 Nexus Kubernetes 클러스터 내에서 에이전트 풀의 추가 또는 제거를 허용하여 수평적 크기 조정을 지원합니다.

그러나 사용자가 클러스터에 하나의 노드 풀만 원하는 경우 시스템 노드 풀에서 애플리케이션 Pod를 예약할 수 있습니다. 모든 Nexus Kubernetes 클러스터에는 하나 이상의 노드가 있는 시스템 노드 풀이 하나 이상 포함되어야 합니다.

Nexus Kubernetes 클러스터 추가 기능

Nexus Kubernetes 클러스터 추가 기능은 고객이 추가 패키지 또는 기능을 통해 Nexus Kubernetes 클러스터를 향상시킬 수 있는 Nexus 플랫폼의 기능입니다. 추가 기능은 필수와 선택의 두 가지 형식으로 분류됩니다.

  • 필수 추가 기능: 추가 기능은 프로비전된 Nexus Kubernetes 클러스터에 자동으로 배포됩니다. Calico, MetalLB, Nexus Storage CSI, IPAM 플러그 인,metrics-server, node-local-dns, Kubernetes용 Arc 및 서버용 Arc와 같은 핵심 추가 기능은 클러스터가 만들어질 때 기본적으로 포함됩니다. 클러스터 프로비전 프로세스의 성공적인 완료는 이러한 추가 기능이 성공적으로 설치되었는지에 따라 달라집니다. 필수 추가 기능 설치가 실패하고 수정할 수 없는 경우 클러스터 상태는 실패로 표시됩니다.

  • 선택적 추가 기능: 추가 기능은 Kubernetes 클러스터 리소스와 연결된 보충 서비스입니다. 고객은 필요에 따라 이러한 추가 기능을 활성화하거나 비활성화하도록 선택할 수 있습니다. 보충 서비스의 예로 연결이 끊긴 시나리오를 지원하기 위해 NKS 클러스터 내에 클러스터 수준 로컬 이미지 캐싱 레지스트리 배포가 포함될 수 있습니다. NKS를 사용하면 고객은 Azure Portal에서 모니터링할 수 있거나 Azure Resource Manager API를 사용하여 상태를 가져올 수 있는 각 필수 및 선택적 추가 기능의 상태, 정상 여부 및 버전을 관찰할 수 있습니다.

추가 기능은 한 번 설치되며 고객이 Nexus Kubernetes 클러스터를 업그레이드할 때만 업데이트하거나 업그레이드할 수 있습니다. 이를 통해 고객은 기본 인프라 작업의 방해 없이 중요한 프로덕션 핫픽스를 적용할 수 있습니다. 그렇지 않으면 클러스터 수정 사항을 덮어쓸 수 있습니다.

Nexus 사용 가능 영역

Nexus에서는 가용성 영역(Availability Zone) 개념을 도입했습니다. 이는 랙 수준에서 설명되며 고객이 더 나은 가용성을 달성하기 위해 인스턴스 전체에 워크로드를 분산할 수 있도록 합니다. 8개의 랙이 있는 Nexus 인스턴스의 경우 고객에게는 8개의 가용성 영역이 제공됩니다. 각 영역은 중복성을 갖춘 한 쌍의 관리 서버와 리소스 풀 역할을 하는 컴퓨팅 서버 컬렉션으로 구성됩니다. Nexus의 다중 랙 배포 중에 그리고 런타임 번들 업그레이드를 수행할 때 가용성 영역은 업그레이드 도메인 역할을 하는 추가적인 이점을 제공합니다. 이렇게 하면 최대 단일 랙 내의 서버만 이러한 업그레이드를 위해 오프라인 상태가 됩니다.

실패 도메인

Operator Nexus는 Nexus Kubernetes 클러스터 노드가 업그레이드 도메인 전체에 분산되도록 보장합니다. 이러한 배포는 클러스터의 복원력과 가용성을 개선시키는 방식으로 수행됩니다. Operator Nexus는 Kubernetes 선호도 규칙을 사용하여 특정 영역의 노드를 예약합니다. 기본 VM이 동일한 실제 서버나 동일한 업그레이드 도메인에 배치되지 않도록 하여 클러스터의 내결함성을 개선합니다.

다음 단계