Rumah  >  Artikel  >  Java  >  Bagaimana untuk menggunakan Springboot atau Nginx menggunakan Kubernetes

Bagaimana untuk menggunakan Springboot atau Nginx menggunakan Kubernetes

PHPz
PHPzke hadapan
2023-05-12 09:25:131064semak imbas

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

tidak memberikan keunikan, anda boleh menggunakan gabungan untuk memilih;

labelslabel: 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. ingressnodeports2.2 Penggunaan melalui perintah kubectl [3000-32767]

Apabila fail

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

. Lihat

di bawah: deploymentservicedashboard

Akses perkhidmatan Bagaimana untuk menggunakan Springboot atau Nginx menggunakan Kubernetes:

web

Semak melalui baris arahan : Bagaimana untuk menggunakan Springboot atau Nginx menggunakan Kubernetes

$ 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

Pada ketika ini, kami telah berjaya menerbitkan

kepada

.

springboot2.3 Cuba bunuh pod? kubernetes

Elemen pengurusan terkecil bukan bekas, tetapi

.

kubernetespod

Mari cuba padamkan Bagaimana untuk menggunakan Springboot atau Nginx menggunakan Kubernetes 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,

baharu akan dijana secara automatik untuk kami, yang boleh meningkatkan ketersediaan tinggi keseluruhan perkhidmatan.

pod2.4 Cuba bunuh bekas? pod

Mari kita terokai perkara yang berlaku jika kita membunuh contoh kontena.

$ docker ps
$ docker rm -f 57869688a226
57869688a226

$ docker ps

Selepas 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

Permintaan pengguna tiba-tiba meningkat dan perkhidmatan mungkin tidak dapat menyokongnya Pada masa ini, bilangan

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.

dashboardpod

Bagaimana untuk menggunakan Springboot atau Nginx menggunakan Kubernetes3 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
nginxLaksanakan arahan penggunaan: yaml
$ kubectl apply -f nginx-deployment-scale.yaml 
deployment.apps/nginx-deployment created
service/nginx-service created

Lihat

seperti berikut:

dashboard

Akses perkhidmatan: atau . Kerana kami menyediakan dua. Bagaimana untuk menggunakan Springboot atau Nginx menggunakan Kubernetes

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!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam