Tata Kelola Mikro Layanan dari Microservices Engine (MSE) menyediakan kemampuan tata kelola mikro layanan untuk aplikasi Spring Cloud dan Dubbo dalam cluster Kubernetes open source tanpa memerlukan modifikasi pada kode bisnis. Kemampuan ini mencakup shutdown yang mulus, pengeluaran outlier, kueri layanan, otentikasi layanan, pengujian layanan, dan rilis canary. Tata Kelola Mikro Layanan secara signifikan meningkatkan stabilitas dan efisiensi pengembangan aplikasi mikro layanan online. Topik ini menjelaskan cara menghubungkan aplikasi di cluster Kubernetes open source ke Tata Kelola Mikro Layanan MSE.
Prasyarat
Tata Kelola Mikro Layanan telah diaktifkan. Untuk informasi lebih lanjut, lihat Aktifkan Tata Kelola Mikro Layanan.
Versi komponen api-server Kubernetes Anda adalah 1.16 atau lebih baru.
Cluster tempat aplikasi Anda diterapkan dapat diakses melalui Internet.
Untuk memuat agen Java MSE, pastikan ukuran memori heap Java Virtual Machine (JVM) lebih besar dari 256 MB.
Langkah 1: Instal komponen ack-onepilot
Jalankan perintah
wgetberikut untuk mengunduh paket instalasi ack-onepilot:wget 'https://aliacs-app-catalog.oss-cn-hangzhou.aliyuncs.com/charts-incubator/ack-onepilot-4.0.1.tgz'Jalankan perintah berikut untuk mengekstrak paket instalasi:
tar xvf ack-onepilot-4.0.1.tgzUbah parameter berikut di file
ack-onepilot/values.yamlsesuai dengan kebutuhan bisnis Anda, lalu simpan file tersebut:registry: registry-__ACK_REGION_ID__.ack.aliyuncs.com/acs/ cluster_id: __ACK_CLUSTER_ID__ accessKey: __ACCESSKEY__ accessKeySecret: __ACCESSKEY_SECRET__ uid: "__ACK_UID__" region_id: __ACK_REGION_ID__registry: Awalan alamat gambar komponen ack-onepilot. Ganti __ACK_REGION_ID__ dengan alamat gambar pilot terkait.Jika Anda mentransfer alamat gambar ke sistem penyimpanan lain, ubah awalan registry setelah transfer dan transfer tiga gambar berikut:
registry-__ACK_REGION_ID__.ack.aliyuncs.com/acs/ack-onepilot:4.0.1
registry-__ACK_REGION_ID__.ack.aliyuncs.com/acs/ack-onepilot-init:4.0.1
registry-__ACK_REGION_ID__.ack.aliyuncs.com/acs/ack-onepilot-alpine:3.18
cluster_id: ID cluster Kubernetes.Untuk cluster yang dikelola sendiri dan tidak terhubung ke Container Service for Kubernetes (ACK), tentukan parameter ini dalam format
<uid>-<clusterid>, di mana uid adalah ID akun Alibaba Cloud Anda dan clusterid adalah ID unik klien.Untuk cluster ACK atau cluster ACK yang dikelola, nilai parameter ini adalah ID cluster.
accessKeydanaccessKeySecret: ID AccessKey dan Rahasia AccessKey akun Alibaba Cloud Anda. Untuk informasi lebih lanjut tentang cara mendapatkan ID AccessKey dan Rahasia AccessKey, lihat Dapatkan pasangan AccessKey.PentingJika menggunakan ID AccessKey pengguna RAM, pastikan pengguna RAM dilampirkan dengan kebijakan AliyunARMSFullAccess dan AliyunMSEFullAccess.
uid: ID akun Alibaba Cloud Anda. Dapatkan ID akun dengan mengarahkan kursor ke foto profil di sudut kanan atas Konsol Manajemen Alibaba Cloud.region_id: ID wilayah tempat Anda ingin mengaktifkan Tata Kelola Mikro Layanan untuk aplikasi. Untuk informasi lebih lanjut tentang wilayah yang didukung oleh MSE, lihat Wilayah yang Didukung.
Jalankan perintah berikut untuk menginstal komponen ack-onepilot:
PentingSebelum menjalankan perintah, pastikan konten file konfigurasi di direktori ~/.kube diganti dengan konfigurasi cluster Kubernetes yang perlu mengakses Tata Kelola Mikro Layanan.
helm3 upgrade --install ack-onepilot ack-onepilot --namespace ack-onepilot --create-namespace
Langkah 2: Ubah file YAML aplikasi
Jalankan perintah berikut untuk melihat konfigurasi aplikasi Deployment yang diinginkan:
### Lihat konfigurasi aplikasi Deployment yang ditentukan. kubectl get deployment {Nama aplikasi Deployment} -o yamlCatatanJika Anda tidak mengetahui
nama aplikasi Deployment, jalankan perintah berikut untuk melihat informasi tentang semua aplikasi Deployment. Temukan aplikasi Deployment yang konfigurasinya ingin Anda lihat di hasil perintah, lalu lihat konfigurasi aplikasi tersebut.### Lihat konfigurasi semua aplikasi Deployment. kubectl get deployments --all-namespaceJalankan perintah berikut untuk mengedit file YAML aplikasi Deployment:
kubectl edit deployment {Nama aplikasi Deployment} -o yamlDi file YAML, buka direktori spec > template > metadata > labels dan tambahkan konten berikut:
msePilotAutoEnable: "on" # Aktifkan Tata Kelola Mikro Layanan MSE. msePilotCreateAppName: xxx # Nama aplikasi Anda. mseNamespace: default # Namespace MSE tempat aplikasi Anda berada. Jika Anda tidak menentukan parameter ini, namespace default akan digunakan.Setelah menyimpan konfigurasi di atas, aplikasi secara otomatis restart dan konfigurasi tersebut mulai berlaku.
Setelah dua hingga lima menit, jika aplikasi Anda terdaftar di halaman di konsol MSE dan data aplikasi dilaporkan, aplikasi berhasil terhubung ke Tata Kelola Mikro Layanan MSE.
Apa yang Harus Dilakukan Selanjutnya
Setelah menyelesaikan langkah-langkah di atas untuk aplikasi Anda yang diterapkan di cluster Kubernetes open source, Tata Kelola Mikro Layanan MSE diaktifkan untuk aplikasi Anda. Masuk ke konsol MSE dan gunakan Tata Kelola Mikro Layanan MSE untuk melakukan tata kelola layanan untuk aplikasi Spring Cloud dan Dubbo Anda.
Hapus komponen ack-onepilot
Jika Anda tidak lagi memerlukan pengelolaan aplikasi dan layanan di cluster Kubernetes open source menggunakan Tata Kelola Mikro Layanan MSE, Anda dapat menghapus komponen ack-onepilot.
Komponen ack-onepilot dibagi oleh MSE dan Application Real-Time Monitoring Service (ARMS). Sebelum menghapus komponen ack-onepilot, pastikan produk Anda tidak terhubung ke ARMS. Jika tidak, ARMS tidak dapat digunakan setelah komponen ack-onepilot dihapus.
Jalankan perintah berikut untuk menghapus komponen ack-onepilot:
helm3 uninstall --namespace ack-onepilot ack-onepilotMulai ulang pod aplikasi Anda.