Devops/Terraform

[테라폼] 테라폼(Terraform) 완전 정복: Alibaba Cloud(Aliyun) 인프라를 Terraform으로 완전 자동화하기: ASK 마스터 - 3

일요일좋아하는사람 2025. 4. 24. 20:16
728x90
반응형

Terraform + Aliyun

이전 글에서는 ECS인스턴스에 대한 자동화, ACK에 대한 자동화에 대해 다뤄 보았습니다.

아래 페이지 참고해주세요.

2025.04.24 - [Devops/Terraform] - [테라폼] 테라폼(Terraform) 완전 정복: Alibaba Cloud(Aliyun) 인프라를 Terraform으로 완전 자동화하기 - 1

 

[테라폼] 테라폼(Terraform) 완전 정복: Alibaba Cloud(Aliyun) 인프라를 Terraform으로 완전 자동화하기 - 1

들어가며테라폼이 무엇인지 개념을 잡았고, AWS 인프라를 테라폼으로 만들어 보았습니다. 이번에는 Alibaba Cloud(Aliyun)인프라를 테라폼으로 사용하는 방법을 알려드리려고 합니다.테라폼에 대한

ilikesunday.tistory.com

2025.04.24 - [Devops/Terraform] - [테라폼] 테라폼(Terraform) 완전 정복: Alibaba Cloud(Aliyun) 인프라를 Terraform으로 완전 자동화하기: ACK 마스터 - 2

 

[테라폼] 테라폼(Terraform) 완전 정복: Alibaba Cloud(Aliyun) 인프라를 Terraform으로 완전 자동화하기: ACK

들어가며이전 글에서는 ECS인스턴스에 대한 자동화에 대해 다뤄 보았습니다.아래 페이지 참고해주세요.2025.04.24 - [Devops/Terraform] - [테라폼] 테라폼(Terraform) 완전 정복: Alibaba Cloud(Aliyun) 인프라를 Te

ilikesunday.tistory.com

 

 

들어가며

세번째로, Alibaba Cloud의 ASK(Aliyun Serverless Kubernetes)는 물리적인 노드 프로비저닝 없이 Kubernetes 클러스터를 운영할 수 있는 완전 관리형 서버리스 Kubernetes 서비스입니다. 그러나 2024년부터 Alibaba Cloud에서는 새로운 ASK 클러스터 생성은 Terraform을 통해 직접적으로 지원하지 않으며, 기존 클러스터에 대한 관리 중심으로만 접근이 가능합니다.

이 문서는 Terraform을 통해 기존 ASK 클러스터를 조회하거나, 일부 설정을 자동화하는 방법에 대해 안내합니다.

목차

  1. Alibaba Cloud ASK란?
  2. Terraform으로 가능한 작업
  3. 기존 ASK 클러스터 조회 예제
  4. 클러스터와 통합할 수 있는 리소스
  5. 참고 자료 및 제한사항

1. Alibaba Cloud ASK란?

ASK는 Kubernetes의 모든 기능을 제공하면서도 노드 관리가 필요 없는 서버리스 클러스터입니다. Pod 단위로 과금되며, 리소스 할당과 확장, 축소가 자동으로 이루어지는 점이 특징입니다.

  • 운영 부담 감소 (노드 관리 불필요)
  • 과금은 사용한 만큼
  • Pod 단위로 동적 확장
  • 하이브리드 클러스터 구성 가능 (ECS 노드 + 서버리스 노드 혼합 가능)

2. Terraform으로 가능한 작업

현재 Terraform에서는 ASK 클러스터의 신규 생성은 불가능합니다. 하지만 다음과 같은 작업은 지원 가능합니다:

  • 기존 ASK 클러스터 정보 조회
  • ACK 클러스터에 서버리스 노드 풀 구성 (간접적 ASK 활용)
  • Kubernetes 리소스 정의를 통한 클러스터 내부 리소스 자동화 (kubectl provider 등 활용)

3. 기존 ASK 클러스터 조회 예제

Terraform에서 alicloud_cs_managed_kubernetes 데이터를 통해 기존 클러스터 정보를 가져올 수 있습니다:

data "alicloud_cs_managed_kubernetes_clusters" "ask" {
  output_file = "ask_clusters.json"
}

결과 파일에서 "cluster_type": "Ask" 인 항목이 있는지 확인하면 됩니다.

또는 아래처럼 특정 클러스터를 대상으로 상세 정보를 조회할 수 있습니다:

data "alicloud_cs_managed_kubernetes" "my_ask_cluster" {
  cluster_id = "<기존 ASK 클러스터 ID>"
}

4. 클러스터와 통합할 수 있는 리소스

Terraform에서는 다음과 같은 리소스들과 통합하여 ASK 클러스터를 간접적으로 활용할 수 있습니다:

  • alicloud_cr_namespace: Container Registry와 통합
  • alicloud_ram_role + RAM Role Policy: 서비스 계정 권한 구성
  • kubectl_manifest: Kubernetes 내부 오브젝트 자동화 (Helm과 결합 가능)
  • alicloud_log_project 및 log_store: 로그 수집 구성

참고: 서버리스 노드 풀은 alicloud_cs_kubernetes_node_pool에서 type = "VirtualKubelet"로 설정하면 구성할 수 있었으나, 현재는 Terraform 최신 버전에서 deprecated 되었거나 지원 제한이 있습니다.

5. 참고 자료 및 제한사항

  • 2024년 이후 Alibaba Cloud 콘솔에서도 신규 ASK 클러스터 생성을 제한하고 있음
  • Terraform Provider에서도 신규 ASK 리소스 타입 추가 계획 없음 (2025년 기준)
  • 기존 ASK 환경은 점차적으로 ACK로 통합될 가능성 있음

공식 문서 링크


ASK는 노드 운영이 필요 없는 이상적인 환경을 제공하지만, 현재로서는 Terraform으로 완전한 클러스터 생성 자동화는 불가능합니다. 따라서 관리 목적으로 사용하거나, ACK 기반으로 서버리스 환경을 구성하는 것이 현실적인 대안입니다.

728x90
반응형