全部产品
Search
文档中心

Alibaba Cloud Service Mesh:Gunakan Kubernetes API dari kluster pada bidang data untuk mengakses sumber daya Istio

更新时间:Jul 02, 2025

Service Mesh (ASM) memungkinkan Anda membuat, menghapus, memodifikasi, dan menanyakan sumber daya Istio menggunakan Kubernetes API dari kluster pada bidang data. Anda juga dapat menggunakan Helm untuk mengelola aplikasi di dalam kluster. Topik ini menjelaskan cara mengakses sumber daya Istio dengan Kubernetes API dari kluster pada bidang data.

Prasyarat

Informasi latar belakang

Kubernetes API adalah antarmuka pemrograman berbasis sumber daya yang disediakan melalui HTTP. Ini mendukung metode HTTP standar seperti POST, PUT, PATCH, DELETE, dan GET. Metode-metode ini digunakan untuk menanyakan, membuat, memperbarui, dan menghapus sumber daya utama kluster seperti Deployments dan Services. Untuk informasi lebih lanjut, lihat Konsep API Kubernetes.

Catatan penggunaan

  • Direkomendasikan untuk menggunakan Kubernetes API untuk mengakses sumber daya Istio dari instance ASM yang bidang datanya hanya berisi satu kluster. Jika fitur ini diaktifkan untuk instance ASM dengan beberapa kluster, Anda dapat menggunakan Kubernetes API dari semua kluster untuk membuat, menghapus, memodifikasi, dan menanyakan sumber daya Istio dari instance ASM.

  • Setelah mengaktifkan fitur akses sumber daya Istio menggunakan Kubernetes API dari kluster pada bidang data, namespace istio-system tidak dapat dihapus dari kluster. Untuk menghapus namespace istio-system, Anda harus terlebih dahulu menghapus kluster dari instance ASM.

  • Setelah mengaktifkan fitur akses sumber daya Istio menggunakan Kubernetes API dari kluster pada bidang data, tunggu 1 hingga 2 menit agar pengaturan diterapkan.

  • Jika namespace dihapus dari bidang data, namespace yang sesuai pada bidang kontrol dan sumber daya Istio di namespace bidang kontrol tidak akan dihapus.

  • Jika bidang kontrol berisi namespace tetapi bidang data tidak berisi namespace yang sama, Anda harus membuat namespace untuk bidang data. Jika tidak, Anda tidak dapat membuat, menghapus, memodifikasi, atau menanyakan sumber daya Istio di namespace tersebut, dan pesan kesalahan berikut akan ditampilkan:

    Error from server (NotFound): error when creating "xx.yaml": namespaces "daily-01" not found
  • Jika namespace yang dibuat pada bidang data untuk sumber daya Istio tidak ada pada bidang kontrol, namespace tersebut akan secara otomatis dibuat untuk bidang kontrol.

  • Sumber daya Istio yang dibuat untuk bidang kontrol menggunakan Kubernetes API dari kluster pada bidang data disimpan di bidang kontrol. Oleh karena itu, ketika membuat atau memperbarui sumber daya Istio ini menggunakan Kubernetes API dari kluster pada bidang data, jangan tambahkan bidang referensi pemilik untuk menentukan sumber daya pada bidang data sebagai pemilik sumber daya. Jika tidak, sumber daya Istio pada bidang kontrol akan dikumpulkan sebagai sampah karena pemilik sumber daya dianggap tidak ada.

Aktifkan fitur yang memungkinkan sumber daya Istio diakses menggunakan Kubernetes API dari kluster

Aktifkan fitur ini saat Anda membuat instance ASM

Secara default, fitur ini diaktifkan untuk instance ASM yang dibuat pada atau setelah November 2024 (UTC+8). Tidak diperlukan operasi tambahan. Untuk instance yang dibuat sebelum tanggal ini, Anda dapat mengaktifkan fitur ini dengan merujuk ke Aktifkan Fitur Ini untuk Instance ASM yang Sudah Ada.

Aktifkan fitur ini untuk instance ASM yang sudah ada

  1. Masuk ke Konsol ASM.

  2. Di panel navigasi sebelah kiri, pilih Service Mesh > Mesh Management.

  3. Pada halaman Mesh Management, temukan instance ASM yang ingin dikonfigurasikan. Klik nama instance ASM atau klik Manage di kolom Actions.

  4. Pada halaman Basic Information, klik Enable untuk parameter Enable Data-plane KubeAPI access.

  5. Dalam pesan Confirm to enable data-plane cluster KubeAPI access, klik OK.

