Anda dapat menerapkan Cilium Hubble di kluster Container Service for Kubernetes (ACK) yang menggunakan plug-in jaringan Terway untuk memantau lalu lintas dan kebijakan jaringan dari kontainer. Ini memungkinkan Anda melihat arsitektur jaringan serta topologi bisnis. Topik ini menjelaskan cara menggunakan Cilium Hubble untuk melihat statistik terkait lalu lintas jaringan dalam jaringan kontainer, seperti sumber dan tujuan paket.
Prasyarat
Sebuah kluster ACK dikelola telah dibuat.
Cilium Hubble hanya mendukung mode One ENI for Multi-Pod dari Terway, yang didasarkan pada IPVLAN. Oleh karena itu, saat membuat kluster ACK, pilih Terway untuk parameter Network Plug-in dan IPvlan untuk parameter Terway Mode. Jika tidak, Anda tidak dapat menggunakan Cilium Hubble.
Langkah 1: Modifikasi Terway ConfigMap eni-config
Use the ACK console
Modifikasi Terway ConfigMap eni-config.
Masuk ke Konsol ACK. Di panel navigasi sebelah kiri, klik Clusters.
Di halaman Clusters, klik nama kluster yang ingin Anda ubah. Di panel navigasi sebelah kiri, pilih .
Di bagian atas halaman ConfigMap, pilih kube-system dari daftar drop-down Namespace, temukan ConfigMap eni-config, dan klik Edit YAML di kolom Actions.
Di panel View in YAML, temukan
10-terway.conf, tambahkan parameter berikut ke10-terway.conf, lalu klik OK."cilium_enable_hubble":"true", "cilium_hubble_listen_address":":4244", "cilium_hubble_metrics_server":":9091", "cilium_hubble_metrics":"drop,tcp,flow,port-distribution,icmp",Parameter
Deskripsi
Keterangan
eniip_virtual_type
Menentukan apakah akan mengaktifkan mode IPVLAN.
Jika ConfigMap tidak berisi parameter ini atau nilainya tidak diatur ke
IPVLAN, kluster Anda tidak mendukung Cilium Hubble.cilium_enable_hubble
Menentukan apakah akan mengaktifkan Cilium Hubble untuk menganalisis lalu lintas jaringan.
Dalam contoh ini, parameter ini diatur ke
"true".cilium_hubble_listen_address
Port yang digunakan untuk mengekspos Layanan Cilium Hubble.
Dalam contoh ini, parameter ini diatur ke
":4244".cilium_hubble_metrics_server
Port yang digunakan untuk mengekspos server metrik Cilium Hubble.
Dalam contoh ini, parameter ini diatur ke
":9091".cilium_hubble_metrics
Metrik yang ingin Anda kumpulkan dengan menggunakan Cilium Hubble. Pisahkan beberapa metrik dengan koma (,).
Kemampuan jaringan Lapisan 7 seperti HTTP dan DNS tidak didukung. Cilium Hubble dapat mengumpulkan metrik berikut:
"drop,tcp,flow,port-distribution,icmp".CatatanJika Anda menentukan terlalu banyak metrik, kinerja Cilium Hubble mungkin terpengaruh.
Mulai ulang pod Terway agar ConfigMap yang dimodifikasi diterapkan.
Di panel navigasi sebelah kiri halaman detail, pilih .
Di bagian atas halaman Pods, pilih kube-system dari daftar drop-down Namespace, masukkan terway-eniip di kotak pencarian, dan pilih di kolom Actions setiap pod yang namanya adalah terway-eniip-xxx.
Di pesan yang muncul, klik OK.
Di halaman Pods, jika kolom Status dari terway-eniip-xxx menampilkan Running, pod tersebut telah dimulai ulang.
Ulangi langkah-langkah sebelumnya untuk menghapus semua pod Terway.
Gunakan kubectl
Modifikasi Terway ConfigMap eni-config.
Jalankan perintah berikut untuk memodifikasi Terway ConfigMap eni-config:
kubectl -n kube-system edit configmap eni-configTambahkan konten berikut ke
10-terway.confdari Terway ConfigMap dan simpan ConfigMap:"cilium_enable_hubble":"true", "cilium_hubble_listen_address":":4244", "cilium_hubble_metrics_server":":9091", "cilium_hubble_metrics":"drop,tcp,flow,port-distribution,icmp",Parameter
Deskripsi
Keterangan
eniip_virtual_type
Menentukan apakah akan mengaktifkan mode IPVLAN.
Jika ConfigMap tidak berisi parameter ini atau nilainya tidak diatur ke
IPVLAN, kluster Anda tidak mendukung Cilium Hubble.cilium_enable_hubble
Menentukan apakah akan mengaktifkan Cilium Hubble untuk menganalisis lalu lintas jaringan.
Dalam contoh ini, parameter ini diatur ke
"true".cilium_hubble_listen_address
Port yang digunakan untuk mengekspos Layanan Cilium Hubble.
Dalam contoh ini, parameter ini diatur ke
":4244".cilium_hubble_metrics_server
Port yang digunakan untuk mengekspos server metrik Cilium Hubble.
Dalam contoh ini, parameter ini diatur ke
":9091".cilium_hubble_metrics
Metrik yang ingin Anda kumpulkan dengan menggunakan Cilium Hubble. Pisahkan beberapa metrik dengan koma (,).
Kemampuan jaringan Lapisan 7 seperti HTTP dan DNS tidak didukung. Cilium Hubble dapat mengumpulkan metrik berikut:
"drop,tcp,flow,port-distribution,icmp".CatatanJika Anda menentukan terlalu banyak metrik, kinerja Cilium Hubble mungkin terpengaruh.
Mulai ulang pod Terway agar ConfigMap yang dimodifikasi diterapkan.
kubectl rollout restart daemonset -n kube-system terway-eniip
Langkah 2: Instal Cilium Hubble
Masuk ke Konsol ACK. Di panel navigasi sebelah kiri, klik Clusters.
Di halaman Clusters, temukan kluster yang ingin Anda kelola dan klik namanya. Di panel sebelah kiri halaman detail kluster, pilih .
Di halaman Helm, klik Deploy. Di langkah Basic Information, konfigurasikan parameter berdasarkan tabel berikut.
Parameter
Contoh
Application Name
ack-terway-hubble
Namespace
kube-system
Source
Nilai default: Marketplace.
Chart
Skenario Penggunaan: Pilih All.
Arsitektur yang Didukung: Pilih amd64.
Masukkan ack-terway-hubble di kotak pencarian.
Pilih kartu ack-terway-hubble dan klik Next.
Di langkah Parameters, konfigurasikan parameter Chart Version. Di bagian Parameters, tentukan parameter
hostsdariingress. Host ini digunakan untuk masuk ke UI Hubble. Konfigurasikan parameter lain berdasarkan kebutuhan bisnis Anda. Klik OK.CatatanAnda harus menentukan parameter yang dijelaskan dalam tabel berikut di bawah
ingress.Parameter
Deskripsi
enabled
Menentukan apakah akan menggunakan Ingress untuk mengakses UI Hubble.
annotations
Anotasi dari Ingress.
path
Path root dari Ingress.
hosts
Host dari Ingress.
tls
Pengaturan Transport Layer Security (TLS) dari Ingress.
Langkah 3: Gunakan Cilium Hubble
Jika Anda menentukan parameter hosts untuk Ingress Cilium Hubble, Anda dapat masuk ke UI Hubble dengan mengakses host Ingress menggunakan port 80. Saat Anda mengakses host Ingress, informasi berikut muncul:
Jika nama domain yang Anda akses bukan nama domain otoritatif, seperti ingress.local, Anda harus menjalankan perintah kubectl -n kube-system get svc nginx-ingress-lb untuk menanyakan alamat IP UI Hubble. Kemudian, modifikasi file hosts di komputer Anda untuk memetakan ingress.local ke alamat IP UI Hubble.
Di bagian atas halaman, Anda dapat melihat topologi pod dan Layanan yang termasuk dalam namespace yang berbeda.
Di bagian bawah halaman,Anda dapat melihat sumber, tujuan, port, dan status pengalihan lalu lintas jaringan.
Jika Anda telah mengonfigurasi kebijakan jaringan, Anda dapat melihat paket yang dijatuhkan karena ketidakcocokan dengan kebijakan jaringan.

