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 8m15sPada ketika ini, kami telah berjaya menerbitkan
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 psSelepas percubaan, selepas membunuh bekas, contoh bekas akan dijana semula secara automatik untuk kita. Dan
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 createdLihat
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!