Kluster ACK Serverless melakukan penskalaan sesuai permintaan tanpa perlu mengelola node, sehingga cocok untuk beban kerja dengan lalu lintas yang bervariasi. Enterprise Distributed Application Service (EDAS) terintegrasi dengan Container Service for Kubernetes (ACK) untuk mengelola seluruh siklus hidup aplikasi berbasis kontainer di kluster tersebut.
Tutorial ini memandu Anda melalui proses penyebarluasan aplikasi Java di kluster ACK Serverless menggunakan paket demo JAR atau WAR yang disediakan oleh EDAS.
Penyebarluasan dilakukan dalam tiga tahap:
Buat kluster ACK Serverless di konsol ACK.
Impor kluster ke EDAS agar EDAS dapat mengelola aplikasi di dalamnya.
Sebarluaskan aplikasi menggunakan paket JAR atau WAR melalui konsol EDAS.

Jika Anda sudah memiliki kluster ACK Serverless, lewati ke Langkah 2: Impor kluster ke EDAS. Jika kluster sudah diimpor, langsung lanjut ke Langkah 3: Sebarluaskan aplikasi.
Prasyarat
Sebelum memulai, pastikan Anda telah:
Mengaktifkan EDAS dan ACK untuk Akun Alibaba Cloud Anda. Lihat Aktifkan EDAS dan Panduan cepat ACK.
Memberikan peran default ACK kepada akun Anda. Lihat Peran default ACK.
Langkah 1: Buat kluster ACK Serverless
Masuk ke konsol ACK dan buat kluster ACK Serverless. Untuk petunjuknya, lihat Buat kluster ASK.
Langkah 2: Impor kluster ke EDAS
Saat Anda mengimpor kluster ACK, EDAS secara otomatis menginstal komponen-komponen berikut:
Component | Purpose |
ack-ahas-sentinel-pilot | Throttling and degradation protection |
ack-arms-pilot | Application Real-Time Monitoring Service (ARMS) agent |
ack-arms-prometheus | Prometheus monitoring |
Untuk mengimpor kluster:
Masuk ke konsol EDAS. Di panel navigasi sebelah kiri, pilih Resource Management > Serverless Kubernetes Clusters.
Di bilah navigasi atas, pilih wilayah dan ruang mikroservis tempat kluster ACK Serverless Anda berada. Klik Synchronize Serverless Kubernetes Cluster.
Temukan kluster target dan klik Import di kolom Actions.
Pada pesan Warning, klik OK.
Pada kotak dialog Precheck for Import, klik Continue.
Pada kotak dialog Import Kubernetes Cluster, pilih ruang mikroservis dari daftar drop-down Microservice Namespace, aktifkan atau nonaktifkan Service Mesh sesuai kebutuhan, lalu klik Import.
Verifikasi impor
Setelah impor selesai, pastikan kolom Cluster Status menampilkan running dan kolom Import Status menampilkan Imported.
Langkah 3: Sebarluaskan aplikasi
Langkah ini mencakup pembuatan aplikasi dan penyebarluasannya menggunakan paket JAR atau WAR. Proses keseluruhan sama untuk kedua jenis paket. Satu-satunya perbedaan terletak pada pemilihan lingkungan runtime:
Package type | Runtime environment | Configurable parameters |
JAR | Java (Dubbo atau Spring Boot) | Java Environment |
WAR | Tomcat (Dubbo atau Spring) | Java Environment, Container Version |
WAR atau FatJar | EDAS-Container (HSF) (High-Speed Service Framework) | Java Environment, Pandora Version, Ali-Tomcat Version |
Langkah-langkah berikut menggunakan paket JAR sebagai contoh. Jika Anda menyebarluaskan paket WAR, pilih Tomcat atau EDAS-Container (HSF) alih-alih Java pada langkah Basic Information.
3a. Buat aplikasi
Masuk ke konsol EDAS. Di panel navigasi sebelah kiri, pilih Application Management > Applications.
Di bilah navigasi atas, pilih wilayah dan ruang mikroservis. Klik Create Application.
3b. Konfigurasikan informasi dasar
Pada langkah Basic Information, konfigurasikan parameter berikut dan klik Next.
Parameter | Description |
Cluster Type | Pilih Kubernetes Clusters. |
Application Source Type | Pilih Default. |
Hosted Applications | Pilih bahasa pemrograman. Tutorial ini menggunakan Java. Untuk menyebarluaskan aplikasi PHP atau multibahasa, lihat Build PHP applications from source code and deploy them in ACK clusters. |
Select Application | Pilih lingkungan runtime berdasarkan jenis aplikasi dan paket penyebarluasan Anda. Lihat tabel opsi runtime di atas. Untuk menyebarluaskan menggunakan gambar, lihat Use an image to deploy a Java microservices application in a Kubernetes cluster. |
OpenJDK 17 compatibility
OpenJDK 17 kompatibel dengan Dubbo 2.7.14 ke atas atau Dubbo 3.0.6 ke atas. Tabel berikut mencantumkan kombinasi versi yang telah diuji.
Dubbo version | Spring Boot version | Nacos client version | API call | ARMS monitoring | Service list |
2.7.14 | 2.7.9 | 1.4.4 | Supported | Supported | Supported |
2.7.14 | 2.7.9 | 2.1.2 | Supported | Supported | Supported |
2.7.14 | 2.7.9 | 2.2.0 | Supported | Supported | Supported |
2.7.22 | 2.7.9 | 1.4.4 | Supported | Supported | Supported |
2.7.22 | 2.7.9 | 2.1.2 | Supported | Supported | Supported |
2.7.22 | 2.7.9 | 2.2.0 | Supported | Supported | Supported |
3.0.6 | 2.7.9 | 1.4.4 | Supported | Supported | Supported |
3.0.6 | 2.7.9 | 2.1.2 | Supported | Supported | Supported |
3.0.6 | 2.7.9 | 2.2.0 | Supported | Supported | Supported |
3.1.7 | 2.7.9 | 1.4.4 | Supported | Supported | Supported |
3.1.7 | 2.7.9 | 2.1.2 | Supported | Supported | Supported |
3.1.7 | 2.7.9 | 2.2.0 | Supported | Supported | Supported |
3c. Konfigurasikan pengaturan penyebarluasan
Pada langkah Configurations, konfigurasikan parameter berikut dan klik Next.
Pengaturan lingkungan dan kluster:
Parameter | Description |
Microservice Namespace | Pilih ruang mikroservis yang telah Anda buat. Default-nya adalah default jika tidak dipilih. Untuk membuatnya, klik Create Microservice Namespace. Lihat bagian "Create a namespace" di Manage microservices namespaces. |
Cluster | Pilih kluster ACK Serverless yang telah diimpor. Jika kluster belum diimpor ke EDAS, pilih This cluster is used for the first time in EDAS untuk mengimpornya saat pembuatan aplikasi. Kluster tidak harus berada dalam ruang mikroservis yang sama dengan aplikasi. |
K8s Namespace | Pilih namespace Kubernetes. Nilai yang valid: default, kube-system, kube-public. Pilih default untuk tutorial ini. Untuk membuat namespace kustom, klik Create Kubernetes Namespace dan masukkan nama (1–63 karakter; huruf kecil, angka, dan tanda hubung; harus dimulai dan diakhiri dengan huruf atau angka). |
Pengaturan aplikasi:
Parameter | Description |
Application Name | Masukkan nama (maksimal 36 karakter; dimulai dengan huruf; boleh berisi huruf, angka, dan tanda hubung). |
Application Description | Opsional. Maksimal 128 karakter. |
Paket penyebarluasan:
Parameter | Description |
Source of Deployment Package | Pilih sumber penyebarluasan. |
Custom Program: Unggah paket Anda sendiri. Atur File Uploading Method menjadi Upload JAR Package (unggah langsung) atau JAR Package Address (berikan URL).
Official Demo: Pilih demo yang telah dibuat sebelumnya: Spring Cloud Server Application, Spring Cloud Client Application, Dubbo Server Application, atau Dubbo Client Application.
Pengaturan versi dan resource:
Parameter | Description |
Version | Masukkan nomor versi atau klik Use Timestamp as Version Number untuk menghasilkan nomor versi. |
Time Zone | Pilih zona waktu aplikasi. |
Total Pods | Tentukan jumlah pod untuk aplikasi. Maksimum tergantung kapasitas kluster. |
Single-pod Resource Quota | Tentukan batas CPU, memori, dan penyimpanan sementara per pod. Nilai default |
OpenJDK base image settings
Parameter OpenJDK Base Image hanya tersedia jika Anda memilih Custom OpenJDK untuk Java Environment pada langkah Basic Information.
Konfigurasikan sumber gambar dasar:
Current Account: Tentukan Region, Container Registry, Image Repository Namespace, dan Image Repository Name.
Other Alibaba Cloud Accounts: Tentukan Full Image Address untuk repositori publik.
Hanya JDK 7 dan JDK 8 yang didukung. Server EDAS menarik gambar dasar untuk membangun gambar aplikasi, sehingga gambar dasar harus memiliki izin tarik publik.
Container Registry settings (ACK clusters only)
Parameter Container Registry Repository Type hanya tersedia untuk aplikasi Java, Tomcat, atau EDAS-Container (HSF) yang diterapkan di kluster ACK. Parameter ini tidak tersedia untuk kluster ACK Serverless.
Parameter | Description |
Container Registry Repository Type | Pilih Container Registry Personal Edition atau Container Registry Enterprise Edition untuk menyimpan gambar yang dibuat. Komponen |
Region of Container Registry | Hanya diperlukan untuk Edisi Perusahaan. Pilih wilayah gambar Container Registry (ACR) Anda. |
Container Registry | Hanya diperlukan untuk Edisi Perusahaan. Pilih gambar kontainer Anda. |
Image Repository Namespace | Pilih namespace untuk repositori gambar Anda, atau klik + Create Namespace untuk membuatnya. |
Tugas pembuatan gambar dijalankan di kluster Anda dan mengonsumsi resource kluster. Batas resource default untuk satu tugas pembuatan gambar adalah 1 GB per core. Untuk menyesuaikan batas ini, lihat Adjust resource limits for image building.
Aturan penjadwalan tugas pembuatan:
Rule | Behavior |
Exclusion | EDAS tidak menjadwalkan tugas pembuatan ke node yang memiliki label |
Preference | EDAS lebih memilih menjadwalkan tugas pembuatan ke node yang memiliki label |
Toleration | Tugas pembuatan mentoleransi node dengan taint |
Tip: Untuk mendedikasikan node bagi tugas pembuatan, tambahkan labeledas.image.build=enabledan taintkey=edas.image.build, effect=NoSchedule. Ini mencegah pod lain dijadwalkan ke node tersebut.
3d. Konfigurasikan pengaturan lanjutan (opsional)
Pada langkah Advanced Settings, konfigurasikan salah satu hal berikut sesuai kebutuhan:
3e. Buat dan sebarluaskan
Setelah mengonfigurasi semua pengaturan, klik Create Application. Pada langkah Creation Completed, klik lagi Create Application.
Pada kotak dialog Confirm Application Change Precheck, klik Start Precheck.
Tinjau hasil pemeriksaan awal dan klik Continue. Jika Anda mengubah item pemeriksaan awal apa pun, klik Check Again sebelum melanjutkan.
Verifikasi penyebarluasan
Penyebarluasan memerlukan beberapa menit. Lacak progresnya di halaman Change List.
Setelah penyebarluasan selesai, buka Application Overview dan periksa status pod:
Jika semua pod menampilkan running, aplikasi berhasil diterapkan.
Klik status running pod untuk melihat Deployments, detail pod, dan konfigurasi lanjutan.
Jika pod tidak mencapai status running, periksa event dan log pod di halaman Application Overview untuk mengidentifikasi masalahnya.
Ekspos aplikasi dengan load balancer
Setelah menyebarluaskan aplikasi, tambahkan instance Server Load Balancer (SLB) untuk mengeksposnya:
SLB type | Use case |
Internet-facing | Ekspos aplikasi ke Internet |
Internal-facing | Ekspos aplikasi ke semua node dalam VPC yang sama melalui jaringan internal |
Untuk petunjuknya, lihat Add an SLB instance to an application in a Kubernetes cluster.
Dukungan
Untuk pertanyaan mengenai kluster ACK atau ACK Serverless di EDAS, kirim tiket atau bergabung dengan grup DingTalk 23197114.