创建一个yml文件
nginx.yml
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
app: mynginx
name: nginx
spec:
replicas: 3
selector:
matchLabels:
app: mynginx
template:
metadata:
labels:
app: mynginx
spec:
containers:
- name: nginx
image: nginx:1.25
imagePullPolicy: IfNotPresent
先pull image
docker pull nginx:1.25
由于docker镜像访问失败,可以提前load
minikube image load nginx:1.25
执行
[admin@localhost k8s]$ kubectl apply -f nginx.yaml
deployment.apps/nginx created
[admin@localhost k8s]$ kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-58fd4875cd-lj7rz 1/1 Running 0 6s
nginx-58fd4875cd-m9fch 1/1 Running 0 6s
nginx-58fd4875cd-w8f7t 1/1 Running 0 6s
查看成功!
设置一下扩容数
[admin@localhost k8s]$ kubectl scale --replicas=5 deployment/nginx
deployment.apps/nginx scaled
[admin@localhost k8s]$ kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-58fd4875cd-4s5g6 1/1 Running 0 6s
nginx-58fd4875cd-lj7rz 1/1 Running 0 2m19s
nginx-58fd4875cd-m9fch 1/1 Running 0 2m19s
nginx-58fd4875cd-p62lv 1/1 Running 0 6s
nginx-58fd4875cd-w8f7t 1/1 Running 0 2m19s
删掉一个pod,由于是deployment级别创建的,会自动创建保持副本数
[admin@localhost k8s]$ kubectl delete pod nginx-58fd4875cd-4s5g6
pod "nginx-58fd4875cd-4s5g6" deleted
[admin@localhost k8s]$ kubectl get pods
NAME READY STATUS RESTARTS AGE
nginx-58fd4875cd-9qfhl 1/1 Running 0 4s
nginx-58fd4875cd-lj7rz 1/1 Running 0 2m55s
nginx-58fd4875cd-m9fch 1/1 Running 0 2m55s
nginx-58fd4875cd-p62lv 1/1 Running 0 42s
nginx-58fd4875cd-w8f7t 1/1 Running 0 2m55s