tnblog
首页
视频
资源
登录

初探k8s

5934人阅读 2020/3/19 12:16 总访问:3223811 评论:0 收藏:0 手机
分类: 容器编排

概念补充



Deployment 是在 Pod 这个抽象上更为上层的一个抽象层,它可以定义一组 Pod 的副本数量,以及这个 Pod 的版本。一般大家用 Deployment 这个抽象来做应用的真正的管理,而 Pod 是组成 Deployment 最小的单元。


Kubernetes 是通过 Controller,控制器去维护 Deployment 中Pod 的数目,它也会去帮助 Deployment 自动恢复失败的 Pod。


比如说我可以定义一个 Deployment ,这个 Deployment 里面需要两个 Pod,当一个 Pod 失败的时候,控制器就会检测到,它重新把 Deployment 中的 Pod 数目从一个恢复到 2 个,通过再去新生成 1 个 Pod 。通过控制器,我们也会帮助完成发布的策略。比如说进行滚动升级,进行重新生成的升级,或者进行版本的回滚。 

实验??准备

实验前准备三个界面以方便观察



1.实验??开始


(1)首先我们看一下 minikube 的 status,可以看到所有配置都是配置好了的

minikube status


(2)下一步我们来看看集群???选???节点的状态,可以看到 master 的节点已经跑起来了

kubectl get nodes


(3)查看集群中 Deployment 这个资源

kubectl get deployments


(4)现在我们通过编写 deploymentnginx.yaml ??并运行它

??编写时请先使用管理员的方式进行编写

??后期会讲解内容具体含义

内容如下 

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  selector:
    matchLabels:     
      app: nginx
  replicas: 2
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.7.9
        ports:
        - containerPort: 80


(5)在↗?角的控制台上打开监听

kubectl get --watch deployments


(6)在??边的控制台上,执行命令创建文件内容所对应的 Pod

kubectl apply -f deploymentnginx.yaml

再来看看监控

??如果遇到如下问题请务必仔细检测yaml??是否有误

 

(7)我们再来访问一下我们刚刚所创建的详细信息

kubectl describe deployment nginx-deployment

[object Object]


上图我们可以看到版本为 1.7.9 

并且创建的 Pod 为 2 个


(8)接下来我们进行一个更新操作,创建一个 deploymentnginx-update.yaml 文件进行更新操作

sudo cp deploymentnginx.yaml deploymentnginx-update.yaml
sudo vim deploymentnginx-update.yaml

修改版本为 1.8 如下

apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment
spec:
  selector:
    matchLabels:     
      app: nginx
  replicas: 2
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.8
        ports:
        - containerPort: 80


(9)更新 deploymentnginx.yaml 

kubectl apply -f deploymentnginx-update.yaml

查看监控结果


(10)查看 nginx-deployment 的状态信息


(11)删除我们刚刚创建的节点

kubectl delete deployment nginx-deployment













欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739

评价
这一世以无限游戏为使命!
排名
6
文章
6
粉丝
16
评论
8
{{item.articleTitle}}
{{item.blogName}} : {{item.content}}
ICP备案 :渝ICP备18016597号-1
网站信息:2018-2024TNBLOG.NET
技术交流:群号656732739
联系我们:contact@tnblog.net
公网安备:50010702506256
欢迎加群交流技术