Azure NetApp Files의 AKS 워크로드에 대한 애플리케이션 데이터 보호

Azure NetApp Files
AKS(Azure Kubernetes Service)
Azure Virtual Network

이 문서에서는 상태 저장 컨테이너화된 애플리케이션, 해당 리소스 및 해당 데이터의 애플리케이션 데이터 관리를 관리하고 수행하기 위한 솔루션을 간략하게 설명합니다.

아키텍처

AKS 및 Azure NetApp Files가 별도의 가상 네트워크에 있을 때 Astra Control Service를 사용하여 AKS를 배포하는 방법을 보여 주는 아키텍처 다이어그램

이 아키텍처의 Visio 파일을 다운로드합니다.

데이터 흐름

  1. Azure 구독에서 Azure NetApp Files 계정이 만들어지고 용량 풀이 정의됩니다. 이러한 풀은 구현에 필요한 서비스 수준(예: Standard, Premium 및 Ultra)에 매핑됩니다.

  2. 하나 이상의 AKS 클러스터가 배포됩니다. 클러스터는 다음에 있어야 합니다.

    • AKS 및 Azure NetApp Files를 사용할 수 있는 지역. 이러한 제품을 사용할 수 있는 지역은 지역별 제품을 참조하세요.
    • Azure NetApp Files에 대해 위임된 서브넷에 직접 액세스할 수 있는 가상 네트워크. 자세한 내용은 Azure NetApp Files 네트워크 계획 지침을 참조하세요.
  3. 사용자가 Astra Control Service 계정에 등록 합니다. Astra Control Service는 참가자 액세스 권한이 있는 Azure 서비스 주체 자격 증명을 사용하여 관리할 AKS 클러스터를 찾습니다. Astra Control Service는 Astra Trident를 설치하고 클러스터가 Astra Control Service에 추가되면 각 서비스 계층에 매핑된 StorageClasses를 만듭니다. Astra Trident는 Azure NetApp Files 용량 풀에 매핑되는 자동으로 배포된 SC(StorageClass) 개체를 사용하여 애플리케이션 PVC(PersistentVolumeClaims)에서 Kubernetes PV(PersistentVolumes)를 만듭니다. 매핑은 용량 풀의 서비스 수준을 고려합니다.

  4. 사용자는 AKS 클러스터에 애플리케이션을 설치합니다. 가능한 배포 방법에는 Helm 차트, 연산자 및 YAML 매니페스트가 포함됩니다. 애플리케이션은 레이블 또는 네임스페이스별로 그룹화할 수 있습니다. Astra Trident는 개체를 사용하여 PersistentVolumeClaims를 기반으로 영구 볼륨을 StorageClass 프로비전합니다.

  5. Astra Control Service는 Pod, 서비스, 배포 및(PVC) 개체와 같은 애플리케이션 및 PersistentVolumeClaim 관련 리소스를 관리합니다. 또한 PVC에 바인딩된 PV(PersistentVolume)를 관리합니다. 사용자는 다음 방법 중 하나를 사용하여 애플리케이션을 정의합니다.

    • 네임스페이스에 대한 제한
    • 사용자 지정 Kubernetes 레이블을 사용하여 리소스 그룹화

또한 사용자는 스토리지 클래스와 같은 클러스터 범위 개체를 (a) 특정 애플리케이션과 그룹화하여 함께 관리할 수 있습니다.

Astra Control Service는 특정 시점 스냅샷 및 백업, 백업 정책인스턴트 활성 클론 을 오케스트레이션하여 애플리케이션 워크로드를 보호합니다. Astra Control Service는 다음을 통해 이러한 보호를 달성합니다.

  • Astra Control Service 보호 정책 만들기 스냅샷 및/또는 백업에 대해 만들고 일정 및 백업 대상을 지정할 수 있습니다. 이러한 정책을 사용하면 미리 결정된 일정에 따라 애플리케이션을 자동으로 보호할 수 있습니다.

  • 개별 또는 애플리케이션 그룹에 대해 요청 시 스냅샷을 만듭니다.

  • 개별 또는 애플리케이션 그룹에 대해 즉각적인 백업 또는 클론 만들기

    재해 또는 앱 오류가 발생하면 백업 및 스냅샷이 애플리케이션의 상태를 복원합니다. 사용자는 네임스페이스와 AKS 클러스터 간에 앱을 복제하고 마이그레이션할 수 있습니다. 클러스터는 동일하거나 별도의 지역에 있을 수 있습니다.

