kubenetes

kubenetes特点:

轻量级:消耗资源少
开源
弹性伸缩
负载均衡:IPVS

kubenetes组件

  1. api server: 所有服务访问统一入口,提供认证、授权、访问控制并定义pod访问策略
  2. crontrollerManager: 维护集群的状态,故障检测、自动扩展、滚动更新、控制器维持副本期望数目
  3. scheduler: 资源调度
  4. etcd: 键值对数据库 储存k8s集群所有重要信息(持久化)
  5. kubelet: 管理容器的生命周期
  6. kube-proxy: 为service提供cluster内部的服务发现和负载均衡,负责写入规则至iptables ipvs实现服务映射访问
  7. coredns: 为集群中的SVC创建一个域名ip的对应关系解析
  8. ingress controller: 为服务提供外网入口,官方只能实现四层代理,ingress 可以实现七层代理
  9. federation: 提供一个可以跨集群中心多k8s统一管理功能
  10. prometheus: 提供k8s集群的监控能力
  11. elk: 提供k8s集群日志统一分析介入平台
  12. container runtime: 镜像管理以及Pod和容器的真正运行

pod控制器类型

运行在Node环境中,
一个pod中可以运行多个容器
每个pod运行着一个特殊的pause为同一个pod中的其他容器提供网络和volume卷

RC & RS & Deployment

ReplicationController:
用来确保容器应用的副本数始终保持在用户定义的副本数,即如果有容器异常退出,会自动创建新的Pod 来替代;而如果异常多出来的容器也会自动回收。
在新版本的Kubernetes中建议使用ReplicaSet来取代ReplicationControlle

ReplicaSet跟ReplicationController没有本质的不同,只是名字不一样,并且ReplicaSet支持集合式的selector

虽然ReplicaSet可以独立使用,但一般还是建议使用Deployment来自动管理ReplicaSet,这样就无需担心跟其他机制的不兼容问题(比如ReplicaSet不支持rolling update但Deployment支持)

deployment在滚动更新时先创建一个新的RS-1,启动一个podv2,在RS中退出一个podv1以此滚动更新,更新完成后RS是不会进行删除的而是停用,回滚时,RS启用并建立一个podv1,RS-1删除一个podv2以此进行回滚。
在这里插入图片描述

HPA

Horizontal Pod Autoscaling 仅使用与Deployment和ReplicaSet,在v1版本中仅支持根据Pod的CPU利用率扩缩容,在v1a1pha版本中,支持根据内存和用户自定义的metric扩缩容

StatefulSet

StatefulSet是为了解决有状态服务的问题(对应Deployments 和ReplicaSets是为无状态服务而设计),其应用场景包括:
*稳定的持久化存储,即Pod重新调度后还是能访问到相同的持久化数据,基于PVC来实现
稳定的网络标志,即Pod重新调度后其PodName和 HostName不变,基于Headless Service(即没有ClusterIP的Service )来实现
*有序部署,有序扩展,即Pod 是有顺序的,在部署或者扩展的时候要依据定义的顺序依次依次进行(即从О到N-1,在下一个Pod运行之前所有之前的 Pod必须都是Running 和Ready状态)基于init containers来实现
有序收缩,有序删除(即从N-1到o)

DaemonSet

DaemonSet确保全部(或者一些)Node 上运行一个 Pod 的副本。当有Node加入集群时,也会为他们新增一个Pod 。当有Node从集群移除时,这些Pod 也会被回收。删除DaemonSet将会删除它创建的所有Pod

使用DaemonSet的一些典型用法:
*运行集群存储daemon,例如在每个Node 上运行glusterd、ceph。
*在每个Node上运行日志收集daemon,例如fluentd、logstash。
*在每个Node上运行监控 daemon,例如Prometheus Node Exporter

Job,Cronjob

Job 负载批处理任务,即仅执行一次的任务,它保证批处理任务的一个或多个Pod成功结束

Cron Job管理基于时间的Job,即:
*在给定时间点只运行一次
*周期性地在给定时间点运行

Service服务发现

对一个类型的服务提供唯一 一个名字 》唯一ip:端口
提供某种远程服务 映射到提供这种服务的一组容器应用上

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值