Alibaba Cloud Container Compute Service (ACS) menyediakan layanan komputasi berbasis kontainer berperforma tinggi. Anda dapat menggunakan ACS untuk menjalankan aplikasi berbasis kontainer di cloud secara efisien. Topik ini menjelaskan cara menggunakan kubectl untuk menerapkan, mengekspos, dan memantau aplikasi dalam kluster ACS.
Informasi latar belakang
Topik ini menunjukkan cara menggunakan image untuk menerapkan aplikasi bernama acs-kube dalam kluster ACS. Aplikasi ini menyediakan permainan kubus ajaib daring. Setelah menyelesaikan langkah-langkah dalam topik ini, kluster ACS akan dibuat dan aplikasi permainan kubus ajaib diterapkan.

Image kontainer yang digunakan untuk menerapkan aplikasi dibangun berdasarkan proyek sumber terbuka. Alamat image adalah
registry.cn-hangzhou.aliyuncs.com/acr-toolkit/ack-cube.kubectl adalah alat baris perintah yang disediakan oleh Kubernetes untuk menghubungkan dan mengelola kluster Kubernetes. Untuk informasi lebih lanjut tentang kubectl, lihat kubectl.
Cloud Shell adalah alat baris perintah berbasis web yang disediakan oleh Alibaba Cloud. Anda dapat menggunakan kubectl di Cloud Shell pada konsol ACS untuk mengelola kluster tanpa instalasi atau konfigurasi tambahan.
Prosedur
Aktifkan dan berikan izin ke ACS
Jika ini pertama kalinya Anda menggunakan ACS, Anda harus mengaktifkan layanan dan memberikan izin akses ke sumber daya cloud.
Masuk ke konsol ACS dan klik Activate.
Pergi ke halaman aktivasi ACS dan ikuti petunjuk di layar untuk mengaktifkan layanan.
Kembali ke konsol ACS, segarkan halaman, lalu klik Authorize Now.
Pergi ke halaman otorisasi ACS dan ikuti petunjuk untuk memberikan izin kepada ACS.
Setelah selesai, segarkan konsol ACS dan mulailah menggunakan layanan.
Langkah 2: Buat kluster ACS.
Langkah ini menunjukkan cara mengonfigurasi parameter saat membuat kluster ACS.
Masuk ke konsol ACS. Di panel navigasi kiri, klik Clusters.
Di sudut kiri atas halaman Clusters, klik Create Cluster.
Di halaman Create Cluster, atur parameter sesuai tabel berikut. Gunakan pengaturan default untuk parameter yang tidak terdaftar.
Parameter
Deskripsi
Contoh
Cluster Name
Masukkan nama untuk kluster.
ACS-Demo
Region
Pilih wilayah untuk menerapkan kluster.
Tiongkok (Beijing)
VPC
Jaringan kluster. Kluster ACS hanya mendukung VPC. Anda dapat memilih Create VPC atau Select Existing VPC.
Create VPC: Jika Anda memilih opsi ini, ACK secara otomatis membuat VPC dan gateway NAT di VPC. ACK juga mengonfigurasi aturan SNAT pada gateway NAT.
Select Existing VPC: Jika Anda memilih opsi ini, Anda harus memilih VPC dari daftar drop-down VPC dan memilih vSwitches di bagian vSwitch. Jika Anda ingin mengunduh image kontainer melalui Internet, Anda harus mengonfigurasi gateway NAT. Kami merekomendasikan Anda mengunggah image kontainer ke Alibaba Cloud Container Registry di wilayah tempat kluster diterapkan dan menarik image menggunakan titik akhir VPC.
Untuk informasi lebih lanjut, lihat Buat dan kelola VPC.
Pilih Create VPC.
API Server Access Settings
Tentukan apakah akan mengekspos server API Kubernetes kluster ke Internet. Jika Anda ingin mengelola kluster melalui Internet, Anda harus mengekspos server API Kubernetes dengan alamat IP elastis (EIP).
Pilih Expose API Server with EIP.
Service Discovery
Klik Show Advanced Options dan tentukan apakah akan mengaktifkan penemuan layanan. Untuk mengaktifkan penemuan layanan, pilih CoreDNS.
Pilih CoreDNS.
Klik Confirm Order, baca dan pilih Ketentuan Layanan, lalu klik Create Cluster.
CatatanPembuatan kluster memerlukan waktu sekitar 10 menit. Setelah selesai, kluster akan muncul di halaman Clusters.
Langkah 3: Hubungkan ke kluster
Langkah ini menunjukkan cara menghubungkan ke kluster ACS menggunakan klien kubectl atau Cloud Shell. Untuk detail lebih lanjut, lihat Dapatkan file kubeconfig kluster dan cara menggunakan kubectl untuk menghubungkan ke kluster dan Gunakan kubectl di Cloud Shell untuk mengelola kluster ACS.
Hubungkan ke kluster dengan menggunakan klien kubectl
Masuk ke konsol ACS. Di panel navigasi kiri, klik Clusters.
Di halaman Clusters, klik nama kluster yang telah Anda buat, yaitu ACS-Demo dalam contoh ini.
Di halaman Cluster Information, klik tab Connection Information. Pada tab Public Access, klik Salin untuk menyalin kredensial akses Internet.
Tempelkan kredensial ke file
configdi direktori$HOME/.kube, simpan file tersebut, lalu keluar.CatatanJika folder
.kubedan fileconfigtidak ada di direktori$HOME/, buatlah folder dan file tersebut secara manual.Jalankan perintah kubectl berikut untuk memverifikasi konektivitas kluster:
Jalankan perintah berikut untuk menanyakan namespaces kluster:
kubectl get namespaceOutput yang diharapkan:
NAME STATUS AGE arms-prom Active 4h39m default Active 4h39m kube-node-lease Active 4h39m kube-public Active 4h39m kube-system Active 4h39m
Hubungkan ke kluster dengan menggunakan Cloud Shell
Masuk ke konsol ACS. Di panel navigasi kiri, klik Clusters.
Di halaman Clusters, temukan kluster yang telah dibuat dan pilih di kolom Actions.
Cloud Shell akan dimulai dalam beberapa detik. Setelah dimulai, Anda dapat menjalankan perintah kubectl di antarmuka Cloud Shell untuk mengelola kluster dan aplikasi.
Langkah 4: Terapkan dan ekspos aplikasi
Langkah ini menunjukkan cara menggunakan kubectl untuk menerapkan aplikasi tanpa status dengan membuat Deployment dan menggunakan Layanan LoadBalancer untuk mengekspos aplikasi. Untuk informasi lebih lanjut tentang ekspos aplikasi, lihat Gunakan instance SLB yang dibuat otomatis untuk mengekspos aplikasi.
Buat file bernama acs-cube.yaml dan salin konten berikut ke file tersebut.
Jalankan perintah berikut untuk menerapkan aplikasi acs-cube:
kubectl apply -f acs-cube.yamlJalankan perintah berikut untuk menanyakan status aplikasi:
kubectl get deployment acs-cubeOutput yang diharapkan:
NAME READY UP-TO-DATE AVAILABLE AGE acs-cube 2/2 2 2 96sBuat file bernama acs-cube-svc.yaml dan salin konten berikut ke file tersebut.
Atur
selectorke nilaimatchLabelsdalam file ack-cube.yaml. Dalam contoh ini, nilainya diatur keapp: ack-cubeuntuk menambahkan aplikasi ke backend Layanan.apiVersion: v1 kind: Service metadata: labels: app: acs-cube name: acs-cube-svc namespace: default spec: ports: - port: 80 protocol: TCP targetPort: 80 selector: app: acs-cube # Anda harus menentukan nilai parameter matchLabels dalam file YAML yang digunakan untuk membuat Deployment. type: LoadBalancerJalankan perintah berikut untuk membuat Layanan bernama ack-cube-svc dan gunakan Layanan tersebut untuk mengekspos aplikasi.
ACS secara otomatis membuat instance Server Load Balancer (SLB) yang menghadap ke Internet dan mengaitkannya dengan Layanan.
kubectl apply -f acs-cube-svc.yamlJalankan perintah berikut untuk memeriksa apakah Layanan LoadBalancer telah dibuat.
Aplikasi diekspos menggunakan alamat IP di kolom EXTERNAL-IP dalam output.
kubectl get svc acs-cube-svcOutput yang diharapkan:
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE acs-cube-svc LoadBalancer 172.16.72.161 47.94.xx.xx 80/TCP 32s
Langkah 5: Uji aplikasi
Masukkan alamat IP (EXTERNAL-IP) di bilah alamat browser Anda dan tekan Enter untuk memulai permainan kubus ajaib.

