Confidential GKE Node 심층 탐구—미리보기 공개
Ibrahim Damlaj
Product Manager, Google Kubernetes Engine Security team
Anoosh Saboori
Group Product Management Lead
* 본 아티클의 원문은 2020년 10월 2일 Google Cloud 블로그(영문)에 게재되었습니다.
기존 온프레미스 아키텍처보다 우월한 컨테이너 및 Kubernetes의 이점은 이미 여러 문서를 통해 충분히 입증되었으며 많은 사람들이 알고 있습니다. 하지만 클라우드로 이전을 고려할 때 조직은 위험을 최소화하고 데이터의 잠재적 노출을 억제하기를 원합니다.
7월에 Google은 사용 중 데이터를 애플리케이션의 코드 변경 없이 처리와 동시에 암호화하는 획기적인 기술인 컨피덴셜 컴퓨팅 제품군의 출시를 발표했습니다. 또한 이 제품군의 첫 제품으로 컨피덴셜 VM을 소개했습니다. 이 제품은 VM에 필적하는 성능을 갖추고 있습니다.
몇 주 전에는 Confidential Google Kubernetes Engine(GKE) Node가 미리보기로 출시될 예정이라는 발표를 했습니다. 그리고 오늘, 사이버 보안의 달을 맞이하여 Confidential GKE Node의 미리보기를 출시합니다. Confidential GKE Node를 사용하면 GKE 클러스터 안에서 처리되는 사용 중 상태의 데이터를 암호화할 수 있으며 성능 저하도 거의 없습니다.
AMD SEV(Secure Encrypted Virtualization) 기능을 활용하는 컨피덴셜 VM을 기반으로 한 Confidential GKE Node는 AMD EPYC™ 프로세서에 포함된 AMD Secure Processor에서 생성 및 관리하는 전용 노드별 인스턴스 키를 사용해 노드의 메모리와 노드에서 실행되는 워크로드를 암호화해 줍니다. 이 키는 노드를 생성하는 동안 AMD Secure Processor에 의해 생성되며 프로세서 내에만 머무르므로 Google이나 호스트에서 실행되는 VM에는 제공되지 않습니다. 이는 저장 데이터 및 전송 중 데이터 암호화를 수행하는 다른 기존 솔루션은 물론 GKE Sandbox와 같은 워크로드 격리 모델과 결합되어 더욱 강력한 멀티 레이어의 심층 방어를 통해 데이터 무단 반출 공격으로부터 보호합니다. 또한 Confidential GKE Node는 보안 GKE 노드를 활용해 루트키트 및 부트키트로부터 보호하여 Confidential GKE Node에서 실행되는 운영체제의 무결성을 보장해 줍니다.
Confidential GKE Node 사용 설정
새 클러스터를 만들 때 --enable-confidential-nodes
옵션을 지정하면 Confidential GKE Node를 사용 설정할 수 있습니다.
Confidential GKE 클러스터를 만들면 생성된 모든 노드 및 노드 풀이 기밀로 보호됩니다.
describe 명령어를 사용하면 클러스터에서 Confidential GKE Node를 사용 중인지 확인할 수 있습니다.
gcloud beta container clusters describe [CLUSTER_NAME]
Confidential GKE Node가 사용 설정되면 명령어의 출력에 다음과 같은 줄이 포함됩니다.
confidentialNodes:
enabled:true
Confidential GKE Node를 사용해 실행하도록 애플리케이션 사용 설정
Confidential GKE Node를 활용하려면 애플리케이션에서 무엇을 변경해야 할지 궁금하실 것입니다. 사실 아무것도 변경할 필요가 없습니다. Google에서는 기존 애플리케이션의 간단한 리프트 앤 시프트를 목표로 컨피덴셜 컴퓨팅에 접근하고 있는 만큼 코드 변경 없이 현재 실행 중인 모든 GKE 워크로드를 Confidential GKE Node에서 실행할 수 있습니다.
원하는 경우 애플리케이션 구성을 저장하는 GitOps 모델을 사용할 때 cloud.google.com/gke-confidential-nodes
nodeSelector를 사용해 민감한 워크로드는 Confidential GKE Node에만 예약되도록 선언적으로 보장할 수 있습니다. 이렇게 하면 워크로드를 Confidential GKE Node에서만 실행했음을 추후 감사관에게 입증해야 할 때 유용할 수 있습니다.
컨피덴셜 컴퓨팅 및 클라우드 보안에 대한 그 밖의 자세한 내용을 최신 Google Cloud Security Talks에서 확인하세요.