구성 요소

  • AKS는 컨테이너화된 애플리케이션을 쉽게 배포하고 관리할 수 있는 완전 관리형 Kubernetes Service입니다. AKS는 서버리스 Kubernetes 기술, CI/CD(연속 통합 및 지속적인 업데이트) 환경, 엔터프라이즈급 보안 및 거버넌스를 제공합니다.
  • Azure NetApp Files는 Azure Storage 서비스입니다. 이 서비스는 엔터프라이즈급 NFS(네트워크 파일 시스템) 및 SMB(서버 메시지 블록) 파일 공유를 제공합니다. Azure NetApp Files를 사용하면 코드 변경 없이 복잡한 파일 기반 애플리케이션을 쉽게 마이그레이션하고 실행할 수 있습니다. 이 서비스는 Kubernetes 환경에서 영구 볼륨을 사용하는 사용자에게 매우 적합합니다.
  • Azure Virtual Network는 Azure에서 개인 네트워크의 기본 구성 요소입니다. Virtual Network를 통해 가상 머신과 같은 Azure 리소스는 서로, 인터넷 및 온-프레미스 네트워크와 안전하게 통신할 수 있습니다.
  • Astra Control Service는 완전 관리형 애플리케이션 인식 데이터 관리 서비스입니다. Astra Control Service를 사용하면 퍼블릭 클라우드 및 온-프레미스 환경에서 데이터가 풍부한 Kubernetes 워크로드를 관리, 보호 및 이동할 수 있습니다. 이 서비스는 Kubernetes 워크로드에 대한 데이터 보호, 재해 복구 및 마이그레이션을 제공합니다. Astra Control Service는 스냅샷, 백업, 지역 간 복제 및 복제를 위해 업계 최고의 Azure NetApp Files 데이터 관리 기술을 사용합니다.

대안

애플리케이션을 복원할 때 필요한 영구 볼륨, Kubernetes 리소스 및 기타 구성 상태 리소스를 별도로 백업하거나 복제하기 위해 사용자 지정 다각적 방식을 사용할 수 있습니다. 그러나 이 방식은

  • 번거로우며,
  • 모든 앱과 호환되기 어렵습니다.
  • 일반적인 기업이 보유한 여러 앱과 환경에서 크기 조정하기 어렵습니다.

특정 환경에서는 피어 간 가상 네트워크 트래픽을 방지하여 비용을 줄일 수 있습니다. 이 트래픽을 제거하려면 솔루션을 단순화합니다. 특히 이 다이어그램에 나와 있는 것처럼 Azure NetApp Files에 대해 위임하는 AKS 클러스터 및 서브넷을 동일한 가상 네트워크로 가져옵니다.

단일 가상 네트워크에서 Astra Control Service와 함께 AKS를 사용하는 방법을 보여 주는 아키텍처 다이어그램

이 아키텍처의 Visio 파일을 다운로드합니다.

시나리오 정보

컨테이너화된 애플리케이션을 사용하면 애플리케이션 데이터 보호를 수행하는 것이 어려울 수 있습니다. 애플리케이션은 하나의 엔터티로 관리되어야 하는 여러 마이크로 서비스로 구성됩니다. Kubernetes에 중요 비즈니스용 워크로드를 배포하는 경우 애플리케이션 데이터 관리는 다음과 같습니다.

  • 단순하고 데이터 보호 정책 및 주문형 스냅샷 및 백업을 설정하는 것은 직관적이어야 합니다. 이러한 정책은 기본 인프라의 세부 정보에 의존해서는 안 됩니다.
  • 이동식. 애플리케이션에 대해 지역 간 모바일을 가능하게 하려면 여러 Kubernetes 클러스터가 백업을 사용할 수 있어야 합니다.
  • 애플리케이션 인식. 솔루션은 비밀 ConfigMap , 개체 및 영구 볼륨과 같은 표준 Kubernetes 리소스를 포함하여 전체 애플리케이션을 보호해야 합니다. 사용자 지정 Kubernetes 리소스도 보호해야 합니다. 가능한 경우 프로시저는 스냅샷 및 백업 전에 애플리케이션을 정지해야 합니다. 이 방식은 백업 중에 진행 중인 데이터의 손실을 방지합니다.

