楼主: kaixin202212
158 0

[数据云计算] Kuberentes环境搭建 [推广有奖]

  • 0关注
  • 1粉丝

讲师

16%

还不是VIP/贵宾

-

威望
0
论坛币
380 个
通用积分
29.2918
学术水平
0 点
热心指数
3 点
信用等级
0 点
经验
5172 点
帖子
179
精华
0
在线时间
279 小时
注册时间
2022-11-10
最后登录
2024-4-26

+2 论坛币
k人 参与回答

经管之家送您一份

应届毕业生专属福利!

求职就业群
赵安豆老师微信:zhaoandou666

经管之家联合CDA

送您一个全额奖学金名额~ !

感谢您参与论坛问题回答

经管之家送您两个论坛币!

+2 论坛币
1、基本概念

Kubernetes 是谷歌开源的基于容器技术的分布式架构方案,用于管理容器化的工作负载和服务,促进声明式配置和自动化。

Kubernetes 的功能有

  • 服务发现和负载均衡:使用 ip 地址或 dns 名称来暴露容器,并实现负载均衡分配网络流量
  • 部署和回滚:通过配置文件描述容器的期望状态,支持回滚到指定部署版本
  • 弹性伸缩:可根据指标配置自动伸缩策略,以应对突发流量
  • 容器配额管理:允许为每个容器指定所需的CPU和内存
  • 故障发现和自我修复:监控容器的运行状态,并尝试重启替换状态异常的容器
  • 密钥和配置管理:secret 和 configMap,两种资源来分别管理密钥信息和配置信息
  • 支持多种数据卷类型:例如:本地存储、公有云提供商、分布式存储系统等。
2、基本术语

Pod

pod:最小可部署单元,调度的最小基本单位,代表集群上正在运行的一个进程。

k8s 为每个 pod 分配唯一的 pod ip,每个 pod 有一个 pause 容器( 根容器)。pod 内的多个容器,共享 pause 容器的 ip 和 volume;同时 pause 容器的状态代表整个 pod 的状态。

Label

label:kv 键值对,通过给指定资源对象绑定 label 来实现对资源对象的分组管理。

通过 label 为资源对象贴上相对应的标签,然后通过 Label Selector(标签选择器)查询和筛选拥有某些 label 的资源对象。

例如:

# 标签选择器 selector:   # 1、标签匹配 matchLabels:    app: myweb # 选择标签 key-app,value-myweb 资源  # 2、表达式匹配 matchExpressions:   # 选择标签 key-tier, value-in (frontend, backend)    - {key: tier, operator: In, values: [frontend,backend]}    # 或使用以下写法,操作:In, NotIn, Exists and DoesNotExist   - key: tier     operator: In      values: ["frontend","backend"]

RC

Repliacation Controller,RC 副本控制器。保持 pod 的副本数量与预期数量一致。deployment 内部包含该功能,所以不推荐使用。

RS

Replica Set,RS 副本控制器。RC 的升级版本,区别在于:

  • RC 的 Label Selector 仅支持基于等式的表达式,RS 的 Label Selector 可以支持基于集合的表达式。
  • 在线编辑后,RS 自动更新 pod,RC 不会自动更新现有 pod。

Deployment

deployment:部署,副本控制器,用于更好的解决 pod 的部署、升级、回滚等问题。内部会自动创建 RS 用于pod 的副本控制。

deployment 相较于 RC/RS 具有以下优势:

  • deployment 资源对象会自动创建 RS 资源对象来完成部署,对 deployment 的修改并发布会产生新的 RS 资源对象,为新的发布版本服务。
  • 支持查看部署进度,以确定部署操作是否完成
  • 更新 deployment,会触发部署从而更新 pod
  • 支持 pause | resume 操作,暂停后修改不会触发发布,恢复后发布新的 deployment
  • 支持回滚操作
  • 支持重新启动操作,触发 pod 更新。
  • 自动清理不需要的 RS

StatefulSet

StatefulSet:管理有状态应用的 pod,例如 Kafka 集群、Mysql 集群、MongoDB集群等。与无状态的服务不同的是:无论怎么调度,每个 pod 都有一个永久不变的ID。

面向无状态的应用:RC、Deployment、DaemonSet、Job等。

DaemonSet

副本控制器,每个节点只运行一个 pod 副本。区分 deployment 多副本。

应用:每个节点上运行集群守护进程、日志收集守护进程和监控守护进程。


二维码

扫码加我 拉你入群

请注明:姓名-公司-职位

以便审核进群资格,未注明则拒绝

关键词:Uber 架构师 OPS dev Ber

您需要登录后才可以回帖 登录 | 我要注册

本版微信群
加好友,备注cda
拉您进交流群

京ICP备16021002-2号 京B2-20170662号 京公网安备 11010802022788号 论坛法律顾问:王进律师 知识产权保护声明   免责及隐私声明

GMT+8, 2024-4-28 12:14