欢迎访问IT教程网

k8s介绍

Linux admin 461℃ 0评论

介绍

k8s 使用go语言开发 谷歌开源的一个容器集群管理系统,borg衍生出来,主要用于自动化部署,扩展和管理容器应用,提供资源调度,部署管理 服务发现  扩容缩容 监控等

主要功能

数据卷   pod之间共享数据,可以使用数据卷

应用程序健康检查    容器内服务 设置监控策略

复制应用程序实例   pod副本数量

弹性伸缩   根据设定的指标如cpu利用率   自动缩放pod副本

服务发现   使用环境变量或dns 保证容器程序自动发现

负载均衡   一组pod副本分配一个私有集群ip  负载均衡转发请求到后台容器

滚动更新    更新服务不中断  一次更新一个pod  而不是所有

服务编排  通过文件描述部署服务 使得应用程序部署更高效

资源监控   node节点组件集成cadvisor资源收集工具  通过heapster汇总,存储到influxdb 由 grafana展示

提供认证和授权   支持角色访问控制rbac

基本对象

Pod  是最小单元   一个pod由一个或多个容器组成 pod 共享存储和网络,运行于同一台主机

Service   一个应用服务抽象, 通过Lable Selector选择一组Pod提供服务

Volume  数据卷   共享pod中容器使用的数据

Namespace   将对象逻辑上分配不同namespace  可以是不同项目 用户等区分管理 设定控制策略 实现多租户

Lable   标签用于区分对象  如  Pod  Service

基于对象更高层的抽象

ReplicaSet   保证pod的副本数量

Deployment  管理ReplicaSets和Pod

StatefulSet     适合持久性的应用程序  有唯一的网络标示符  持久存储,有序的部署扩展删除

DaemonSet   却表所有节点运行同一个pod

Job   一次性任务,运行完成后Pod销毁  不再重新启动新容器,

 

Master组件

kube-apiserver   集群统一入口

kube-controller-manager  处理集群中后台任务

kube-scheduler   调度为新建的Pod选择一个Node节点

Node组件

kubelet     管理本机运行容器的生命周期

kube-proxy  在node节点上实现pod网络代理 维护网络和四层负载

docker   运行容器

 

第三方服务

Etcd   分布式键值存储

本文固定链接:IT教程网 » k8s介绍
本站内容除特别标注外均为原创,欢迎转载,但请保留出处!

喜欢 (0)
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址