openshell 的个人博客 openshell 的个人博客

一天很长,但十年很短。

目录
Kubernetes概念及组件初识
/      

Kubernetes概念及组件初识

前言

MESOS

为了解决服务资源管理问题,apache 开源了 MESOS。MESOS 可以很容易的实现分布式应用的自动化调度。

美国西部时间 5 月 2 日下午 7 点,Twitter 公司在旧金山总部举行了一次技术发布会兼 Meetup。会上,Twitter 计算平台(Twitter Computing Platform)产品与技术负责人 David McLaughlin 正式宣布,Twitter 的基础而设施将从 Mesos 全面转向 Kubernetes。

Docker Swarm

Docker Swarm 是 Docker 的集群管理工具。它将 Docker 主机池转变为单个虚拟 Docker 主机。 Docker Swarm 提供了标准的 Docker API,所有任何已经与 Docker 守护程序通信的工具都可以使用 Swarm 轻松地扩展到多个主机。
swarm 非常轻量,往往只占用几十兆的资源。
缺点明显:不适合大规模集群环境;功能较少。

2019 年 7 月阿里云下架 Docker Swarm

Kubernetes

是用于自动部署,扩展和管理容器化应用程序的开源系统。

  • Go 语言开发,轻量级。
  • 开源
  • 弹性伸缩
  • 负载均衡,内部实现,架构是 IPVS。

Kubernetes 学习大纲

基础概念:

什么是 pod 控制器类型 网络通讯模式

资源清单

什么是资源
掌握资源清单的语法
编写 pod
掌握 pod 的生命周期

服务发现

掌握 syc 原理及其构建方式

服务分类:

储存

掌握多种存储类型的特点,能在不同环境中选择合适的解决方案。

调度器

掌握调度器原理,能够根据要求把 Pod 定义到想要的节点。

集群安全机制

集群的认证、鉴权、访问控制、原理及其控制

HELM

相当于 Linux 中的 yum;掌握 HELM 原理、HELM 模板自定义

运维

Kubeadm 源码修改——例如修改证书有效期达到 10 年

  • 高可用
  • CI/DI

k8s 组件说明

image.png

领导者(master)

schedule

负责接收任务,选择合适的节点进行分配任务。

调度器将任务分散到不同的 node 中,与 brog 不同的是,此处的调度器不会去操纵存储,而是将任务请求交给 api server 存储到 etcd 中。

replication controller

控制副本数,根据副本需求增删 node。

API server

所有服务访问统一入口

执行者(node)

pod

在 kubernetes 的设计中,最基本的管理单位是 pod,而不是 container;

pod 是在容器的基础上做了一层封装,里面可以包含多个容器;

pod 中容器可以共享资源。

kubelet

通过 CRI 接口创建容器,直接跟容器引擎交互,实现容器的生命周期管理。
学习文章:

  1. kubelet和CRI设计
  2. kubernetes CRI 前世今生

kube proxy

负责写入规则至 Iptables、IPVS 实现服务映射访问

  • pod 之间通信(默认操作防火墙 firewall
  • 负载均衡

高可用的分布式键值数据库(etcd)

etcd 是一个语言编写的,可信赖的分布式键值存储服务,它能够为整个分布式服务存储一些关键数据。
ectd v2 版数据存在内存中,v3 版存在 database 中。
kubernetes v1.11 版之前自带的是 v2。

命令行工具(kubectl)

其他插件

CoreDns

可以为集群中 SVC 创建一个域名 IP 的对应关系解析

DashBoard

给 k8s 集群提供一个 b/s 结构访问体系

Ingress controller

官方只能实现四层代理,ingress 可以实现七层代理。

Fedetation

提供一个可以跨集群中心多 k8s 统一管理功能

Prometheus

提供 k8s 集群的监控能力

参考:
https://kubernetes.io/
https://www.bilibili.com/video/BV1w4411y7Go?p=2
https://www.runoob.com/docker/docker-swarm.html


标题:Kubernetes概念及组件初识
作者:openshell
地址:http://blog.caiqz.cn/articles/2020/06/21/1592750806014.html