안녕하세요!! 요즘 IT 환경에 관심이 많으신 분들께서는 Kubernetes 라는 단어를 많이 들어보셨을겁니다. Kubernetes에 대한 관심이 점점 높아지고 있으며 많은 기업들이 새로운 시스템 및 서비스를 Kubernetes를 기반으로 구축했다는 소식도 들려오고 있습니다.
이번 포스팅에서는 이렇게 핫한 Kubernetes를 Azure에서 운영 할 수 있는 Azure Kubernetes Service(이하 AKS) 환경에서 왜 Azure NetApp Files(이하 ANF)를 스토리지 솔루션으로써 적합한지에 대해 말씀 드리고자 합니다.
1. Azure Kubernetes Service(AKS)란?
Kubernetes(K8s)는 컨테이너화 된 어플리케이션, 스토리지 및 네트워킹 리소스를 관리하기 위한 플랫폼으로써, 다양한 API를 통해 수 많은 컨테이너들을 쉽고 편리하게 배포할 수 있습니다. 하지만 Kubernetes는 엔터프라이즈급과 같은 대규모 환경에서 설치 및 유지 부분에서 매우 복잡해질 수 있습니다. 이런 복잡함을 해결하기 위해 Azure에서는 관리형 Kubernetes 서비스인 AKS를 출시했습니다.
프로세스를 단순화 하기 위해서 Azure는 AKS Control Plane을 관리하고 고객은 어플리케이션이 구동되는 AKS 노드에 대해서만 비용을 지불하면 됩니다. 참고로 AKS는 Microsoft에서 오픈 소스로 출시한 Azure Kubernetes Service Engine을 기반으로 구동됩니다.
2. AKS + ANF = 성능향상
ANF는 NetApp의 스토리지 기술을 기반으로 구축 된 MS Azure의 초고성능 파일 스토리지 서비스입니다. 이에 따라 ANF를 AKS의 기본 데이터 스토리지 솔루션으로 사용 할 경우 아래와 같은 이점을 얻을 수 있습니다.
- 일관 된 낮은 레이턴시: ms 미만의 일관 된 레이턴시로 어플리케이션의 응답성이 매우 빨라집니다.
- 확장성: ANF의 볼륨 사이즈를 단 몇 초 만에 최대 100TB까지 확장할 수 있습니다.
- 업무 단순화: 3가지의 서비스 수준(Standard, Premium, Ultra)을 제공함에 따라 IT 담당자는 어플리케이션의 응답성에 대한 걱정 없이 중요한 업무에 집중 할 수 있습니다.
3. AKS + ANF = Persistent Volume 문제 해결
Kubernetes는 기본적으로 상태가 없는 'Stateless' 앱 컨테이너를 사용합니다. 상태가 없다는 것은 컨테이너를 종료하고 새로 실행시킬 경우 컨테이너만의 종속적인 특별한 상태가 없기 때문에 자유롭게 다른 노드로 이동시킬 수 있다는 뜻 입니다. 하지만 이로 인해 컨테이너에 쓰여진 데이터는 기본적으로 컨테이너가 삭제될 때 함께 사라지게 됩니다. 컨테이너의 생명주기와 관계 없이 데이터를 영구적으로 저장해야하거나 여러개의 컨테이너가 하나의 저장 공간을 공유하여 데이터를 읽거나 쓰는 경우가 많습니다.
그렇기 때문에 데이터 관리를 위하여 외부에 위치하는 Persistent Volume이 반드시 필요합니다. Kubernetes에서 Volume은 컨테이너 단위가 아니라 Pod 단위의 저장공간이기 때문에 해당 Pod 안에 속해 있는 여러 개의 컨테이너가 해당 Volume을 공유해서 사용할 수 있습니다. 그 뿐만 아니라 AKS-ANF 환경에서는 NFS 프로토콜을 사용하기 때문에 여러 개의 Pod가 하나의 Persistent Volume을 공유하여 사용 할 수도 있습니다. 이러한 Persistent Volume을 사용한다면 Pod를 재시작하더라도 데이터를 보존할 수 있기 때문에 안정적인 서비스 운영이 가능해집니다. 하지만 배포 되는 어플리케이션의 성능은 스토리지 솔루션의 성능과 밀접한 관련이 있습니다.
엔터프라이즈급 초고성능 파일 스토리지인 ANF는 AKS와 완벽한 서비스 통합을 제공합니다. 또한 ANF는 자체적인 데이터 저장 및 관리 기능을 통하여 AKS의 Persistent Volume 운영에 필요한 요구사항들을 모두 만족 시킬 수 있습니다.
- 가용성: ANF에서 기본 제공 되는 고가용성(High Availability, HA)을 통해 AKS 관리자는 Persistent Volume의 고가용성 부분에 대해 걱정하지 않아도 됩니다.
- Persistent Volume 액세스: ANF를 통하여 생성 된 동일한 Persistent Volume에 여러개의 Pod가 액세스 할 수 있으므로 일반적으로 마이크로서비스 기반 아키텍처(Microservices Architecture, MSA)와 관련된 공유 스토리지의 요구 사항을 충족 할 수 있습니다. 이 기능은 ANF에서 기본 제공 됩니다.
- 확장성: ANF Volume은 최소 100GB에서 최대 100TB까지 확장할 수 있으므로, 더 이상 Pod의 확장에 대해 저장공간의 한계를 않아도 됩니다.
- 스냅샷: ANF를 통해 생성한 Persistent Volume에 대해 데이터 백업을 위한 스냅샷을 생성 할 경우 추가 공간이 거의 필요하지 않아 매우 용량 효율적입니다. 또한 데이터 손실이 발생하거나 재해 복구(DR) 중 일 경우 생성 된 스냅샷을 통하여 신속하게 AKS 클러스터의 새로운 Pod에 다시 연결할 수 있는 새 Persistent Volume을 생성 및 서비스 재개가 가능합니다.
- 데이터 보호: ANF는 99.9999999%의 데이터 내구성을 보장하여 하드웨어, 네트워크 또는 디스크 관련 오류로부터 Persistent Volume에 저장된 데이터를 보호할 수 있습니다.
- 성능: Standard, Premium, Ultra와 같이 3가지의 성능 계층을 제공하므로 각 Pod 별 성능 요구 사항에 맞춰 스토리지 성능을 적용 할 수 있으며 이를 통해 스토리지 사용에 대한 비용 절감이 가능합니다.
AKS 환경에서 ANF를 통한 Persistent Volume을 사용한다면 기본 인프라 설정 및 스토리지 구성에 대해 고민할 필요 없이 어플리케이션 개발에 집중하는데 필요한 유연성을 얻을 수 있습니다. AKS에 배포 된 ANF의 엔터프라이즈급 마이크로서비스용 Persistent Volume은 그 누구와도 비교할 수 없는 성능, 가용성, 확장성 및 내구성을 제공합니다.
관련하여 궁금하신 내용이 있으시거나 상담이 필요하시다면 언제든 편하게 문의 부탁 드립니다.
감사합니다.
'Azure NetApp Files > Azure NetApp Files 소개' 카테고리의 다른 글
[Azure NetApp Files] 13. SAP on Azure에서 ANF가 적합한 이유 (0) | 2022.05.31 |
---|---|
[Azure NetApp Files] 12. Oracle DB on Azure에서 ANF가 적합한 이유 (0) | 2022.05.23 |
[Azure NetApp Files] 11. HPC on Azure에서 ANF가 적합한 이유 (0) | 2022.05.18 |
[Azure NetApp Files] 10. 간편한 ANF로의 마이그레이션 - Cloud Sync (0) | 2022.04.25 |
[Azure NetApp Files] 9. ANF를 통한 AVD 환경의 운영 리스크 줄이기 (0) | 2022.04.18 |
최근댓글