云计算系列之Kubernetes(K8S)集群部署实战解析

内容导读

  • Kubernetes概述
  • Kubernetes集群的组件
  • Kubernetes集群的部署方式和工具
  • 使用部署工具创建Kubernetes集群

一、Kubernetes概述

1.1 什么是Kubernetes

Kubernetes:用于自动部署、扩缩和管理容器化应用程序的开源系统;

Kubernetes:简称为K8S或K8;

Docker:集装箱货轮;

Kubernetes:船舵(船的方向盘)。

1.2 为什么要使用Kubernetes

1、Kubernetes是业界领先的容器编排解决方案

(1)Mesos——Apache的开源分布式资源管理框架

由于大数据计算调度领域的局限性,Mesos只在特定的小范围使用。

(2)Docker Swarm——Docker原生集群解决方案

紧密集成到Docker的生态系统中,适合规模不大的应用程序环境。随着Docker企业版被Mirantis公司收购,Mirantis更倾向于编排工具Kubernetes,Docker Swarm面临被逐步淘汰的命运。

(3)Kubernetes——谷歌公司推出的开源容器集群管理系统

(4)具有超前的核心基础特性,构建与众不同的容器编排和管理的生态。

Kubernetes内部最底层最核心的Borg/Omega系统是使用golang语言重新设计开发的,并对外开源。发展成为容器编排和管理领域的事实标准。

2、使用Kubernetes具有极大的优势

(1)大大提升开发和运维复杂系统的人效。

(2)全面拥抱微服务架构,解决复杂业务系统的架构问题。

(3)随时随地将系统整体迁移到公有云上。

(4)利用Kubernetes服务弹性扩容机制轻松应对突发流量。

(5)系统架构具有横向扩容能力,便于在线完成集群扩容,在多个云环境中进行弹性伸缩。

1.3 Kubernetes的主要特性

1.4 Kubernetes与云原生

1、什么是云原生

微服务、DevOps、持续交付、容器化

2、云原生的代表技术

容器、服务网格、微服务、不可变基础设施、声明式API

3、云原生应用程序的特点

4、Kubernetes是云原生技术的基石

(1)Docker实现了容器的可移植、轻量化、虚拟化,为容器技术的普及作出了重要贡献。

(2)Kubernetes解决容器编排的全生命周期管理。

(3)CNCF致力于培育和维护开源生态系统来推广云原生技术,Kubernetes成为CNCF托管的第一个开源项目。

(4)作为管理云容器平台的工具,Kubernetes简化容器化应用程序的部署,成功解决了应用上云的效率和可移植性等问题,从而被称为云原生技术的基石。

(5)云原生的Kubernetes架构可以连续多次处理应用程序的部署。

二、Kubernetes集群的组件

2.1 控制平面组件

1、kube-apiserver——API服务器(API Server)负责公开Kubernetes API,处理接受请求的工作。

2、etcd——所有集群数据的后台数据库,持久化存储集群中所有的资源对象以及配置数据。

3、kube-scheduler——Kubernetes调度器(Scheduler)负责Pod在集群节点中的调度分配。

4、kube-controller-manager——Kubernetes控制器管理器(Controller Manager)负责运行控制器进程。

5、cloud-controller-manager——云控制器管理器(Cloud Controller Manager)利用云基础设施技术,在公有云、私有云或者混合云环境中运行Kubernetes。

2.2 工作节点组件

1、kubelet——在集群中每个节点上运行,是负责启动容器的重要的守护进程,用于保证容器在Pod中健康运行。

2、kube-proxy ——集群中每个节点上所运行的网络代理,是实现Kubernetes服务(Service

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值