Myluzh Blog

Kubernetes(k8s)-Depolyment方式部署应用

发布时间: 2023-6-15 文章作者: myluzh 分类名称: Kubernetes 朗读文章


0x01 命令行部署
复制代码
  1. [root@master ~]# kubectl run testapp --image=ccr.ccs.tencentyun.com/k8s-tutorial/test-k8s:v1
复制代码
  1. [root@master ~]# kubectl get pod
  2. NAME READY STATUS RESTARTS AGE
  3. testapp 0/1 ContainerCreating 0 16s

0x02 pod部署
1.编写pod.yaml
复制代码
  1. apiVersion: v1
  2. kind: Pod
  3. metadata:
  4. name: test-pod
  5. spec:
  6. # 定义容器,可以多个
  7. containers:
  8. - name: test-k8s # 容器名字
  9. image: ccr.ccs.tencentyun.com/k8s-tutorial/test-k8s:v1 # 镜像
2.部署
复制代码
  1. [root@master ~]# kubectl apply -f ./pod.yaml
  2. [root@master ~]# kubectl get pod
  3. NAME READY STATUS RESTARTS AGE
  4. test-pod 1/1 Running 0 11s
  5. testapp 1/1 Running 0 8m16s

0x03 Depolyment部署

Depolyment通过lables关联pods
WX20230616-214641@2x.png
1.编写hellohttp.yaml
复制代码
  1. apiVersion: apps/v1
  2. kind: Deployment
  3. metadata:
  4. # 部署名字
  5. name: hellohttp
  6. spec:
  7. replicas: 5
  8. # 用来查找关联的 Pod,所有标签都匹配才行
  9. selector:
  10. matchLabels:
  11. app: hellohttp
  12. # 定义 Pod 相关数据
  13. template:
  14. metadata:
  15. labels:
  16. app: hellohttp
  17. spec:
  18. # 定义容器,可以多个
  19. containers:
  20. - name: hellohttp # 容器名字
  21. image: registry.cn-hangzhou.aliyuncs.com/myluzh/hellohttp:v1 # 镜像
2.部署
复制代码
  1. [root@master hellohttp]# kubectl apply -f app.yaml
  2. [root@master hellohttp]# kubectl get pod -o wide
  3. NAME                         READY   STATUS    RESTARTS   AGE   IP          NODE    NOMINATED NODE   READINESS GATES
  4. hellohttp-78c5857bbd-5v6m6   1/1     Running   0          15m   10.32.0.3   node2   <none>           <none>
  5. hellohttp-78c5857bbd-b4jg4   1/1     Running   0          15m   10.40.0.4   node1   <none>           <none>
  6. hellohttp-78c5857bbd-pfdkv   1/1     Running   0          15m   10.40.0.3   node1   <none>           <none>
  7. hellohttp-78c5857bbd-xjkvr   1/1     Running   0          15m   10.32.0.2   node2   <none>           <none>
  8. hellohttp-78c5857bbd-z4n4q   1/1     Running   0          15m   10.32.0.4   node2   <none>           <none>
3.使用 describe查看pod状态
复制代码
  1. [root@master hellohttp]# kubectl describe pod/hellohttp-78c5857bbd-5v6m6
注意:如果发现 Events 中有如下报错:”network: open /run/flannel/subnet.env: no such file or directory“,解决方案
在每个节点创建文件/run/flannel/subnet.env写入以下内容,配置后等待一会就好了。
复制代码
  1. FLANNEL_NETWORK=10.244.0.0/16
  2. FLANNEL_SUBNET=10.244.0.1/24
  3. FLANNEL_MTU=1450
  4. FLANNEL_IPMASQ=true



哈哈哈

标签: k8s k8s-depolyment kubernetes


正文到此结束
版权声明:若无特殊注明,本文皆为 Myluzh Blog 原创,转载请保留文章出处。
文章内容:https://itho.cn/k8s/297.html
文章标题:《Kubernetes(k8s)-Depolyment方式部署应用

发表评论