Service Mesh (ASM) menyediakan antarmuka pengguna grafis (GUI) yang intuitif untuk gerbang. Anda dapat membuat Destination Rule dan Virtual Service langsung di Konsol tanpa menulis file YAML, sehingga menyederhanakan manajemen traffic. Topik ini menjelaskan cara membuat kebijakan traffic dan aturan routing menggunakan GUI.
Prasyarat
-
Injeksi sidecar otomatis diaktifkan untuk namespace. Untuk informasi selengkapnya, lihat Aktifkan injeksi otomatis.
Gerbang masuk telah dideploy. Untuk informasi selengkapnya, lihat Buat gerbang masuk.
Aplikasi telah dideploy di kluster yang ditambahkan ke instans ASM. Untuk informasi selengkapnya, lihat Deploy aplikasi ke kluster yang terkait ASM.
-
Anda telah mendapatkan alamat gerbang ASM. Untuk informasi selengkapnya, lihat Mendapatkan alamat gerbang masuk.
Ikhtisar
Topik ini menggunakan layanan reviews sebagai contoh untuk menunjukkan cara mengonfigurasi kebijakan traffic, seperti load balancing dan kolam koneksi, menggunakan GUI. Setelah kebijakan traffic dibuat, file YAML untuk Destination Rule yang sesuai akan dibuat secara otomatis. Topik ini juga menunjukkan cara membuat aturan routing untuk path di layanan Bookinfo, seperti /productpage dan /login. Hal ini memungkinkan Anda mengakses layanan Bookinfo melalui path seperti /productpage.
Buat domain
-
Masuk ke Konsol ASM. Di panel navigasi sebelah kiri, pilih .
-
Pada halaman Mesh Management, klik nama instans ASM. Di panel navigasi sebelah kiri, pilih .
-
Pada halaman Ingress Gateway, klik nama gerbang target. Di panel navigasi sebelah kiri halaman Ikhtisar Gerbang, klik Domain/Certificate.
-
Pada halaman Add domain, konfigurasikan parameter berikut dan klik Create.
Parameter
Contoh
Domain
*
Protocol
HTTP
Namespaces
default
Port Name
http
Port
80
Impor layanan hulu
Impor layanan hulu ke gerbang ASM.
-
Pada halaman Ingress Gateway, klik nama gerbang target. Di panel navigasi sebelah kiri halaman Ikhtisar Gerbang, klik Upstream Service.
-
Pada halaman Upstream Service, klik Import service. Pada halaman Import service, pilih Namespaces, pilih layanan reviews dan productpage, klik ikon
, lalu klik Confirm.
Buat kebijakan traffic
-
Kelola versi layanan.
Contoh ini mengelompokkan instans layanan reviews menjadi tiga versi: v1, v2, dan v3.
-
Pada halaman Upstream Service, temukan layanan reviews dan klik versions pada kolom Operator.
-
Pada halaman versions, klik Add Service Version (Subset), atur Name menjadi v1, klik Add Label, atur Key menjadi version, dan atur Value menjadi v1.
-
Klik Add Service Version (Subset), atur Name menjadi v2, klik Add Label, atur Key menjadi version, dan atur Value menjadi v2.
-
Klik Add Service Version (Subset) lagi, atur Name menjadi v3, klik Add Label, atur Key menjadi version, dan atur Value menjadi v3. Lalu, klik Create.
-
-
Buat kebijakan traffic.
-
Pada halaman Upstream Service, temukan layanan reviews dan klik traffic policy pada kolom Operator.
-
Pada halaman traffic policy, klik Add Policy, pilih Subset Level, dan pilih versi v3. Aktifkan sakelar Load Balancing, pilih Simple, atur Mode menjadi Random, lalu klik Submit.
-
-
(Opsional) Lihat file YAML untuk Destination Rule yang dihasilkan saat Anda membuat kebijakan traffic.
Pada halaman Upstream Service, temukan layanan reviews dan klik View YAML pada kolom Operator. Pada kotak dialog Preview, lihat file YAML. Setelah mengonfirmasi kontennya, klik Confirm.
CatatanAtau, di panel navigasi sebelah kiri halaman detail mesh, pilih . Pada halaman DestinationRule, temukan Destination Rule target dan klik View YAML pada kolom Operator. Pada kotak dialog Edit, lihat file YAML yang dihasilkan untuk Destination Rule tersebut.
Buat aturan routing
-
Buat aturan routing.
-
Buat aturan routing untuk
/productpage.-
Di panel navigasi sebelah kiri halaman Ikhtisar Gerbang, klik Route management, lalu klik Create.
-
Pada wizard set route detail, konfigurasikan parameter dan klik Next.
Parameter
Contoh
route type
Untuk contoh ini, pilih http.
Namespaces
Untuk contoh ini, pilih default.
route name
Untuk contoh ini, masukkan
productpage-route.description
Untuk contoh ini, masukkan
productpage route.priority
Untuk contoh ini, masukkan
3.CatatanAturan routing diprioritaskan berdasarkan angka. Angka yang lebih kecil menunjukkan prioritas yang lebih tinggi. Jika URI permintaan cocok dengan beberapa aturan routing, ASM menerapkan aturan dengan prioritas tertinggi.
Matching rules
Konfigurasikan pencocokan URL. Hanya permintaan dari URL yang memenuhi persyaratan yang dapat diarahkan ke layanan tujuan.
Aktifkan sakelar Matching request URI. Atur Method menjadi Exact dan Content menjadi
/productpage.CatatanAnda juga dapat mengklik Add Header Matching Rule untuk mengatur pencocokan header.
-
Pada wizard set route destination, konfigurasikan parameter, lalu klik Next.
Parameter
Contoh
select upstream service
Pilih layanan tempat aturan routing diterapkan. Untuk contoh ini, pilih productpage.
Port
Opsional. Port yang diekspos oleh layanan hulu. Parameter ini wajib jika layanan mengekspos lebih dari satu port. Untuk contoh ini, biarkan parameter ini kosong.
Subset
Menentukan versi layanan (subset) tempat aturan routing diterapkan. Biarkan field ini kosong untuk contoh ini.
Weight
Menentukan bobot traffic untuk layanan tujuan. Biarkan field ini kosong untuk contoh ini.
-
Pada wizard advanced config, aktifkan sakelar Fault Injection. Lalu, aktifkan sakelar Request Latency, atur Latency menjadi 4s dan Injection Percentage menjadi 100, lalu klik Create.
-
-
Buat aturan routing untuk
/static.-
Pada halaman Route management, klik Create.
-
Pada wizard set route detail, konfigurasikan parameter dan klik Next.
Parameter
Contoh
route type
Untuk contoh ini, pilih http.
Namespaces
Untuk contoh ini, pilih default.
route name
Untuk contoh ini, masukkan
static.description
Untuk contoh ini, masukkan
static resource.priority
Untuk contoh ini, masukkan
0.Matching rules
Konfigurasikan pencocokan URL. Hanya permintaan dari URL yang memenuhi persyaratan yang dapat diarahkan ke layanan tujuan.
Aktifkan sakelar Matching request URI. Atur Method menjadi Prefix dan Content menjadi
/static. -
Langkah-langkah untuk membuat rute
/staticsama dengan langkah-langkah untuk rute/productpage. Untuk detailnya, lihat Buat rute productpage.
-
-
Buat aturan routing untuk
/login.-
Pada halaman Route management, klik Create.
-
Pada wizard set route detail, konfigurasikan parameter, lalu klik Next.
Parameter
Contoh
route type
Untuk contoh ini, pilih http.
Namespaces
Untuk contoh ini, pilih default.
route name
Untuk contoh ini, masukkan
login.description
Untuk contoh ini, masukkan
login request route.priority
Untuk contoh ini, masukkan
0.Matching rules
Konfigurasikan pencocokan URL. Hanya permintaan dari URL yang memenuhi persyaratan yang dapat diarahkan ke layanan tujuan.
Aktifkan sakelar Matching request URI. Atur Method menjadi Prefix dan Content menjadi
/login. -
Langkah-langkah selanjutnya untuk membuat rute
/loginsama dengan langkah-langkah untuk rute/productpage. Untuk langkah-langkah detailnya, lihat Buat rute productpage.
-
-
Buat aturan routing untuk
/logout.-
Pada halaman Route management, klik Create.
-
Pada wizard set route detail, konfigurasikan parameter, lalu klik Next.
Parameter
Contoh
route type
Untuk contoh ini, pilih http.
Namespaces
Untuk contoh ini, pilih default.
route name
Untuk contoh ini, masukkan
logout.description
Untuk contoh ini, masukkan
logout route.priority
Untuk contoh ini, masukkan
0.Matching rules
Konfigurasikan pencocokan URL. Hanya permintaan dari URL yang memenuhi persyaratan yang dapat diarahkan ke layanan tujuan.
Aktifkan sakelar Matching request URI. Atur Method menjadi Prefix dan Content menjadi /logout.
-
Langkah-langkah selanjutnya untuk membuat rute /logout sama dengan langkah-langkah untuk rute /productpage. Untuk langkah-langkah detailnya, lihat Buat rute productpage.
-
-
Buat aturan routing untuk
/api/v1/products.-
Pada halaman Route management, klik Create.
-
Pada wizard set route detail, konfigurasikan parameter, lalu klik Next.
Parameter
Deskripsi
route type
Untuk contoh ini, pilih http.
Namespaces
Untuk contoh ini, pilih default.
route name
Untuk contoh ini, masukkan
products-route.description
Untuk contoh ini, masukkan
product information.priority
Untuk contoh ini, masukkan
0.Matching rules
Konfigurasikan pencocokan URL. Hanya permintaan dari URL yang memenuhi persyaratan yang dapat diarahkan ke layanan tujuan.
Aktifkan sakelar Matching request URI. Atur Method menjadi Prefix dan Content menjadi
/api/v1/products. -
Langkah-langkah selanjutnya untuk membuat rute
/api/v1/productssama dengan langkah-langkah untuk membuat rute/productpage. Untuk detailnya, lihat Buat rute productpage.
-
-
-
Verifikasi aturan routing.
-
Di bilah alamat browser Anda, masukkan
http://{alamat IP gerbang masuk}/productpage.Halaman produk dari aplikasi sampel Bookinfo ditampilkan. Halaman ini mencakup ringkasan buku The Comedy of Errors, Book Details (seperti genre, jumlah halaman, penerbit, dan bahasa), serta Book Reviews (termasuk peringkat dan komentar). Hal ini mengonfirmasi bahwa aturan routing berfungsi.
-
Di pojok kanan atas halaman Bookinfo, klik Sign in.
-
Pada halaman Please sign in, masukkan username dan password apa pun, lalu klik Sign in.
Anda berhasil masuk ke Bookinfo. Setelah masuk, halaman produk aplikasi Bookinfo ditampilkan. Username default ditampilkan di pojok kanan atas, dan detail buku serta ulasan ditampilkan dengan benar. Hal ini menunjukkan bahwa layanan dapat diakses.
Untuk memverifikasi rute lainnya, Anda juga dapat mengakses layanan Bookinfo menggunakan path seperti /logout, /static, dan /api/v1/products.
-
Buka developer tools browser Anda dan beralih ke tab Network.
-
Muat ulang halaman.
Terdapat penundaan sekitar 4 detik. Di panel Network developer tools browser Anda, permintaan
productpagemembutuhkan waktu sekitar 4,21 detik, sedangkan sumber daya statis lainnya seperti file CSS, JS, dan font membutuhkan waktu 0 ms. Hal ini mengonfirmasi bahwa kebijakan fault injection berfungsi.
-
-
(Opsional) Lihat file YAML Virtual Service yang dihasilkan setelah aturan routing dibuat.
-
Di halaman detail instans ASM, pilih di panel navigasi sebelah kiri.
-
Pada halaman Virtual Service, temukan Virtual Service target dan klik View YAML pada kolom Operator.
-
Pada kotak dialog Edit, lihat file YAML yang dihasilkan untuk Virtual Service tersebut. Setelah mengonfirmasi kontennya, klik OK.
-
Operasi terkait
Lihat detail layanan
Lihat detail layanan yang diimpor, seperti status injection sidecar dan wilayahnya.
-
Pada halaman Ingress Gateway, klik nama gerbang target. Di panel navigasi sebelah kiri halaman Ikhtisar Gerbang, klik Upstream Service.
-
Pada halaman Upstream Service, temukan layanan target dan klik service details pada kolom Operator. Pada halaman service details, lihat detail layanan, seperti status injection sidecar dan wilayahnya.
Nonaktifkan aturan routing
Anda dapat menonaktifkan aturan routing dengan mengambilnya offline.
-
Pada halaman Ingress Gateway, klik nama gerbang target.
-
Di panel navigasi sebelah kiri halaman Ikhtisar Gerbang, klik Route management.
-
Pada halaman Route management, temukan aturan routing target dan klik offline pada kolom Operator.
-
Pada kotak dialog Confirm, klik OK.
-
Verifikasi bahwa aturan routing telah offline.
-
Di bilah alamat browser Anda, masukkan
http://{alamat IP gerbang masuk}/productpage. -
Di pojok kanan atas halaman Bookinfo, klik Sign in.
-
Pada halaman Please sign in, masukkan username dan password apa pun, lalu klik Sign in.
Muncul error "page not found", yang mengonfirmasi bahwa aturan routing tidak aktif.
CatatanUntuk mengaktifkan kembali aturan tersebut, bawa kembali online:
Pada halaman Route management, temukan aturan routing target dan klik online pada kolom Operator. Pada kotak dialog Confirm, klik OK.
-