Referensi
Untuk mengaktifkan penskalaan otomatis untuk pod aplikasi, Anda dapat mengonfigurasi Horizontal Pod Autoscaler (HPA), Cron Horizontal Pod Autoscaler (CronHPA), dan Vertical Pod Autoscaler (VPA). Untuk informasi lebih lanjut, lihat Ikhtisar Penskalaan Otomatis.
Selain mengekspos aplikasi melalui Layanan, Anda dapat menggunakan Ingress untuk mengaktifkan pengalihan lalu lintas aplikasi di Lapisan 7. Untuk informasi lebih lanjut, lihat Mulai dengan ALB Ingress.
Untuk melihat informasi pemantauan tentang aplikasi, pergi ke halaman detail kluster dan pilih Operasi > Pemantauan Prometheus di panel navigasi kiri. Di halaman Pemantauan Prometheus, Anda dapat melihat informasi seperti utilisasi CPU, utilisasi memori, dan I/O jaringan. Untuk informasi lebih lanjut, lihat Gunakan Managed Service for Prometheus untuk Memantau Kluster ACS.
Lepaskan sumber daya
Saat menggunakan kluster ACS, biaya berikut berlaku:
Biaya untuk daya komputasi yang digunakan oleh beban kerja di kluster. Biaya ini dikenakan oleh ACS.
Biaya untuk sumber daya cloud lain yang digunakan oleh kluster. Biaya ini dikenakan oleh layanan Alibaba Cloud sesuai aturan penagihan mereka.
Catat hal-hal berikut setelah membuat kluster ACS:
Jika Anda tidak lagi membutuhkan kluster, hapus kluster dan sumber daya terkait. Untuk informasi lebih lanjut, lihat Hapus Kluster ACS.
Jika ingin tetap menggunakan kluster, tambahkan saldo akun Anda jika saldo kurang dari CNY 100. Untuk informasi lebih lanjut tentang aturan penagihan layanan Alibaba Cloud, lihat Penagihan.