【k8s集群应用】Kubernetes 容器编排系统

Kubernetes 容器编排系统

背景与发展

更高级的容器编排工具:

工具名称 描述 所属公司/组织
docker-swarm Docker旗下的容器跨主机编排工具,是实现在多机上Docker容器及其管理调度的工具 Docker
mesos + marathon mesos:分布式资源管理框架,可以对集群中的多台主机的硬件资源进行统一调度和管理
marathon:mesos的容器编排框架,用来调度和运行容器服务
Apache
kubernetes Google旗下的容器跨主机编排工具,已经成为当前容器编排工具的事实标准 Google

物理机时代
物理机存在诸多局限,如部署慢、成本高、资源浪费以及扩展和迁移困难。每台物理服务器需要单独安装操作系统和应用程序环境,配置繁琐且硬件资源利用率低。
虚拟机时代
虚拟机(如VMware)通过虚拟化技术解决了物理机的部分问题。虚拟机可以在物理机上快速部署,实现资源池化,提高资源利用率,并通过资源隔离确保虚拟机之间的独立性。然而,虚拟机仍需安装完整的操作系统,导致资源消耗较大。
容器化时代
容器化技术(如Docker)进一步解决了虚拟机的缺点。容器共享主机操作系统内核,无需安装完整的操作系统,从而实现了更高效的资源利用。容器具有一致的运行环境,启动速度快,且镜像体积小,便于分发和管理。然而,单机上的容器编排存在诸多挑战,如节点管理、负载均衡、自动化运维等。

Kubernetes 基本概念

全称与缩写
全称为 Kubernetes (K12345678S)(简称K8s)是一个用于自动部署、扩展和管理容器化应用程序的开源系统。K8s的名字来源于希腊语的舵手或飞行员,寓意着它作为容器集群的“领航者”。

由来与发展
K8s起源于Google的Borg系统(博格系统,google内部使用的大规模容器编排工具),后经GO语言重写并捐献给云原生计算基金会(CNCF)开源。随着容器的广泛使用,K8s已成为容器编排工具的事实标准。

作用与特点
K8s是一个生态极其丰富的容器编排框架工具,负责自动化运维管理多个容器化程序。它提供了自动化管理、弹性伸缩、高可用性、负载均衡和跨平台支持等特点,大大提高了应用部署和管理的效率。

Kubernetes 集群架构与组件

主从设备模型
K8s采用主从设备模型(Master-Slave架构),其中Master节点负责集群的调度、管理和运维,而Worker Node节点则负责运行工作负载。
Master组件

  • API Server:集群的统一入口,负责处理RESTful API请求。
  • Scheduler:负责根据调度算法将Pod调度到合适的Node上。
  • Controller Manager:负责集群内各种资源的自动化管理,如ReplicaSet、Deployment等。
  • etcd:一个高可用的分布式键值数据库,用于存储集群的配置信息和状态。

Worker Node组件

  • kubelet:Node的代理,负责监听API Server的指令并执行相应的操作。
  • kube-proxy:实现Service的负
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值