使用Deployment控制器创建Pods并使Service发布到外网可访问

由于NFS支持节点共同读取及写入,所以可使用Deployment控制器创建多个Pod,并且每一个Pod都共享同一个目录

 

k8s-master

kubnet@hadoop2 volumes]$ vim pod-deploy.yml
            
       apiVersion: v1 kind: Service metadata: name: myapp
-nfs-svc namespace: default labels: app: myapp release: stable spec: selector: app: myapp volume: nfs type: NodePort ports: - name: myapp-nfs-web port: 80 targetPort: 80 nodePort: 30002 --- apiVersion: extensions/v1beta1 kind: Deployment metadata: name: myapp-nfs namespace: default labels: app: myapp release: stable spec: replicas: 3 template: metadata: labels: app: myapp volume: nfs spec: containers: - name: myapp-nfs-pod image: fangwenkai/kubernetes:v1.16 imagePullPolicy: IfNotPresent volumeMounts: - name: web-nfs mountPath: /usr/share/nginx/html/ readOnly: false volumes: - name: web-nfs nfs: path: /k8s/volumes server: 192.168.23.103
kubnet@hadoop2 volumes]$ kubectl get svc
使用Deployment控制器创建Pods并使Service发布到外网可访问_第1张图片
kubnet@hadoop2 volumes]$ kubectl get deployment
使用Deployment控制器创建Pods并使Service发布到外网可访问_第2张图片
kubnet@hadoop2 volumes]$ kubectl get pods --show-labels -l app=myapp,volume=nfs

 网页端访问本机IP+Port即可访问到index.html主页中内容(index.html内容在上一节中定义的,值为NFS-Node的主机名)

使用Deployment控制器创建Pods并使Service发布到外网可访问_第3张图片

 

你可能感兴趣的:(使用Deployment控制器创建Pods并使Service发布到外网可访问)