1 Prakata
Ini sangat mudah, hanya satu yaml
fail.
2 Penggunaan satu klik springboot
2.1 Sediakan fail yaml
Apabila fail imej disediakan, ia sangat mudah untuk digunakan untuk kubernetes
, anda hanya memerlukan fail dalam format yaml
, yang boleh menerangkan komponen yang anda perlukan, seperti deployment
, service
, ingress
, dsb. Takrifannya adalah seperti berikut:
apiversion: apps/v1 kind: deployment metadata: name: pkslow-springboot-deployment spec: selector: matchlabels: app: springboot replicas: 2 template: metadata: labels: app: springboot spec: containers: - name: springboot image: pkslow/springboot-mongo:0.0.6 ports: - containerport: 8080 --- apiversion: v1 kind: service metadata: labels: app: springboot name: pkslow-springboot-service spec: ports: - port: 8080 name: springboot-service protocol: tcp targetport: 8080 nodeport: 30080 selector: app: springboot type: nodeport
kind
: jenis, termasuk deployment
, service
, pod
, ingress
, dsb., sangat kaya; >: digunakan untuk definisi Beberapa maklumat komponen, seperti nama, label, dsb.;
metadata
: fungsi label, sangat berguna untuk memilih persatuan tetapi
labels
label
: Untuk perkhidmatan yang perlu didedahkan kepada luar, terdapat tiga cara:
, nodeport
, di sini nodeports
digunakan; ambil perhatian bahawa julat port lalai ialah loadbalancer
, jika anda memerlukan julat lain, anda perlu mengubah suai parameter yang berkaitan. ingress
nodeports
2.2 Penggunaan melalui perintah kubectl [3000-32767]
sedia, anda boleh menggunakan ia melalui arahan berikut:
$ kubectl create -f pksow-springboot.yaml deployment.apps/pkslow-springboot-deployment created service/pkslow-springboot-service created
Melihat log konsol menunjukkan bahawa ia telah berjaya dibuatyaml
dan
di bawah: deployment
service
dashboard
Akses perkhidmatan :
web
Semak melalui baris arahan :
$ kubectl get deployment name ready up-to-date available age pkslow-springboot-deployment 2/2 2 2 8m2s $ kubectl get service name type cluster-ip external-ip port(s) age kubernetes clusterip 10.96.0.1 <none> 443/tcp 10m pkslow-springboot-service nodeport 10.102.218.119 <none> 8080:30080/tcp 8m7s $ kubectl get pod name ready status restarts age pkslow-springboot-deployment-68dffc6795-874tp 1/1 running 0 8m15s pkslow-springboot-deployment-68dffc6795-89xww 1/1 running 0 8m15s
kepada
.springboot
2.3 Cuba bunuh pod? kubernetes
Elemen pengurusan terkecil bukan bekas, tetapi
.kubernetes
pod
Mari cuba padamkan dan lihat apa yang berlaku?
$ kubectl delete pod pkslow-springboot-deployment-68dffc6795-89xww pod "pkslow-springboot-deployment-68dffc6795-89xww" deleted $ kubectl get pod name ready status restarts age pkslow-springboot-deployment-68dffc6795-874tp 1/1 running 0 13m pkslow-springboot-deployment-68dffc6795-gpw67 1/1 running 0 46s
boleh mendapati bahawa selepas memadamkan satu lagi pod
,
pod
2.4 Cuba bunuh bekas? pod
$ docker ps $ docker rm -f 57869688a226 57869688a226 $ docker ps
tidak akan berubah atau dijana semula.
2.5 Pengembangan pesat podpod
perlu ditambah. Cuma ubah suai
fail konfigurasi dan kemas kini kepada pod
. Kemudian laksanakan arahan berikut: yaml
$ kubectl apply -f pksow-springboot.yaml
replicas
untuk melihat replicas: 4
, dua lagi ditambah berdasarkan dua asal. dashboard
pod
3 Penggunaan satu klik nginx
Jika anda tidak mempunyai cermin , anda boleh menggunakan cermin rasmi
Fail adalah seperti berikut: springboot
apiversion: apps/v1 kind: deployment metadata: name: nginx-deployment spec: selector: matchlabels: app: nginx replicas: 3 template: metadata: labels: app: nginx spec: containers: - name: nginx image: nginx:1.19.0 ports: - containerport: 80 --- apiversion: v1 kind: service metadata: labels: app: nginx name: nginx-service spec: ports: - port: 80 name: nginx-service1 protocol: tcp targetport: 80 nodeport: 30000 - port: 81 name: nginx-service2 protocol: tcp targetport: 80 nodeport: 30001 selector: app: nginx type: nodeport
nginx
Laksanakan arahan penggunaan: yaml
$ kubectl apply -f nginx-deployment-scale.yaml deployment.apps/nginx-deployment created service/nginx-service created
seperti berikut:
dashboard
Akses perkhidmatan: atau . Kerana kami menyediakan dua.
Atas ialah kandungan terperinci Bagaimana untuk menggunakan Springboot atau Nginx menggunakan Kubernetes. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!