当前位置: 首页 > news >正文

广州网站设计培训云南网络营销推广

广州网站设计培训,云南网络营销推广,wordpress如何做优化,盐山建网站使用DaemonSet部署集群守护进程集 文章目录 使用DaemonSet部署集群守护进程集[toc]一、使用DaemonSet部署日志收集守护进程集二、管理DaemonSet部署的集群守护进程集1.对DaemonSet执行滚动更新操作2.对DaemonSet执行回滚操作3.删除DaemonSet 一、使用DaemonSet部署日志收集守护…

使用DaemonSet部署集群守护进程集

文章目录

  • 使用DaemonSet部署集群守护进程集
    • @[toc]
    • 一、使用DaemonSet部署日志收集守护进程集
    • 二、管理DaemonSet部署的集群守护进程集
      • 1.对DaemonSet执行滚动更新操作
      • 2.对DaemonSet执行回滚操作
      • 3.删除DaemonSet

一、使用DaemonSet部署日志收集守护进程集

Fluentd是用于统一日志层的开源数据收集器。Kubernetes开发了Elasticsearch组件来实现集群的日志管理。Elasticsearch是一个搜索引擎,负责存储日志并提供查询接口;Fluentd负责从Kubernetes搜集日志并发送给Elasticsearch。

(1)创建YAML格式的DaemonSet文件

[root@master ~]# vim fluentd-daemonset.yaml
[root@master ~]# cat fluentd-daemonset.yaml 
apiVersion: apps/v1
kind: DaemonSet                                # 资源类型为DaemonSet
metadata:name: fluentd-elasticsearchnamespace: kube-system                      # 名称空间采用内置的kube-systemlabels:k8s-app: fluentd-logging                 # DaemonSet资源的标签
spec:selector:matchLabels:                   # 必须指定与spec.template的标签匹配的Pod选择运算符name: fluentd-elasticsearchtemplate:                                         # 创建Pod副本所依据的模板metadata:labels:                                         # Pod模板必须指定标签name: fluentd-elasticsearchspec:tolerations:        # 容忍度设置,此处设置让该守护进程集在控制平面节点或主节点上运行- key: node-role.kubernetes.io/control-planeoperator: Existseffect: NoSchedule- key: node-role.kubernetes.io/masteroperator: Existseffect: NoSchedulecontainers:- name: fluentd-elasticsearchimage: quay.io/fluentd_elasticsearch/fluentd:v2.5.2    # 镜像resources:                                                    # 容器资源限制limits:memory: 200Mirequests:cpu: 100mmemory: 200MivolumeMounts:                                                # Pod的卷挂载点- name: varlogmountPath: /var/log- name: varlibdockercontainersmountPath: /var/lib/docker/containersreadOnly: trueterminationGracePeriodSeconds: 30volumes:                                         # 声明卷(本例定义了两个卷)- name: varloghostPath:                                     # 卷类型为HostPath(主机路径)path: /var/log- name: varlibdockercontainershostPath:path: /var/lib/docker/containers

(2)基于上述YAML配置文件创建DaemonSet

[root@master ~]# kubectl apply -f fluentd-daemonset.yaml 
daemonset.apps/fluentd-elasticsearch created

(3)查看该DaemonSet的Pod部署(操作该DaemonSet必须指定名称空间)

[root@master ~]# kubectl get pods --namespace=kube-system -l name=fluentd-elasticsearch -o wide
NAME                          READY   STATUS             RESTARTS   AGE    IP               NODE     NOMINATED NODE   READINESS GATES
fluentd-elasticsearch-4zwp8   0/1     ImagePullBackOff   0          7m1s   10.244.104.25    node2    <none>           <none>
fluentd-elasticsearch-gc5nd   0/1     ImagePullBackOff   0          7m1s   10.244.166.169   node1    <none>           <none>
fluentd-elasticsearch-w9b8q   0/1     ImagePullBackOff   0          7m1s   10.244.219.95    master   <none>           <none>

可以发现3个节点各自运行了Pod,DaemonSet会先遍历节点列表,检查是否带有此标签的Pod在运行,若没有,则创建。

(4)查看详细信息

[root@master ~]# kubectl describe daemonset fluentd-elasticsearch --namespace=kube-system
Name:           fluentd-elasticsearch
Selector:       name=fluentd-elasticsearch
Node-Selector:  <none>
Labels:         k8s-app=fluentd-logging
Annotations:    deprecated.daemonset.template.generation: 1
Desired Number of Nodes Scheduled: 3
Current Number of Nodes Scheduled: 3
Number of Nodes Scheduled with Up-to-date Pods: 3
Number of Nodes Scheduled with Available Pods: 0
Number of Nodes Misscheduled: 0
Pods Status:  0 Running / 3 Waiting / 0 Succeeded / 0 Failed
Pod Template:Labels:  name=fluentd-elasticsearchContainers:fluentd-elasticsearch:Image:      quay.io/fluentd_elasticsearch/fluentd:v2.4Port:       <none>Host Port:  <none>Limits:memory:  200MiRequests:cpu:        100mmemory:     200MiEnvironment:  <none>Mounts:/var/lib/docker/containers from varlibdockercontainers (ro)/var/log from varlog (rw)Volumes:varlog:Type:          HostPath (bare host directory volume)Path:          /var/logHostPathType:  varlibdockercontainers:Type:          HostPath (bare host directory volume)Path:          /var/lib/docker/containersHostPathType:  
Events:Type    Reason            Age   From                  Message----    ------            ----  ----                  -------Normal  SuccessfulCreate  10m   daemonset-controller  Created pod: fluentd-elasticsearch-w9b8qNormal  SuccessfulCreate  10m   daemonset-controller  Created pod: fluentd-elasticsearch-4zwp8Normal  SuccessfulCreate  10m   daemonset-controller  Created pod: fluentd-elasticsearch-gc5nd
[root@master ~]# 