NetApp Astra Control Service 는 이러한 목표를 달성하는 데 도움이 되는 상태 저장 애플리케이션 데이터 관리를 수행하기 위한 솔루션입니다. Astra Control Service는 데이터 보호, 재해 복구 및 애플리케이션 이동성 기능을 제공합니다. 상태 저장 AKS 워크로드에 다양한 스토리지 및 애플리케이션 인식 데이터 관리 서비스를 제공합니다. Azure NetApp Files의 데이터 보호 기술은 이러한 서비스의 기반이 됩니다.

잠재적인 사용 사례

이 솔루션은 상태 저장 애플리케이션을 실행하는 시스템에 적용됩니다.

  • Jenkins와 같은 CI(연속 통합) 시스템
  • MySQL, MongoDB, PostgreSQL과 같은 데이터베이스 워크로드
  • TensorFlow 및 PyTorch와 같은 AI 및 컴퓨터 학습 구성 요소
  • Elasticsearch 배포
  • Kafka 애플리케이션
  • GitLab과 같은 소스 코드 관리 플랫폼

고려 사항

이러한 고려 사항은 워크로드의 품질을 향상시키는 데 사용할 수 있는 일단의 지침 원칙인 Azure Well-Architected Framework의 핵심 요소를 구현합니다. 자세한 내용은 Microsoft Azure Well-Architected Framework를 참조하세요.

안정성

안정성은 애플리케이션이 고객에 대한 약속을 충족할 수 있도록 합니다. 자세한 내용은 안정성 핵심 요소 개요를 참조하세요.

AKS 클러스터를 배포할 때 단일 지역에 배포합니다. 애플리케이션 워크로드를 보호하려면 여러 지역에 걸쳐 있는 여러 AKS 클러스터에 워크로드를 배포하는 것이 가장 좋습니다. 배포에 영향을 미치는 요소에는 AKS 지역 가용성 및 Azure 쌍을 이루는 지역이 포함됩니다. 여러 가용성 영역에 클러스터를 배포하는 경우 단일 지역 내의 여러 영역에 노드를 배포합니다. 이 AKS 클러스터 리소스 배포는 클러스터가 특정 영역의 오류에 대해 복원력이 있기 때문에 클러스터 가용성이 향상됩니다.

Azure NetApp Files는 디자인상 가용성이 높습니다. 모든 플래시 스토리지 시스템의 고가용성 베어 메탈 제품군을 기반으로 합니다. 이 서비스의 가용성 보장에 대한 자세한 내용은 Azure NetApp Files에 대한 SLA를 참조하세요.

Azure NetApp Files는 재해 복구를 위해 지역 간 복제를 지원합니다. Azure 지역 쌍 간에 지속적으로 볼륨을 복제할 수 있습니다. 지역 간 복제에 대한 자세한 내용은 다음 리소스를 참조하세요.

비용 최적화

비용 최적화는 불필요한 비용을 줄이고 운영 효율성을 높이는 방법을 찾는 것입니다. 자세한 내용은 비용 최적화 핵심 요소 개요를 참조하세요.

Azure 가격 책정 계산기를 사용하여 다음 구성 요소의 비용을 예상합니다.

  • AKS
  • Azure NetApp Files
  • Virtual Network

Astra Control Service 가격 책정 계획은 가격 책정을 참조 하세요. Astra Control Service를 채택하면 크기 조정되지 않는 사용자 지정 솔루션을 빌드하는 데 시간과 리소스를 소비하는 대신 애플리케이션에 집중할 수 있습니다. Astra Control Service는 Azure Marketplace에서 사용할 수 있습니다.

자세한 대역폭 및 가격 책정 계산을 실행하려면 Azure NetApp Files 성능 계산기를 사용합니다. 기본 및 고급 계산기를 사용할 수 있습니다.

운영 우수성

운영 우수성은 애플리케이션을 배포하고 프로덕션에서 계속 실행하는 운영 프로세스를 다룹니다. 자세한 내용은 운영 우수성 핵심 요소 개요를 참조하세요.

Kubernetes 컨트롤 플레인으로 작업할 때 인프라 및 플랫폼 계층을 모니터링하는 것이 중요합니다. Astra Control Service는 여러 AKS 클러스터에서 애플리케이션 보호 정책을 정의하고 관리하는 데 사용할 수 있는 통합 컨트롤 플레인을 제공합니다. 대시보드는 여러 지역에서 워크로드를 지속적으로 처리할 수 있는 방법을 제공합니다. 또한 Astra Trident는 프로비저닝된 스토리지를 모니터링하는 데 사용할 수 있는 풍부한 Prometheus 메트릭 세트를 제공합니다.

