Kamis, 03 Oktober 2024

K8S-dengan rancher

 https://www.decice.eu/project-news/kubernetes/

Meningkatkan Kluster Kubernetes Rancher dengan KubeEdge: Pengalaman Awal dan Integrasi Prometheus (Logo DECICE, RANCHER, Kubernetes, KubeEdge, Prometheus)

Meningkatkan Cluster Kubernetes Rancher dengan KubeEdge: Pengalaman Awal dan Integrasi Prometheus

Dalam artikel ini, kami berbagi pengalaman awal kami dalam memperluas klaster Rancher Kubernetes yang ada dengan KubeEdge dan penyediaan eksportir node Prometheus ke KubeEdge.


Kerangka kerja DECICE [1] bergantung pada informasi telemetri dan pemantauan infrastruktur untuk merepresentasikan status kembaran digital dinamis dari seluruh kontinum dari cloud publik dan privat, HPC, hingga perangkat edge dan IoT. Representasi kembaran digital ini memengaruhi keputusan penjadwalan kerangka kerja, seperti  penyeimbangan beban dinamis dan penempatan data. Oleh karena itu, sangat penting untuk mengumpulkan metrik pemantauan berbagai perangkat secara akurat dalam
kontinum, khususnya di lingkungan yang diatur Kubernetes.

Rancher [2] adalah platform manajemen kontainer sumber terbuka yang menyederhanakan penyebaran dan manajemen kluster Kubernetes di berbagai lingkungan. Platform ini menyediakan antarmuka yang mudah digunakan, manajemen terpusat, dan fitur tambahan seperti pemantauan, autentikasi, dan manajemen multi-kluster. Di HLRS, kami menggunakan Rancher untuk menyediakan kluster Kubernetes sesuai permintaan untuk berbagai proyek. Rancher dikonfigurasi [3] untuk menggunakan cloud OpenStack pribadi kami untuk penyediaan sumber daya, seperti mesin virtual (VM) untuk node Kubernetes dan volume untuk penyimpanan persisten.

Kami menyediakan kluster Kubernetes (v1.24) untuk pengaturan pengujian kami dengan satu kontrol dan tiga node pekerja. Kami memasang Prometheus pada node-node ini menggunakan grafik Helm pemantauan Rancher [4] . UI Rancher kemudian menampilkan informasi pemantauan (lihat Gambar 1). Selain itu, kami menyediakan VM untuk node KubeEdge (v1.14), yang akan ditambahkan ke kluster.

Informasi pemantauan node pekerja Kubernetes di UI Rancher
Gambar 1: Informasi pemantauan node pekerja Kubernetes di UI Rancher

Perlu dicatat bahwa Rancher membuat dan mengelola kumpulan node Kubernetes. Karena kita menambahkan node KubeEdge secara manual, node ini akan berada di luar kumpulan node Rancher. Namun, Rancher akan mencoba menjadwalkan pod sistem Kubernetes default pada node KubeEdge. Oleh karena itu, disarankan untuk menyediakan cara untuk menghindarinya, misalnya memberi label node Rancher secara eksplisit dan menyediakan pemilih node tambahan untuk set daemon sistem [5] , sehingga pod akan dijadwalkan hanya pada node Rancher.

KubeEdge terdiri dari Cloud Core dan Edge Core [6] . Dalam konteks ini, Cloud Core adalah kluster Kubernetes yang sudah ada, sedangkan Edge Core adalah node KubeEdge. Kami mengikuti manual instalasi [7] KubeEdge, selain itu menyediakan containerd runtime dan mengonfigurasi plugin Container Network Interface (CNI) [8] . Setelah menjalankan perintah untuk menggabungkan instance (“keadm join”), UI Rancher memperlihatkan bahwa node KubeEdge (“kubeedge”) telah ditambahkan ke daftar semua node (seperti yang diperlihatkan pada Gambar 2).

Daftar node, setelah node KubeEdge bergabung dengan cluster
Gambar 2: Daftar node, setelah node KubeEdge bergabung dengan cluster

Setelah node KubeEdge bergabung dengan kluster, daemon set Prometheus akan aktif dan mencoba menjadwalkan pod pengekspor node pada node KubeEdge untuk mengumpulkan data pemantauan. Informasi pemantauan kemudian dapat dilihat melalui UI Rancher, seperti yang digambarkan pada Gambar 3.

Informasi pemantauan node KubeEdge di UI Rancher
Gambar 3: Informasi pemantauan node KubeEdge di UI Rancher

Secara keseluruhan, percobaan ini membantu kami mengambil data pemantauan dari node kluster Kubernetes dan node KubeEdge. Untuk pekerjaan selanjutnya, kami akan melihat integrasi sistem pemantauan [9] dengan DECICE Telemetry API dan Monitoring Metric Storage, serta menangani sifat node edge dan IoT: optimalisasi frekuensi pengumpulan data, sinkronisasi, overhead rendah, dan keandalan untuk perangkat edge yang konektivitasnya buruk. 

 

Penulis: Kamil Tokmakov (HLRS)

 

Referensi 

[1]   Kunkel, Julian, dkk. “DECICE: Kerangka Kerja Kolaborasi Cerdas Device-Edge-Cloud.”  Pracetak arXiv arXiv:2305.02697  (2023).

[2]   https://www.rancher.com/

[3]   https://github.com/kubernetes/cloud-provider-openstack

[4]   https://ranchermanager.docs.rancher.com/reference-guides/monitoring-v2-configuration/helm-chart-options

[5]   Daemon set memastikan bahwa semua (atau beberapa) node menjalankan salinan pod. Saat node ditambahkan ke cluster, pod juga ditambahkan ke node tersebut. Untuk detail lebih lanjut, silakan kunjungi dokumentasi resmi: https://kubernetes.io/docs/concepts/workloads/controllers/daemonset/

[6]   https://github.com/kubeedge/kubeedge#architecture

[7]   https://kubeedge.io/en/docs/setup/keadm/

[8]   https://github.com/containerd/containerd/blob/main/docs/getting-started.md

[9]   https://www.decice.eu/project-news/hlrs/

 

 

Tautan

https://www.hlrs.de/


Tidak ada komentar:

Posting Komentar