All Products
Search
Document Center

Platform For AI:Rilis Canary

Last Updated:Mar 03, 2026

Kelompok layanan mengelola beberapa Layanan sub yang menangani lalu lintas layanan melalui satu titik masuk traffic terpadu. Sistem mendistribusikan traffic masuk ke layanan individual berdasarkan kebijakan alokasi traffic. Pendekatan ini mendukung berbagai skenario bisnis seperti rilis canary, Auto Scaling, dan penjadwalan resource heterogen. Topik ini menjelaskan cara membuat kelompok layanan, melihat titik masuk traffic-nya, serta memodifikasi kebijakan alokasi traffic.

Skenario

  • Rilis canary

    Tambahkan layanan produksi dan layanan canary ke dalam kelompok yang sama, dengan mengalokasikan lebih sedikit traffic ke layanan canary. Saat merilis versi baru, perbarui terlebih dahulu layanan canary dan amati perilakunya. Jika terjadi masalah, kembalikan (rollback) layanan canary atau hentikan dan alihkan seluruh traffic ke layanan produksi. Jika semuanya berjalan normal, perbarui sepenuhnya layanan produksi, lalu scale in layanan canary menjadi nol replika atau pertahankan dengan traffic minimal.

  • Auto Scaling berbasis langganan dan bayar sesuai penggunaan

    Dalam kelompok yang sama, terapkan layanan berbasis langganan di kelompok sumber daya khusus dengan jumlah replika tetap untuk memenuhi permintaan garis dasar. Terapkan layanan bayar sesuai penggunaan di kelompok sumber daya publik dan scale secara elastis sesuai kebutuhan guna mengurangi biaya.

  • Menggunakan resource perangkat keras heterogen

    Dalam skenario akselerasi GPU, jenis GPU tertentu mungkin tidak tersedia atau kehabisan stok di wilayah tertentu setelah penerapan layanan, sehingga mencegah scale-out normal. Gunakan fitur kelompok layanan untuk membuat layanan secara dinamis dengan jenis GPU berbeda dalam satu kelompok layanan yang sama, menyesuaikan diri dengan berbagai lingkungan CUDA. Hal ini memungkinkan beberapa layanan mendukung skenario bisnis yang sama menggunakan resource heterogen. Karena titik masuk traffic kelompok layanan tetap tidak berubah, antarmuka depan tetap transparan dan tidak terpengaruh.

Buat kelompok layanan

Saat membuat layanan, tentukan kelompok layanan tempat layanan tersebut berada. Tindakan ini akan membuat kelompok layanan (jika belum ada) dan menambahkan layanan ke dalamnya.

Catatan

Jika nama kelompok layanan yang ditentukan belum ada saat pembuatan layanan, sistem akan membuat kelompok tersebut secara otomatis. Jika sudah ada, layanan baru akan bergabung ke dalam kelompok tersebut. Saat Anda menghapus layanan terakhir dalam suatu kelompok layanan, kelompok tersebut akan dihapus secara otomatis.

Contoh berikut menunjukkan cara membuat kelompok layanan bernama pmml dan menetapkan dua layanan—pmml_prod dan pmml_grey—ke dalamnya.

Konsol

  1. Login ke Konsol PAI. Pilih wilayah di bagian atas halaman. Lalu, pilih ruang kerja yang diinginkan dan klik Elastic Algorithm Service (EAS).

  2. Pada tab Canary Release, klik Create Group and Service.

  3. Pada halaman Custom Deployment, konfigurasikan parameter dan klik Deploy.

    Di mana:

    • Service Name: Konfigurasikan sesuai petunjuk di UI. Contoh nilai: pmml_prod.

    • Group: Pilih New Group. Contoh nilai: pmml.

    Untuk detail parameter lainnya, lihat Custom Deployment.

Ulangi langkah 2–3 untuk membuat layanan pmml_grey dan menetapkannya ke kelompok layanan pmml.

Setelah berhasil dibuat, buka tab Canary Release, klik nama kelompok pmml, dan lihat daftar layanan dalam kelompok tersebut.

image

Penting

Layanan yang ditambahkan kemudian ke dalam kelompok tidak membawa traffic secara default. Lihat Modify traffic allocation policy.

