Amazon Web Services 한국 블로그

AWS Backup, Amazon EKS 연동으로 쿠버네티스 클러스터 보안 확보 가능

오늘은 AWS Backup에서 Amazon EKS를 지원한다는 소식을 알려드립니다. 이 지원을 통해 기타 Amazon Web Services(AWS) 서비스에서 신뢰하는 중앙 집중식 플랫폼을 그대로 사용해 Kubernetes 애플리케이션 보안을 확보할 수 있습니다. 이 통합을 이용하면 컨테이너화된 애플리케이션을 보호할 때 수반되는 복잡성이 해소되고, 동시에 클러스터 구성과 애플리케이션 데이터에 모두 엔터프라이즈급 백업 기능을 제공합니다. AWS Backup은 AWS 및 온프레미스 워크로드 전체에서 데이터 보호를 중앙 집중화하고 자동화하는 완전관리형 서비스입니다. Amazon Elastic Kubernetes Service(Amazon EKS)는 Kubernetes 클러스터의 가용성과 확장성을 관리하기 위한 완전관리형 Kubernetes 서비스입니다. 이 새로운 기능을 이용하면 Amazon EKS 환경의 데이터 보호를 다른 AWS 서비스와 함께 중앙에서 관리하고 자동화할 수 있습니다.

지금까지 백업을 하려면 고객이 EKS 클러스터를 백업하기 위해 사용자 지정 솔루션이나 타사 도구에 의존해야 해서 각각의 클러스터에 복잡한 스크립팅과 유지 관리가 필요했습니다. AWS Backup에서 Amazon EKS가 지원되면 EKS 클러스터(Kubernetes 배포 및 리소스)와 스테이트풀 데이터(Amazon Elastic Block Store(Amazon EBS), Amazon Elastic File System(Amazon EFS), Amazon Simple Storage Service(Amazon S3)에 저장된 데이터만)를 모두 보호하는 하나의 중앙 집중식 정책 기반 솔루션을 제공해 이 오버헤드가 없어지고, 여러 클러스터에서 사용자 지정 스크립트를 관리할 필요가 없습니다. 복원의 경우, 이전에는 고객이 EKS 백업을 소스 EKS 클러스터나 신규 EKS 클러스터인 대상 EKS 클러스터에 복원해야 했습니다. 이 경우 복원하기 전에 미리 EKS 클러스터 인프라를 프로비저닝해야 했습니다. 이 새로운 기능을 이용하면 EKS 클러스터 백업을 복원하는 동안 이전 EKS 클러스터 구성 설정에 기반해 신규 EKS 클러스터를 만들고 이 신규 EKS 클러스터에 복원할 옵션도 생깁니다. 이때 AWS Backup이 고객을 대신해 EKS 클러스터 프로비저닝을 관리합니다.

이 지원에는 EKS 클러스터 하나 또는 여러 개를 보호하기 위한 정책 기반 자동화가 포함됩니다. 이 데이터 보호 정책 하나로 AWS Backup이 지원하는 모든 서비스에서 일관된 경험이 제공됩니다. 이를 통해 변경 불가능한 백업을 만들어 악의적이거나 우발적인 변경을 방지할 수 있기 때문에 고객이 규제 준수 니즈에 부합하는 데 도움이 됩니다. 고객 데이터 손실 또는 클러스터 가동 중지 시간 이벤트가 발생하는 경우, 고객이 사용하기 간편한 인터페이스를 사용해 암호화된, 변경 불가능한 백업에서 EKS 클러스터 데이터를 쉽게 복구할 수 있고 대규모 EKS 클러스터를 실행하는 비즈니스 연속성을 유지할 수 있습니다.

작동 방식
제가 AWS Backup에 EKS 클러스터 온디맨드 백업 지원을 어떻게 설정했는지 보여드리겠습니다. 우선 백업 프로세스를 단계별로 안내한 다음 EKS 클러스터 복원을 시연하겠습니다.

백업
AWS Backup 콘솔의 왼쪽 탐색 창에서 설정을 선택하고 리소스 구성을 선택해 AWS Backup에서 EKS 클러스터 보호를 활성화하기로 옵트인합니다.

Amazon EKS를 활성화했으니, 이제 보호된 리소스에서 온디맨드 백업 만들기를 선택해 기존 EKS 클러스터 floral-electro-unicorn의 백업을 만듭니다.

설정에서 EKS를 활성화하면 EKS 클러스터의 온디맨드 백업을 만들 때 해당 EKS가 리소스 유형으로 표시됩니다. 계속 진행해서 EKS 리소스 유형과 클러스터를 선택합니다.

나머지 정보는 기본값으로 두고, IAM 역할 선택을 선택해 제가 만들고, 저를 대신해 백업을 만들어 관리할 때 AWS Backup이 담당해야 하는 필수 권한으로 사용자 지정한 역할(test-eks-backup)을 선택합니다. 온디맨드 백업 만들기를 선택해 프로세스를 확정합니다.


작업이 시작되었고, 이 작업이 실행되어 EKS 클러스터 상태와 영구 볼륨을 둘 다 백업하기 시작합니다. 백업에 Amazon S3 버킷이 연결된 경우, 역할에 추가적인 Amazon S3 백업 권한 AWSBackupServiceRolePolicyForS3Backup을 추가해야 합니다. 이 정책에는 AWS Backup이 각종 Amazon S3 버킷을 백업하는 데 필요한 권한이 포함되어 있고, 여기에는 버킷 및 모든 연결된 AWS KMS 키의 모든 객체에 대한 액세스 권한도 포함됩니다.


