K8s进阶之路-有状态服务/守护进程/任务:

  1. StatefulSet:专门针对有状态服务进行部署的一个控制器 (长连接)

实现:通过headless service网络固定、数据不能丢失、顺序得到保障,
(配置:Headless Service: 对于 有状态 服务的DNS管理, 通过固定的域名访问某一个pod
DNS:用于定义网标志(DNS domain) Domain Name Server: 将域名服务将城名与 ip 定映射关系**)**
组成

  • Headless Service: 对于 有状态 服务的DNS管理----网络
  • volumeClaimTemplat:用于创建持久化卷存储----存储

statelSet中每个pod的DNS格式为:
statefulSetName-[0..N-1.serviceNamenamespace.svc.cluster.local

  • serviceName 为 Headless Service 的名字
  • 0.N-1为 Pod 所在的序号,从0开始到 N-1
  • statefulSetName 服务所在的命名空间
  • namespace 为服务所在的 namespace, Headless Servic和StatefulSet必须在相同的 namespace
  • .cluster.local为 Cluster Domain本地集群域名
  1. 守护进程:

DaemonSet:为每一个匹配的Node都部署一个守护进程。
DaemonSet 保证在每个 Node 上都运行一个容器副本,常用来部署一些集群的日志、监控或者其他系统管理应用,典型的应用包括:

  • 日志收集,比如 fluentd,logstash 等
  • 系统监控,比如 Prometheus Node Exporter,collectd.New Relic agent,Ganglia gmond 等
  • 系统程序,比如 kubeproxy,kube-dns,glusterd, ceph 等
  1. 任务/定时任务:一个任务也是一个pod
  • Job任务执行完就销毁了
  • CronJob:定时任务





相关推荐
Hui Baby1 小时前
K8S使用CRD和控制器简单应用
云原生·容器·kubernetes
阿里云云原生2 小时前
从“告警驱动”到“巡检驱动”:Agent 智能体如何实现前端体验治理的闭环?
云原生
AOwhisky3 小时前
Python 学习笔记(第十三期)——运维自动化(下·前篇):远程命令执行——paramiko基础篇
运维·python·学习·云原生·自动化·运维开发·paramiko
AOwhisky3 小时前
Python 学习笔记(第十四期)——运维自动化(下·中篇):远程文件传输——paramiko进阶篇
运维·python·学习·云原生·自动化·文件传输·paramiko
做个文艺程序员4 小时前
Linux第22篇:用Docker容器化你的Java SaaS应用:一次构建,随处运行
java·docker·容器
Zhu7586 小时前
在k8s环境部署Apache Superset最新版
容器·kubernetes·apache
小的博客6 小时前
windows下安装Docker Desptop
运维·docker·容器
Zhu7586 小时前
在k8s环境部署Apache zookeeper3.9.5,高可用,多pod
容器·kubernetes·apache
雨声不在7 小时前
macos 12使用docker
macos·docker·容器
云烟成雨TD7 小时前
Micrometer 系列【2】可观测性:指标(Metrics)
java·云原生·micrometer