Klien EASCMD

  1. Siapkan file konfigurasi layanan service.json. Contoh:

    Klik untuk melihat file konfigurasi layanan pmml_prod

    {
      "name":"pmml_prod",
      "model_path":"http://examplebucket.oss-cn-shanghai.aliyuncs.com/models/lr_xxxx.pmml",
      "processor":"pmml",
      "metadata":{
        "cpu":1,
        "instance":4,
        "group":"pmml"
      }
    }

    Klik untuk melihat file konfigurasi layanan pmml_grey

    {
      "name":"pmml_grey",
      "model_path":"http://examplebucket.oss-cn-shanghai.aliyuncs.com/models/lr_xxxx.pmml",
      "processor":"pmml",
      "metadata":{
        "cpu":1,
        "instance":1,
        "group":"pmml"
      }
    }

    Bidang group menentukan nama kelompok layanan. Untuk parameter lainnya, lihat JSON deployment.

  2. Buat layanan dan kelompok layanan.

    Setelah login ke klien EASCMD, gunakan perintah create. Untuk instruksi penyiapan, lihat Download and authenticate the client. Contoh:

    $ eascmd create service.json
  3. Lihat detail layanan dan kelompok.

    Gunakan perintah ls. Contoh:

    $ eascmd ls

    Sistem mengembalikan:

    [RequestId]: 716BEBFC-E8A4-51FD-A3F7-56376B167923
    +---------------------------+----------+-----+--------+----------------------+----------------------+---------+--------+--------------+---------------------------+
    |        SERVICENAME        | INSTANCE | CPU | MEMORY |      CREATETIME      |      UPDATETIME      | STATUS  | WEIGHT | TRAFFICSTATE |       SERVICEGROUP        |
    +---------------------------+----------+-----+--------+----------------------+----------------------+---------+--------+--------------+---------------------------+
    | pmml_prod                 |        4 |   1 | 1000M  | 2022-06-05T14:30:49Z | 2022-06-05T14:30:49Z | Running |     80 | grouping     | pmml                      |
    | pmml_grey                 |        1 |   1 | 1000M  | 2022-06-05T14:31:38Z | 2022-06-05T14:31:38Z | Running |     20 | grouping     | pmml                      |
    +---------------------------+----------+-----+--------+----------------------+----------------------+---------+--------+--------------+---------------------------+

    Di mana:

    • SERVICEGROUP adalah pmml, menunjukkan bahwa kedua layanan berada dalam kelompok layanan pmml.

    • TRAFFICSTATE adalah grouping, artinya kedua layanan berbagi traffic dalam rasio 80:20, sesuai dengan jumlah replikanya.

Lihat titik masuk traffic

Kelompok layanan memiliki satu titik masuk traffic terpadu. Setiap layanan dalam kelompok juga memiliki titik masuk independen sendiri.

Titik masuk traffic kelompok layanan

<endpoint>/api/predict/<group_name>

Contoh:

http://182848887922****.vpc.cn-shanghai.pai-eas.aliyuncs.com/api/predict/pmml

Pada tab Canary Release, lihat titik masuk traffic kelompok layanan. Traffic yang dikirim ke sini didistribusikan ke layanan individual berdasarkan kebijakan saat ini. Layanan dapat ditambahkan atau dihapus dari kelompok tanpa mengubah alamat ini, sehingga cocok untuk debugging online.

image

Titik masuk traffic layanan individual

<endpoint>/api/predict/<group_name>.<service_name>

Contoh:

http://182848887922****.vpc.cn-shanghai.pai-eas.aliyuncs.com/api/predict/pmml.pmml_prod

Pada tab Inference Service, lihat titik masuk layanan individual. Alamat ini terikat pada siklus hidup layanan dan selalu mengarahkan traffic ke layanan spesifik tersebut. Alamat ini dihapus saat layanan dihapus. Setelah pengalihan traffic berbasis kelompok, gunakan alamat ini untuk mengakses dan melakukan debugging layanan.

image

Modifikasi kebijakan alokasi traffic

EAS mendukung dua metode alokasi traffic:

  • Replica Allocation: Traffic dialokasikan secara dinamis berdasarkan jumlah replika inferensi per layanan. Misalnya, jika Layanan A memiliki 1 replika dan Layanan B memiliki 3, A menerima 25% traffic dan B menerima 75%. Menonaktifkan alokasi traffic untuk suatu layanan mengeluarkannya dari distribusi traffic kelompok, tetapi layanan tersebut tetap dapat diakses secara individual.

  • Custom Allocation: Traffic dialokasikan berdasarkan bobot yang ditetapkan. Misalnya, jika Layanan A memiliki bobot 100 dan Layanan B memiliki 400, A menerima 20% dan B menerima 80%.

