Kubernets学习一(基础概念篇)

一、简言

Kubernets是一套开源的dockers容器编排系统,与Kubernets并存的容器编排系统有Docker Swarm、Marathon和Nomad。Kubernets比较核心的特点就是能够自主的管理容器来保证云平台中的容器按照用户的期望运行状态运行。

二、框架和基础概念的理解

Kubernets架构图参考如下(架构图来源)。从Kubernets的架构图中可以看到,kubernets在架构组织关系上可以分为Mater和Node两种不同层次的节点模块。其中Master节点是管理节点,调度管理整个系统,Node是容器运行的工作节点。再对Master节点和Node节点进行进一步的划分,这两个节点包括有etcd、APIs、Scheduler、controller manager、Kubelet、proxy和Pod等。下面将对这些概念进行解释说明:
在这里插入图片描述
etcd:etcd是一个高可用的键值存储系统,用于服务发现、共享配置以及一致性保证。
API Server:Kube-apiserver是Kubernets最重要的核心组件之一,主要提供以下的功能:

  • 提供集群管理的REST API接口,包括认证授权、数据校验、访问控制以及集群状态变更。
  • 提供其他模块之间的数据交互和通信的枢纽(其他模块通过API Server查询或修改数据,只有API Server才直接操作etcd)

kube-scheduler:kube-sheduler负责分配调度Pod到集群内的节点上,它监听kube-apiserver,查询还未分配Node的Pod,然后根据调度策略为这些Pod分配节点(更新Pod的NodeName字段)。

Controller Manager:Controller Manager由kube-controller-manager和cloud-controller-manager组成,是Kubernetes的大脑,它通过apiserver监控整个集群的状态,比如故障检测、自动扩展、滚动更新等,并确保集群处于预期的工作状态。
Pod:Pod是一组紧密关联的容器集合,他们共享IPC、Network和UTS namespace,是Kubernetes调度的基本单位。Pod的设计理念是支持多个容器在一个Pod中共享网络和文件系统,可以通过进程通信和文件共享这种简单高效的方式组合完成服务。
kube-proxy:每台机器上都运行一个kube-proxy服务,它监听API server和endpoint的变化情况,并通过iptables等来为服务配置负载均衡(仅支持TCP和UDP)。kube-proxy可以直接运行在物理机上,也可以以static pod或者daemonset的方式运行。
Kubelet:在每个Node节点上都运行着一个Kubelet服务进程,默认监听10250端口,接收并执行master发来的指令,管理Pod及Pod中的容器。每个Kubelet进程会在API Server上注册节点自身信息,定期向master节点汇报节点的资源使用情况,并通过cAdvisor监控节点和容器的资源。

参考文献:

Kubernets的介绍

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值