k8s-yaml部署第一个nginx

本文介绍了如何使用kubectl通过YAML文件在Kubernetes集群中部署和管理Nginx应用。首先,kubectl将清单提交给APIServer,经过调度、创建Pod并运行在合适的节点上。通过`kubectl get pods`和`kubectl get deploy`可以查看Pod和Deployment的状态。当修改replicas或镜像版本时,Kubernetes支持滚动更新,确保应用服务不间断。最后,使用`kubectl delete`命令可以从集群中删除应用。
摘要由CSDN通过智能技术生成

kubectl是直接操作APTServer的,所以就相当于我们的清单提交给APIServer,然后集群获取到清单描述的应用信息后存入etcd数据库中,然后kube-scheduler组件发现一有一个pod还没绑定到节点上,就会对这个pod进行一系列的调度,把他调度到一个合适的节点上,这个合适可以是pod上约束也可以是node约束,后面讲。

调度好后,把这个节点和pod绑定到一起,回写etcd,然后节点上的kubelet组件这个时候watch到一个pod被分配过来了,就去吧这个pod的信息拉取下来,然后根据描述通过容器运行时,可以使docker也可以是其他的,把容器创建起来,最后当然同样吧pod状态写回etcd,完成创建流程。

apiVersion: apps/v1   //头部信息
kind: Deployment
metadata:
  name: nginx-deploy  
  labels:
    chapter: first-app  //标签
spec:
  selector:  //选择器
     matchLabels:  
       app: nginx   //此处需要跟pod模板相同
  replicas: 2  //副本数量
  template: //pod模板
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name : nginx
        image: nginx:latest  //指定容器镜像名
        ports:
        - containerPort: 80 //容器内部端口

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值