二、管理DaemonSet部署的集群守护进程集

由于每个节点只能运行一个Pod副本,DaemonSet不支持扩缩容操作。对DaemonSet的管理主要是更新和回滚。

1.对DaemonSet执行滚动更新操作

  • OnDelete:在更新DaemonSet模板后,只有用户手动删除旧的Pod之后,新的Pod才会被自动创建。
  • RollingUpdate:这是默认的更新策略,即滚动更新。在更新DaemonSet模板后,旧的Pod将被自动终止,并且将以受控方式自动创建新的Pod。期间,每个节点上最多只能有一个DaemonSet部署的Pod运行。

(1)检查DaemonSet的更新策略

[root@master ~]# kubectl get ds/fluentd-elasticsearch -o go-template='{{.spec.updateStrategy.type}}{{"\n"}}' -n kube-system
RollingUpdate

(2)更新DaemonSet模板中的容器镜像

[root@master ~]# kubectl set image ds/fluentd-elasticsearch fluentd-elasticsearch=quay.io/fluentd_elasticsearch/fluentd:v2.6.0 -n kube-system
daemonset.apps/fluentd-elasticsearch image updated

(3)监视DaemonSet的滚动更新状态和进度

[root@master ~]# kubectl rollout status ds/fluentd-elasticsearch -n kube-system
Waiting for daemon set "fluentd-elasticsearch" rollout to finish: 0 of 3 updated pods are available...

2.对DaemonSet执行回滚操作

(1)查看该DaemonSet的修订版本历史

[root@master ~]# kubectl rollout history ds/fluentd-elasticsearch -n kube-system
daemonset.apps/fluentd-elasticsearch 
REVISION  CHANGE-CAUSE
1         <none>
2         <none>

(2)直接回滚到该DaemonSet的上一版本

[root@master ~]# kubectl rollout undo ds/fluentd-elasticsearch -n kube-system
daemonset.apps/fluentd-elasticsearch rolled back

(3)监视该DaemonSet的回滚进度

[root@master ~]# kubectl rollout status ds/fluentd-elasticsearch -n kube-system
Waiting for daemon set "fluentd-elasticsearch" rollout to finish: 0 of 3 updated pods are available...

3.删除DaemonSet

(1)从名称空间中删除

[root@master ~]# kubectl delete ds fluentd-elasticsearch -n kube-system
daemonset.apps "fluentd-elasticsearch" deleted

(2)进一步验证

[root@master ~]# kubectl get pods -n kube-system -l name=fluentd-elasticsearch -o wide
No resources found in kube-system namespace.
http://www.dtcms.com/a/475921.html

相关文章:

  • 蓝牙技术栈笔记(2)
  • Java接入火山引擎快速体验
  • 求一个dw做的网站企业网站建设资金预算表
  • 企业 网站备案 法人购物网站前台模板
  • 58同城盐城网站建设网站建设违约责任
  • asp网站上传重庆网站建设leco tec
  • 要服务网站建设wordpress顶部加横幅
  • 自己怎么做返利网站什么软件做美食视频网站
  • 企业品牌网站建设怎么做宁夏省住房城乡建设厅网站
  • 分享影视资源的网站怎么做青岛网站建设选圣城
  • 雄安微网站开发北京做网站设计公司
  • 营销网站建设企业asp网站安全怎么做
  • 建设银行网站官网h5设计是什么
  • 个人网站维护费用百度知道怎么赚钱
  • 官方网站如何建设网址导航建站
  • 手机网站制作公司报价wordpress 社交网站吗
  • 自己买服务器能在wordpress建网站国外校园网站建设分析
  • 网站建设 参照 标准规范网页制作与设计先学什么
  • 免费中英文网站模板重庆设计有限公司
  • 青岛网站建设推广公司哪家好莆田网站建设费用
  • 做经营行网站需要什么wordpress 设置网站目录
  • 云南凡科建站哪家好免费2级域名注册
  • 网站设计师介绍wordpress如何做301跳转
  • html在线编辑网站备案 网站建设计划书
  • 王也头像高清帅气seo短视频网页入口引流推广
  • 做网站的整体风格确定方式产品设计招聘网站
  • 做网站备案照片的要求如何用凡科网建立一个网站
  • 做网站公司北京缙云网站建设
  • 怎么样自己创建网站怎么做网站外推
  • 网站打不开了什么原因企业网站建设457