Cilium Hubble menggunakan Layanan hubble-metrics di namespace kube-system untuk mengekspos metrik aliran jaringan. Anda dapat menentukan metrik yang diekspos oleh Cilium Hubble dengan menentukan parameter cilium_hubble_metrics di Terway ConfigMap eni-config. Anda dapat menggunakan Prometheus sumber terbuka atau Managed Service for Prometheus untuk mengumpulkan metrik ini. Untuk informasi lebih lanjut, lihat Gunakan Prometheus Sumber Terbuka untuk Memantau Kluster ACK dan Managed Service for Prometheus.
Untuk informasi lebih lanjut tentang metrik yang dapat diekspos oleh Cilium Hubble, lihat Metrik yang Diekspos.
Kategori | Metrik | Label | Deskripsi |
drop | hubble_drop_total | reason, protocol | Jumlah paket yang dijatuhkan. |
tcp | hubble_tcp_flags_total | flag, family | Jumlah flag TCP. |
flow | hubble_flows_processed_total | type, subtype, verdict | Jumlah aliran jaringan yang diproses. |
distribusi-port | hubble_port_distribution_total | protocol, port | Distribusi paket pada port tujuan. |
icmp | hubble_icmp_total | family, type | Jumlah pesan Internet Control Message Protocol (ICMP). |