Tüm Ürünler
Search
Belge Merkezi

Enterprise Distributed Application Service:Use Terraform to create an ACK cluster and deploy an application

Son Güncelleme:Oct 03, 2026

Terraform, altyapınızı kod olarak tanımlamanızı sağlar. Bu sayede Container Service for Kubernetes (ACK) kümesi oluşturabilir, bunu Enterprise Distributed Application Service (EDAS) içine aktarabilir ve bir uygulamayı tek bir otomatik iş akışıyla dağıtabilirsiniz.

Nasıl çalışır?

Dağıtım işlemi üç Terraform kaynağını zincirleme şekilde kullanır:

  1. alicloud_cs_managed_kubernetes -- ACK içinde yönetilen bir Kubernetes kümesi oluşturur.

  2. alicloud_edas_k8s_cluster -- ACK kümesini EDAS içine aktarır.

  3. alicloud_edas_k8s_application -- Uygulamayı EDAS tarafından yönetilen kümeye dağıtır.

Terraform arayüzleri

Veri kaynakları

Veri kaynağı Açıklama
alicloud_edas_applications Hem Elastic Compute Service (ECS) hem de ACK uygulamaları dahil olmak üzere EDAS uygulamalarını sorgular
alicloud_edas_clusters Hem ECS hem de ACK kümeleri dahil olmak üzere EDAS kümelerini sorgular

Kaynaklar

Kaynak Açıklama
alicloud_edas_k8s_cluster ACK kümesini EDAS içine aktarır
alicloud_edas_k8s_application EDAS tarafından yönetilen bir ACK kümesinde uygulama oluşturur ve dağıtır

Yapılandırma örneği

Bu örnek, ACK içinde yönetilen bir Kubernetes kümesi oluşturur, onu EDAS içine aktarır ve konteyner tabanlı bir uygulama dağıtır. Yapılandırma parametrelerini ihtiyacınıza göre değiştirin.

Not

Terraform çeşitli ACK küme türlerini destekler. Bu örnekte yönetilen bir Kubernetes kümesi kullanılmıştır.

Not

Bu örnek, yapılandırmanızda VPC ve vSwitch kaynaklarını (örneğin alicloud_vpc ve alicloud_vswitch) ile bir alicloud_instance_types veri kaynağını zaten tanımladığınızı varsayar. Ayrıntılar için Alibaba Cloud Terraform sağlayıcı belgelerine bakın.

Adım 1: Yönetilen bir Kubernetes kümesi oluşturun

resource "alicloud_cs_managed_kubernetes" "default" {
  name                        = var.name
  worker_instance_types       = [data.alicloud_instance_types.default.instance_types.0.id]
  worker_vswitch_ids          = [alicloud_vswitch.default.id]
  worker_number               = "1"
  password                    = "Test12345"
  pod_cidr                    = "172.20.0.0/16"
  service_cidr                = "172.21.0.0/20"
  worker_disk_size            = "50"
  worker_disk_category        = "cloud_ssd"
  worker_data_disk_size       = "20"
  worker_data_disk_category   = "cloud_ssd"
  worker_instance_charge_type = "PostPaid"
  slb_internet_enabled        = "true"
}

Aşağıdaki tabloda ana parametreler açıklanmıştır:

Parametre Açıklama Örnek
name Küme adı Bir değişkenden başvurulur
worker_instance_types Çalışan düğümler için ECS örnek türü ecs.g6.large
worker_vswitch_ids Çalışan düğümler için vSwitch ID'si Bir alicloud_vswitch kaynağından başvurulur
password Çalışan düğümler için SSH oturum açma parolası Test12345
pod_cidr Pod IP adresleri için CIDR bloğu. VPC veya hizmet CIDR aralıklarıyla çakışmamalıdır. 172.20.0.0/16
service_cidr Hizmet IP adresleri için CIDR bloğu. VPC veya pod CIDR aralıklarıyla çakışmamalıdır. 172.21.0.0/20

Adım 2: Küme EDAS içine aktarın

resource "alicloud_edas_k8s_cluster" "default" {
  cs_cluster_id = "xxxx-xxx-xxx"
}

Bu kaynak, 1. Adımda oluşturulan ACK kümesini EDAS içine aktarır. Aktarımdan sonra EDAS, bu kümedeki uygulama dağıtımlarını yönetebilir.

Adım 3: Uygulama dağıtın

resource "alicloud_edas_k8s_application" "default" {
  application_name = "shesheng-test-k8s"
  cluster_id       = "45bc8232-3233-46be-ab20-6d4a9b506d5c"
  replicas         = 1
  package_type     = "Image"
  image_url        = "cr.registry.cloud.ste2.com/test/gw-provider:1028"
  command          = "/bin/sh"
  command_args     = ["-c", "while true; do echo hello; sleep 1000;done"]
}

Aşağıdaki tabloda ana parametreler açıklanmıştır:

Parametre Açıklama
application_name EDAS'taki uygulamanın adı
cluster_id 2. Adımdaki EDAS tarafından yönetilen kümenin ID'si
replicas Pod çoğaltma sayısı
package_type Dağıtım paketi türü. Konteyner görüntüsü dağıtımları için Image olarak ayarlayın.
image_url Konteyner görüntüsünün tam URL'si
command Konteyner için giriş noktası komutu
command_args Giriş noktası komutuna geçirilen bağımsız değişkenler

Altyapıyı dağıtın

Terraform yapılandırmasını başlatmak ve uygulamak için aşağıdaki komutları çalıştırın:

  1. Terraform çalışma dizinini başlatın.

    terraform init

    Beklenen çıktı:

    Initializing provider plugins...
    - Installing aliyun/alicloud...
    
    Terraform has been successfully initialized!
  2. Değişiklikleri önizleyin.

    terraform plan
  3. Tüm kaynakları oluşturmak için yapılandırmayı uygulayın.

    terraform apply

    İstendiğinde onaylamak için yes yazın. Küme oluşturma işlemi genellikle 10 ila 15 dakika sürer.

    Beklenen çıktı:

    Apply complete! Resources: X added, 0 changed, 0 destroyed.

Kaynakları temizleyin

Sürekli ücretlendirmeyi önlemek için, bu yapılandırma tarafından oluşturulan tüm kaynaklara artık ihtiyaç duymadığınızda bunları yok edin:

terraform destroy

İstendiğinde onaylamak için yes yazın. Bu işlem EDAS uygulamasını, EDAS küme aktarımını ve ACK kümesini kaldırır.

Uyarı

terraform destroy komutu, bu yapılandırma tarafından yönetilen tüm kaynakları kalıcı olarak siler. Bu komutu çalıştırmadan önce önemli verilerinizi yedekleyin.

İlgili bilgiler