Skenario 1: Kelola sumber daya Istio menggunakan kubectl

Setelah mengaktifkan fitur akses sumber daya Istio menggunakan Kubernetes API dari kluster, Anda dapat terhubung ke kluster menggunakan kubectl dan membuat, menanyakan, memodifikasi, serta menghapus sumber daya Istio menggunakan file kubeconfig dari kluster. Dalam contoh ini, layanan virtual digunakan.

  • Jalankan perintah berikut untuk membuat layanan virtual:

    kubectl apply -f <Nama file YAML dari layanan virtual>
  • Jalankan perintah berikut untuk menanyakan layanan virtual:

    kubectl get Virtualservice
  • Jalankan perintah berikut untuk memodifikasi layanan virtual:

    kubectl edit Virtualservice <Nama layanan virtual>
  • Jalankan perintah berikut untuk menghapus layanan virtual:

    kubectl delete Virtualservice <Nama layanan virtual>

Skenario 2: Instal aplikasi menggunakan Helm

Setelah mengaktifkan fitur akses sumber daya Istio menggunakan Kubernetes API dari kluster, Helm dapat menginstal aplikasi di dalam kluster dan menambahkan sumber daya Istio ke instance ASM Anda menggunakan file kubeconfig dari kluster.

  1. Hubungkan ke kluster ACK menggunakan kubectl. Untuk informasi lebih lanjut, lihat Dapatkan File kubeconfig dari Kluster dan Gunakan kubectl untuk Terhubung ke Kluster.

  2. Instal Helm di perangkat lokal Anda. Untuk informasi lebih lanjut, lihat Helm.

    Catatan

    Setelah menggunakan kubectl untuk terhubung ke kluster, klien Helm secara otomatis menggunakan file kubeconfig untuk terhubung ke kluster.

  3. Unduh dan ekstrak paket Helm chart contoh istio-bookinfo ke perangkat lokal Anda.

  4. Jalankan perintah berikut di direktori istio-bookinfo untuk menginstal istio-bookinfo:

    helm install -f values.yaml istio-bookinfo ./

    Output yang diharapkan:

    NAME:istio-bookinfo
    LAST DEPLOYED:THU May 26 16:44:19 2022
    NAMESPACE:default
    STATUE:deployed
    REVISION:1
    TEST SUITE:None
  5. Periksa apakah aplikasi telah diinstal menggunakan Helm.

    1. Tanyakan aplikasi Bookinfo di konsol Container Service for Kubernetes (ACK).

      1. Masuk ke Konsol ACK. Di panel navigasi sebelah kiri, klik Clusters.

      2. Pada halaman Clusters, temukan kluster yang ingin dikelola dan klik namanya. Di panel sebelah kiri, pilih Workloads > Deployments.

      3. Pada bagian atas halaman yang muncul, pilih default dari daftar drop-down Namespace.

      Anda dapat melihat aplikasi seperti details, productpage, dan ratings yang diinstal menggunakan Helm.

      Catatan

      Anda dapat melihat paket instalasi Helm di halaman Helm dengan memilih Applications > Helm di panel navigasi sebelah kiri.

      Applications

    2. Lihat layanan virtual dan gateway Istio di konsol ASM.

      1. Masuk ke Konsol ASM.

      2. Di panel navigasi sebelah kiri, pilih Service Mesh > Mesh Management.

      3. Pada halaman Mesh Management, temukan instance ASM yang ingin dikonfigurasikan. Klik nama instance ASM atau klik Manage di kolom Actions.

      4. Pada halaman detail instance ASM, pilih Traffic Management Center > VirtualService di panel navigasi sebelah kiri.

        Pada halaman VirtualService, Anda dapat melihat layanan virtual bookinfo yang diinstal menggunakan Helm. VirtualService page

      5. Pada halaman detail instance ASM, pilih ASM Gateways > Gateway di panel navigasi sebelah kiri.

        Pada halaman Gateway, Anda dapat melihat gateway bookinfo-gateway yang diinstal menggunakan Helm. Gateway page

Operasi Terkait

  • Jalankan perintah berikut untuk melihat aplikasi yang diinstal menggunakan Helm:

    helm list
  • Jalankan perintah berikut untuk memperbarui Helm chart:

    helm upgrade -f values.yaml istio-bookinfo ./