Penting

Terlepas dari metode yang digunakan, menonaktifkan alokasi traffic untuk suatu layanan akan mengeluarkannya dari distribusi traffic kelompok, tetapi layanan tersebut tetap dapat diakses secara individual.

Metode modifikasinya sebagai berikut:

Catatan

Anda dapat menyesuaikan bobot traffic dan status traffic layanan menggunakan API. Untuk detailnya, lihat Adjust service traffic weight and traffic state.

Alokasi berbasis replika

Konsol

Aktifkan/nonaktifkan sakelar alokasi traffic di kolom yang sesuai: ON berarti layanan membawa traffic; OFF berarti tidak.

image

EASCMD

Gunakan perintah release. Untuk penyiapan klien, lihat Download and authenticate the client. Sintaks perintah:

$ eascmd release <service_name> -s grouping|standalone

Di mana:

  • <service_name>: Ganti dengan nama layanan target.

  • grouping|standalone: Status yang diinginkan. grouping berarti layanan membawa traffic. standalone berarti tidak.

Contoh:

  • Untuk mengatur layanan pmml_grey ke status standalone (tidak membawa traffic), jalankan:

    $ eascmd release pmml_grey -s standalone

    Output sistem:

    Confirmed to release service [pmml_grey] to group traffic [Y/n]yes
    [RequestId]: 40C787DF-8900-5F7A-8A01-30F7D5A8BF3B
    [OK] Service [pmml_grey] has entered the traffic state: standalone

    Jalankan eascmd ls untuk memeriksa status. Output:

    [RequestId]: 83BE3FBB-8CE2-5008-B435-1938A20B13AA
    +---------------------------+----------+-----+--------+----------------------+----------------------+---------+--------+--------------+---------------------------+
    |        SERVICENAME        | INSTANCE | CPU | MEMORY |      CREATETIME      |      UPDATETIME      | STATUS  | WEIGHT | TRAFFICSTATE |       SERVICEGROUP        |
    +---------------------------+----------+-----+--------+----------------------+----------------------+---------+--------+--------------+---------------------------+
    | pmml_prod                 |        4 |   1 | 1000M  | 2022-06-05T14:30:49Z | 2022-06-05T14:30:49Z | Running |    100 | grouping     | pmml                      |
    | pmml_grey                 |        1 |   1 | 1000M  | 2022-06-05T14:42:41Z | 2022-06-05T14:42:41Z | Running |     0  | standalone   | pmml                      |
    +---------------------------+----------+-----+--------+----------------------+----------------------+---------+--------+--------------+---------------------------+

    Di sini, pmml_grey memiliki TRAFFICSTATE bernilai standalone dan WEIGHT 0, sehingga seluruh traffic dialihkan ke pmml_prod.

  • Untuk mengatur layanan pmml_grey ke status grouping (membawa traffic), jalankan:

    $ eascmd release pmml_grey -s grouping

    Output sistem:

    Confirmed to release service [pmml_grey] to group traffic [Y/n]yes
    [RequestId]: 40C787DF-8900-5F7A-8A01-30F7D5A8BF3B
    [OK] Service [pmml_grey] has entered the traffic state: grouping

    Jalankan eascmd ls untuk memeriksa status. Output:

    [RequestId]: 83BE3FBB-8CE2-5008-B435-1938A20B13AA
    +---------------------------+----------+-----+--------+----------------------+----------------------+---------+--------+--------------+---------------------------+
    |        SERVICENAME        | INSTANCE | CPU | MEMORY |      CREATETIME      |      UPDATETIME      | STATUS  | WEIGHT | TRAFFICSTATE |       SERVICEGROUP        |
    +---------------------------+----------+-----+--------+----------------------+----------------------+---------+--------+--------------+---------------------------+
    | pmml_prod                 |        4 |   1 | 1000M  | 2022-06-05T14:30:49Z | 2022-06-05T14:30:49Z | Running |     80 | grouping     | pmml                      |
    | pmml_grey                 |        1 |   1 | 1000M  | 2022-06-05T14:42:41Z | 2022-06-05T14:42:41Z | Running |     20 | grouping     | pmml                      |
    +---------------------------+----------+-----+--------+----------------------+----------------------+---------+--------+--------------+---------------------------+

    Di sini, pmml_grey memiliki TRAFFICSTATE bernilai grouping dan membawa 20% traffic berdasarkan rasio replikanya.

Bobot kustom

Edit bobot langsung di kolom traffic weight.

image