All Products
Search
Document Center

Alibaba Cloud Service Mesh:Gunakan gerbang tanpa server ASM untuk beban kerja elastis

Last Updated:Sep 16, 2026

Gerbang tanpa server ASM menyediakan operasi elastis tanpa node dengan memanfaatkan node virtual dan Elastic Container Instance (ECI). Topik ini menjelaskan cara menggunakan gerbang tanpa server ASM untuk mendukung beban kerja elastis.

Prasyarat

Konsep utama

Konsep

Deskripsi

Elastic Container Instance (ECI)

Alibaba Cloud Elastic Container Instance (ECI) adalah layanan komputasi tanpa server yang memungkinkan Anda menjalankan kontainer tanpa mengelola server. Layanan ini menyediakan runtime kontainer yang aman dan terisolasi dengan waktu startup cepat. Dengan ECI, Anda dapat fokus pada aplikasi Anda alih-alih infrastruktur dasarnya. Anda dikenai biaya per detik berdasarkan resource yang dikonsumsi oleh kontainer Anda. Untuk informasi selengkapnya, lihat Apa itu Elastic Container Instance? dan Ikhtisar penagihan.

virtual node

Node virtual sangat ideal untuk beban kerja dengan pola lalu lintas yang fluktuatif, membantu mengurangi biaya komputasi dan meningkatkan elastisitas resource.

taint

Taint pada sebuah node menolak sekumpulan Pod.

Secara default, node virtual dalam kluster ACK memiliki taint virtual-kubelet.io/provider=alibabacloud:NoSchedule. Hal ini mencegah Pod dijadwalkan secara tidak sengaja ke resource ECI.

toleration

Toleransi memungkinkan Pod dijadwalkan ke node yang memiliki taint yang sesuai.

Untuk mengizinkan Pod dalam kluster ACK Anda menggunakan resource ECI, Anda harus mengonfigurasi tolerations berikut agar mentolerir taint virtual-kubelet.io/provider=alibabacloud:NoSchedule. Untuk informasi selengkapnya, lihat Deploy controller node virtual dan gunakan untuk membuat Pod berbasis Elastic Container Instance.

      tolerations:
      - key: virtual-kubelet.io/provider
        operator: Equal
        value: alibabacloud
        effect: NoSchedule
Catatan

Taint dan toleransi bekerja bersama untuk memastikan bahwa Pod tidak dijadwalkan ke node yang tidak sesuai. Anda dapat menerapkan satu atau beberapa taint ke sebuah node.

  • Jika sebuah Pod tidak mentolerir taint tertentu, Pod tersebut tidak akan dijadwalkan ke node yang memiliki taint tersebut.

  • Jika sebuah Pod mentolerir taint tertentu, Pod tersebut dapat dijadwalkan ke node yang memiliki taint tersebut, tetapi tidak wajib demikian.

Untuk informasi selengkapnya, lihat dokumentasi resmi Kubernetes tentang Taints and Tolerations.

node affinity (nodeAffinity)

Afinitas node menentukan aturan yang memengaruhi tempat Pod dapat dijadwalkan. Aturan ini dapat berupa preferensi 'lunak' yang coba dipenuhi oleh penjadwal, atau persyaratan 'keras' yang harus dipenuhi agar Pod dapat dijadwalkan ke sebuah node.

Langkah 3: Konfigurasikan afinitas node dan toleransi

Konfigurasikan parameter nodeAffinity dan tolerations untuk gerbang ASM Anda. Aturan nodeAffinity memastikan bahwa Pod gerbang dijadwalkan ke node tertentu, sedangkan tolerations memungkinkan Pod dijadwalkan ke node dengan taint yang Anda buat di Langkah 2.

  1. Masuk ke Konsol ASM. Di panel navigasi kiri, pilih Service Mesh > Mesh Management.

  2. Di halaman Mesh Management, klik nama instans ASM. Di panel navigasi kiri, pilih ASM Gateways > Ingress Gateway.

  3. Di halaman Ingress Gateway, temukan gerbang target dan klik View YAML di kolom Actions.

  4. Di kotak dialog Edit, tambahkan konten berikut di bawah bidang spec, lalu klik OK.

       affinity:
        nodeAffinity:
          preferredDuringSchedulingIgnoredDuringExecution:
            - preference:
                matchExpressions:
                  - key: type
                    operator: In
                    values:
                      - virtual-kubelet
              weight: 20
            - preference:
                matchExpressions:
                  - key: mykey4pod
                    operator: In
                    values:
                      - asmgateway
              weight: 80
          requiredDuringSchedulingIgnoredDuringExecution:
            nodeSelectorTerms:
              - matchExpressions:
                  - key: mykey4pod
                    operator: In
                    values:
                      - asmgateway
              - matchExpressions:
                  - key: type
                    operator: In
                    values:
                      - virtual-kubelet
      tolerations:
        - effect: NoSchedule
          key: virtual-kubelet.io/provider
          operator: Equal
          value: alibabacloud
        - effect: NoSchedule
          key: mykey
          operator: Equal
          value: myvalue

    Tabel berikut menjelaskan parameter utama. Untuk informasi selengkapnya, lihat dokumentasi resmi Kubernetes tentang Assigning Pods to Nodes.

    Parameter

    Deskripsi

    preferredDuringSchedulingIgnoredDuringExecution

    Penjadwal mencoba menemukan node yang memenuhi aturan tersebut. Jika tidak ada node yang cocok ditemukan, penjadwal tetap menjadwalkan Pod tersebut. Parameter ini dikaitkan dengan dua matchExpressions. Nilai weight bersifat relatif. Penjadwal lebih memilih aturan dengan nilai yang lebih besar. weight sebesar 80 berarti Pod lebih disukai berjalan di node ECS dengan label yang ditentukan. weight sebesar 20 berarti Pod lebih disukai berjalan di resource ECI.

    requiredDuringSchedulingIgnoredDuringExecution

    Penjadwal hanya menjadwalkan Pod ke node yang memenuhi aturan ini. Parameter ini dikaitkan dengan dua entri matchExpressions. Salah satu mengarahkan Pod ke node ECS dengan label yang ditentukan, dan yang lainnya mengarahkan Pod untuk menggunakan resource ECI.

    tolerations

    Parameter ini memungkinkan Pod mentolerir taint virtual-kubelet.io/provider=alibabacloud:NoSchedule, sehingga memungkinkannya dijadwalkan ke resource ECI.

  5. Verifikasi bahwa Pod gerbang dijadwalkan sesuai harapan.

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

    2. Di halaman Clusters, klik nama kluster Anda. Di panel navigasi kiri, klik Workloads > Pods.

    3. Di bagian atas halaman Pods, pilih namespace istio-system dan periksa apakah Pod gerbang berjalan di node yang diharapkan.

      Jika Pod berjalan di node target, afinitas node dan toleransi telah berhasil dikonfigurasi untuk gerbang ASM.