성능 효율성

성능 효율성은 사용자가 배치된 요구 사항을 효율적인 방식으로 충족하기 위해 워크로드의 크기를 조정할 수 있는 기능입니다. 자세한 내용은 성능 효율성 핵심 요소 개요를 참조하세요.

AKS 클러스터는 작업자 노드를 추가하여 확장성을 높일 수 있습니다. 솔루션의 크기를 조정하려면 노드 풀을 추가하거나 기존 노드 풀의 크기를 조정할 수 있습니다. 이러한 단계에서 클러스터의 노드 수, 총 코어 수 및 컨테이너화된 애플리케이션에 사용할 수 있는 메모리를 늘립니다.

각 가상 네트워크에서 Azure NetApp Files에 대해 하나의 서브넷만 위임할 수 있습니다.

Azure NetApp Files 네트워크 기능에 대한 기본 구성을 사용하는 경우 가상 네트워크당 IP 주소는 1,000개로 제한됩니다. 표준 네트워크 기능 구성은 IP 주소의 수를 제한하지 않습니다. 자세한 내용은 구성 가능한 네트워크 기능을 참조하세요. Azure NetApp Files에 대한 전체 리소스 제한 목록은 Azure NetApp Files에 대한 리소스 제한을 참조하세요.

Azure NetApp Files는 여러 성능 계층을 제공합니다. Astra Control Service를 사용하여 AKS 클러스터를 검색하는 경우 온보딩 프로세스는 Standard, Premium 및 Ultra 서비스 계층에 매핑되는 큐레이팅된 StorageClass 개체를 만듭니다. 사용자는 애플리케이션을 배포할 때 요구 사항에 맞는 스토리지 계층을 선택합니다. 여러 용량 풀이 공존할 수 있습니다. 프로비전된 볼륨에는 서비스 계층에 해당하는 성능이 보장됩니다. Azure NetApp Files에서 지원하는 서비스 수준 목록은 Azure NetApp Files의 서비스 수준을 참조하세요.

시나리오 배포

이 솔루션을 구현하려면 Azure 계정이 필요합니다. 체험 계정을 만듭니다.

이 시나리오를 배포하려면 다음 단계를 따릅니다.

  1. Azure NetApp Files를 사용할 수 있게 해주는 리소스 공급자를 등록합니다.
  2. AKS와 함께 Astra Control Service를 사용하기 위한 요구 사항을 검토합니다.
  3. Azure Portal을 사용하여 NetApp 계정을 만듭니다.
  4. Azure NetApp Files 계정에서 용량 풀을 설정합니다.
  5. Azure NetApp Files에 대한 서브넷을 위임합니다.
  6. Astra Control Service에 대한 서비스 주체를 만들어 AKS 클러스터를 검색하고 백업, 복원 및 데이터 관리 작업을 수행하는 데 사용할 수 있습니다.
  7. NetApp Cloud Central 계정을 만들어 Astra Control Service에 등록합니다.
  8. 애플리케이션 관리를 시작하려면 Astra Control Service에 AKS 클러스터를 추가합니다.
  9. Astra Control Service에서 애플리케이션을 검색합니다. 애플리케이션을 검색하고 관리하는 방법은 애플리케이션을 배포하고 식별하는 방법에 따라 다릅니다. 일반적인 식별 전략에는 전용 네임스페이스의 애플리케이션 개체 그룹화, 애플리케이션을 구성하는 개체에 레이블 지정, Helm 차트 사용이 포함됩니다. Astra Control Service는 세 가지 전략을 모두 지원합니다.
  10. 보호 정책을 수립하여 애플리케이션을 백업 및 복원합니다. 보호 정책을 정의하기 전에 워크로드를 명확하게 식별합니다. 필수 조건은 Astra Control Service가 각 애플리케이션을 고유하게 검색할 수 있다는 것입니다. 자세한 내용은 앱 관리 시작을 참조 하세요.

애플리케이션을 보호하기 위해 수행할 수 있는 단계는 Astra Control Service 및 Azure NetApp Files를 사용하여 AKS 워크로드의 재해 복구를 참조 하세요.

Astra Control Service에 대한 자세한 내용은 Astra Control Service 설명서를 참조 하세요.

참가자

Microsoft에서 이 문서를 유지 관리합니다. 이 문서를 처음에 작성한 기여자는 다음과 같습니다.

보안 주체 작성자:

기타 기여자:

다음 단계