Kubernetes(disingkatkan sebagai K8s) ialah sistem sumber terbuka yang digunakan untuk mengurus dan menggunakan aplikasi kontena merentas rangkaian komputer. Kubernetes telah menjadi platform pengurusan kontena yang popular dan berkuasa, pada asalnya dibangunkan oleh Google dan kini diselenggara oleh komuniti pembangun yang besar.
Fungsi utama Kubernetes termasuk
-
Pengurusan Kontena : Kubernetes membolehkan anda membungkus aplikasi dan sumbernya ke dalam containers. Containers menyediakan persekitaran yang ringan dan memastikan aplikasi berjalan secara konsisten pada mana-mana sistem.
-
Penerapan Automatik : Kubernetes membolehkan penggunaan automatik dan kebolehskalaan aplikasi dan perkhidmatan yang mudah. Anda boleh menentukan keperluan sumber, bilangan kejadian, dan Kubernetes secara automatik akan mengekalkan keadaan yang diingini.
-
Pengurusan Sumber : K8s mengurus sumber pelayan seperti CPU, memori dan storan untuk memastikan aplikasi tidak menggunakan sumber yang berlebihan dan tidak mengganggu antara satu sama lain.
-
Pemulihan Automatik dan Toleransi Kesalahan : Kubernetes membantu aplikasi pulih secara automatik daripada kegagalan. Ia boleh melancarkan semula secara automatik ke versi aplikasi sebelumnya jika versi baharu menghadapi masalah.
-
Pengimbangan Beban dan Pengagihan Trafik : Kubernetes menyediakan mekanisme untuk mengagihkan trafik secara sama rata antara contoh aplikasi pada pelayan yang berbeza nodes. Ini meningkatkan prestasi dan memastikan kebolehskalaan.
-
Pengurusan Konfigurasi dan Rahsia : Kubernetes membolehkan anda mengurus konfigurasi dan rahsia aplikasi dengan selamat menggunakan ciri seperti Rahsia K8s dan Peta Konfig.
Mekanisme operasi Kubernetes termasuk
-
Nodes: Pelayan atau komputer individu dalam rangkaian dirujuk sebagai " nodes." Terdapat dua jenis nodes dalam Kubernetes: Nod Induk dan Nod Pekerja. Nod Induk mengurus dan mengawal keseluruhan sistem, manakala Nod Pekerja melaksanakan containers dan aplikasi.
-
Pods: Pod ialah unit terkecil yang boleh digunakan dalam Kubernetes. Pod boleh mengandungi satu atau berbilang containers, tetapi ia berkongsi storan rangkaian dan kitaran hayat yang sama. Ini memudahkan komunikasi antara containers dalam pod.
-
Controller: Pengawal ialah komponen yang mengurus dan menyelenggara replika pods. Jenis pengawal termasuk ReplicaSet(memastikan bilangan yang betul pods dan dimulakan semula jika perlu), Deployment(menguruskan versi dan kemas kini aplikasi), dan StatefulSet(untuk menggunakan aplikasi stateful).
-
Service: Perkhidmatan ialah mekanisme untuk mengimbangi beban dan mengagihkan trafik ke pods. Perkhidmatan memudahkan aplikasi untuk mengakses pods tanpa perlu mengetahui lokasi khusus mereka.
-
Kubelet dan Kube Proxy: Kubelet ialah komponen yang berjalan pada setiap nod pekerja, bertanggungjawab untuk mengurus pods pada nod tersebut. Kube Proxy ialah proksi rangkaian untuk menyambung ke pods.
Akibatnya, Kubernetes mengautomasikan penggunaan dan pengurusan aplikasi kontena, mengurangkan masa dan usaha yang diperlukan untuk mengekalkan sistem yang kompleks.