작업이 완료되어 이제 EKS 클러스터 floral-electro-unicorn이 AWS Backup으로 백업되었습니다.


복원
AWS Backup 콘솔을 사용해 EKS 백업 복합 복원 시점을 선택해 EKS 클러스터 백업 복원 프로세스를 시작하고, 복원을 선택합니다.


EKS 백업 전체를 복원하기 위해 전체 EKS 백업 복원을 선택합니다. 기존 클러스터로 복원하려면 기존 클러스터를 선택한 다음 드롭다운 목록에서 해당 클러스터를 선택합니다. 각각의 Kubernetes 리소스가 복원될 순서로는 기본 순서를 선택합니다.

그런 다음 EKS 클러스터와 함께 복원될 영구 스토리지 리소스의 복원을 구성합니다.


다음으로, IAM 역할을 선택해 복원 작업을 실행합니다. 기본적으로 보호된 리소스 태그 확인란이 선택되어 있습니다. 그대로 두고, 다음을 선택합니다.

모든 정보를 검토한 다음에 복원을 선택해 프로세스를 확정하고 작업을 시작합니다.


드롭다운 화살표를 선택하면 EKS 클러스터 상태와 연결된 영구 볼륨의 복원 상태에 대한 자세한 정보가 표시됩니다. 이 단계별 안내에서는 각각의 복원 시점이 모두 무사히 복원되었습니다. 백업의 몇몇 부분이 실패하는 경우, 백업된 영구 스토어(예: Amazon EBS 볼륨)와 클러스터 구성 설정을 개별적으로 복원할 수도 있습니다. 하지만 전체 EKS 백업을 복원할 수는 없습니다. 백업된 리소스는 복원에 사용할 수 있고, EKS 클러스터 복원 시점 아래에 중첩된 복원 시점으로 나열됩니다. 일부만 실패한 경우, 실패한 부분에 대한 알림이 표시됩니다.


이점
AWS Backup에서 Amazon EKS를 지원하여 제공되는 몇 가지 이점은 다음과 같습니다.

  • 완전관리형 멀티 클러스터 백업 경험이므로, 사용자 지정 스크립트, 타사 솔루션 관리와 연관되어 발생하는 오버헤드가 없습니다.
  • 중앙 집중식, 정책 기반 백업 관리라서 백업 수명 주기 관리가 간소해지고, EKS를 비롯한 여러 AWS 서비스 전체에서 애플리케이션 데이터를 원활하게 백업 및 복구할 수 있게 됩니다.
  • 백업 저장소를 사용해 백업을 저장하고 정리할 수 있습니다. 백업 저장소에 정책을 할당해 사용자에게 백업 계획 및 온디맨드 계획을 만들 액세스 권한을 부여하되, 만들고 나서 복원 시점을 삭제하지는 못하도록 제한할 수 있습니다.

알아두면 좋은 정보
아래와 같은 몇 가지 유용한 사실을 알아두면 좋습니다.

  • AWS Backup을 사용해 EKS 클러스터를 보호하려면 AWS Backup 콘솔, API 또는 AWS Command Line Interface(AWS CLI)를 사용하세요. 아니면 클러스터를 만든 다음 해당 클러스터의 온디맨드 백업을 만들 수도 있습니다.
  • 여러 계정과 AWS 리전에 EKS 백업의 보조 사본을 만들어 우발적인 삭제 위험을 최소화할 수 있습니다.
  • AWS Backup 콘솔, API 또는 AWS CLI를 사용해 EKS 백업을 복원할 수 있습니다.
  • 기존 클러스터로 복원해도 Kubernetes 버전이나 각종 데이터를 재정의하지 않습니다. 복원은 비파괴적이기 때문입니다. 대신, 백업과 소스 리소스 간 차이의 복원이 생깁니다.
  • 네임스페이스의 경우, Kubernetes 리소스가 클러스터 수준에서 범위가 지정될 수 있기 때문에 복원 성공을 보장하기 위해 기존 클러스터에만 복원됩니다.

고객의 소리

Salesforce의 Sr. Director of Engineering인 Srikanth Rajan은 이렇게 말했습니다. “탄탄한 백업 및 복원 계획이 없는 상태에서 소프트웨어 버그나 의도치 않은 클러스터 삭제로 인해 Kubernetes 컨트롤 플레인이 손실되면 큰일입니다. 그래서 AWS에서 새로운 EKS 백업 및 복원 특성을 롤아웃한다니 반갑습니다. 이번 일은 Kubernetes 플랫폼의 중대한 복원력 간극을 해결하는 데 큰 진전입니다.”

정식 출시
AWS Backup에서의 Amazon EKS 지원은 모든 AWS 상용 리전(중국 제외)과, AWS Backup 및 Amazon EKS가 제공되는 AWS GovCloud(미국)에서 지금 바로 사용할 수 있습니다. 향후 업데이트 여부는 전체 리전 목록을 확인하세요.

자세한 내용은 AWS Backup 제품 페이지AWS Backup 요금 페이지를 참조하세요.

AWS Backup에서 EKS 클러스터를 보호하는 데 이 기능을 써보시고, 어떻게 생각하시는지 AWS Backup의 AWS re:Post나 평소 교류하는 AWS Support 담당자를 통해 피드백을 보내 주세요.

Veliswa.