K8s使用deploy部署nginx
跳转到导航
跳转到搜索
info
k8smaster 192.168.88.70 k8snode1 192.168.88.71 k8snode2192.168.88.72
使用deployment 部署nginx服务
deploy文件如下:
root@k8s-master:~# cat ngdeploy.yaml
apiVersion: apps/v1
kind: Deployment
metadata:
name: my-nginx
spec:
replicas: 2
selector:
matchLabels:
app: nginx
template:
metadata:
labels:
app: nginx
spec:
containers:
- name: nginx
image: nginx:latest
ports:
- containerPort: 80
---
apiVersion: v1
kind: Service
metadata:
name: ngx-service
labels:
app: nginx
spec:
type: NodePort
selector:
app: nginx
ports:
- port: 80
targetPort: 80
nodePort: 32500
创建deploy
kubectl apply -f ngdeploy.yaml
删除
kubectl delete -f ngdeploy.yaml
查看pod及svc服务
root@k8s-master:~# kubectl get pod,svc
NAME READY STATUS RESTARTS AGE
pod/my-nginx-585449566-6g2rh 1/1 Running 0 3m37s
pod/my-nginx-585449566-9nwgt 1/1 Running 0 3m37s
pod/my-nginx-585449566-ww28p 1/1 Running 0 3m37s
pod/nginx-deployment 1/1 Running 0 10m
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
service/kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 4h38m
service/ngx-service NodePort 10.96.36.220 <none> 80:32500/TCP 3m37s
root@k8s-master:~#
masterip
http://192.168.88.70:32500/
命令行方式创建nginx服务
1)、创建一个nginx的pod 现在我们在kubernetes集群中创建一个nginx的pod,验证是否能正常运行。 在master节点执行一下步骤: [root@k8s-master ~]# kubectl create deployment nginx --image=nginx deployment.apps/nginx created [root@k8s-master ~]# kubectl expose deployment nginx --port=80 --type=NodePort service/nginx exposed 现在我们查看pod和service [root@k8s-master ~]# kubectl get pod,svc -o wide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES pod/nginx-6799fc88d8-9wjjt 1/1 Running 0 33s 10.244.2.4 k8s-node2 <none> <none> NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR service/kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 4h40m <none> service/nginx NodePort 10.96.172.103 <none> 80:30346/TCP 22s app=nginx service/ngx-service NodePort 10.96.36.220 <none> 80:32500/TCP 6m2s app=nginx root@k8s-master:~# 打印的结果中,前半部分是pod相关信息,后半部分是service相关信息。我们看service/nginx这一行可以看出service暴漏给集群的端口是 32500。记住这个端口。 然后从pod的详细信息可以看出此时pod在node2节点之上。node2节点的IP地址是192.168.88.72
删除
kubectl get pod -o wide nginx-deployment 1/1 Running 1 41h 10.244.1.5 k8s-node1 <none> <none>