Dengan peningkatan aplikasi asli awan, Kubernetes telah menjadi standard de facto untuk orkestrasi kontena. Memandangkan Kubernetes adalah sumber terbuka dan boleh dijalankan pada pelbagai pengedaran Linux, adalah perkara biasa untuk menggunakan orkestrasi kontena Kubernetes dalam sistem Linux. Artikel ini akan memperkenalkan cara memasang dan mengkonfigurasi Kubernetes dalam sistem Linux dan cara menggunakan Kubernetes untuk orkestrasi kontena.
Memasang Kubernetes dalam sistem Linux biasanya memerlukan langkah berikut:
1.1 Pasang Docker
Disebabkan Kubernetes Gunakan Docker sebagai masa jalan kontena, jadi anda perlu memasang Docker terlebih dahulu. Dalam sistem Ubuntu, anda boleh menggunakan arahan berikut untuk memasang Docker:
sudo apt-get update sudo apt-get install docker.io
Dalam sistem CentOS, anda boleh menggunakan arahan berikut untuk memasang Docker:
sudo yum install docker sudo systemctl start docker sudo systemctl enable docker
1.2 Pasang Kubernetes
Dalam sistem Ubuntu Dalam sistem CentOS, anda boleh menggunakan arahan berikut untuk memasang Kubernetes:
sudo apt-get update && sudo apt-get install -y apt-transport-https curl curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | sudo apt-key add - echo "deb https://apt.kubernetes.io/ kubernetes-xenial main" | sudo tee /etc/apt/sources.list.d/kubernetes.list sudo apt-get update sudo apt-get install -y kubelet kubeadm kubectl
Dalam sistem CentOS, anda boleh menggunakan arahan berikut untuk memasang Kubernetes:
sudo yum install -y epel-release sudo yum update -y sudo yum install -y kubelet kubeadm kubectl sudo systemctl enable kubelet && sudo systemctl start kubelet
2.1 Memulakan nod Induk
Dalam gugusan Kubernetes, nod Induk bertanggungjawab untuk mengurus keseluruhan gugusan. Untuk memulakan nod Master, anda perlu menjalankan arahan berikut:
sudo kubeadm init --pod-network-cidr=10.244.0.0/16
Perintah ini akan memasang komponen yang diperlukan dan menjana arahan untuk menyertai nod. Beberapa baris terakhir output arahan pelaksanaan akan mengandungi arahan untuk menyertai nod, seperti:
kubeadm join 192.168.1.100:6443 --token abcdef.0123456789abcdef --discovery-token-ca-cert-hash sha256:0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
Sila ambil perhatian bahawa output arahan ini hendaklah unik dan hanya terpakai pada nod Induk tersebut.
2.2 Sertai Nod Pekerja
Untuk menambah nod Pekerja pada gugusan Kubernetes, anda perlu menjalankan output arahan nod gabungan dalam langkah sebelumnya. Contohnya:
sudo kubeadm join 192.168.1.100:6443 --token abcdef.0123456789abcdef --discovery-token-ca-cert-hash sha256:0123456789abcdef0123456789abcdef0123456789abcdef0123456789abcdef
Menjalankan arahan ini akan memasang komponen yang diperlukan dan menambah nod Pekerja pada kelompok.
2.3 Pasang pemalam rangkaian
Kubernetes memerlukan pemalam rangkaian untuk menyediakan rangkaian untuk Pod. Pemalam rangkaian yang biasa digunakan termasuk Flanel dan Calico. Di sini, kami memilih untuk memasang Flanel. Untuk memasang Flanel, anda boleh menjalankan arahan berikut:
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
Kini, kami telah berjaya memasang dan mengkonfigurasi Kubernetes pada sistem Linux kami. Seterusnya, kami akan memperkenalkan cara menggunakan Kubernetes untuk orkestrasi kontena.
3.1 Cipta Deployment
Dalam Kubernetes, Deployment ialah abstraksi untuk mencipta dan mengurus Pod. Untuk membuat Deployment, gunakan perintah kubectl. Contohnya, untuk mencipta Deployment bernama nginx, anda boleh menjalankan arahan berikut:
kubectl create deployment nginx --image=nginx
Perintah ini akan menggunakan bekas bernama nginx, menggunakan imej nginx pada Docker Hub.
3.2 Edit Deployment
Untuk mengubah suai Deployment, anda boleh menggunakan perintah kubectl edit deployment. Contohnya, untuk mengubah suai bilangan replika Deployment nginx kepada 3, anda boleh menjalankan arahan berikut:
kubectl edit deployment nginx
Ini akan membuka editor di mana anda boleh mengubah suai fail yaml. Tukar nilai medan replika kepada 3, kemudian simpan dan keluar dari editor.
3.3 Mendedahkan Perkhidmatan
Dalam Kubernetes, Perkhidmatan ialah abstraksi yang digunakan untuk mendedahkan titik akhir rangkaian Pod. Untuk mendedahkan Perkhidmatan Deployment, anda boleh menggunakan perintah kubectl expose. Sebagai contoh, untuk mendedahkan Perkhidmatan Penggunaan nginx, anda boleh menjalankan perintah berikut:
kubectl expose deployment nginx --port=80 --type=NodePort
Perintah ini akan mencipta Perkhidmatan bernama nginx dan mendedahkannya ke port 80 semua nod dalam kelompok.
3.4 Memperluaskan Deployment
Untuk melanjutkan Deployment, anda boleh menggunakan perintah skala kubectl. Sebagai contoh, untuk mengembangkan bilangan replika Deployment nginx kepada 5, anda boleh menjalankan arahan berikut:
kubectl scale deployment nginx --replicas=5
3.5 Status Pengurusan
Untuk melihat status Deployment, gunakan kubectl perintah. Contohnya, untuk melihat semua Deployment dan statusnya, anda boleh menjalankan perintah berikut:
kubectl get deployments
Perintah ini akan mengeluarkan nama, kuantiti yang diperlukan, kuantiti yang tersedia dan status semua Deployment dalam kelompok.
Ringkasan
Melalui artikel ini, kami telah mempelajari cara memasang dan mengkonfigurasi Kubernetes dalam sistem Linux dan menggunakan Kubernetes untuk orkestrasi kontena. Kemahiran ini mesti dimiliki oleh mana-mana pembangun dan pentadbir sistem yang ingin memasuki dunia asli awan.
Atas ialah kandungan terperinci Cara menggunakan orkestrasi kontena Kubernetes dalam sistem Linux. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!