K8S篇(基本介绍)

目录

一、什么是Kubernetes?

二、Kubernetes管理员认证(CKA)

[1. 简介](#1. 简介)

[2. 考试难易程度](#2. 考试难易程度)

[3. 考试时长](#3. 考试时长)

[4. 多少分及格](#4. 多少分及格)

[5. 考试费用](#5. 考试费用)

三、Kubernetes整体架构

Master

Nodes

四、Kubernetes架构及和核心组件

五、Kubernetes各个组件及功能

[1. master组件](#1. master组件)

[1.1. kube-apiserver](#1.1. kube-apiserver)

[1.2. kube-controller-manager](#1.2. kube-controller-manager)

[1.3. kube-scheduler](#1.3. kube-scheduler)

[1.4. etcd](#1.4. etcd)

[2. node组件](#2. node组件)

[2.1. kubelet](#2.1. kubelet)

[2.2. kube-proxy](#2.2. kube-proxy)

[2.3. docker](#2.3. docker)

六、Kubernetes核心概念

[1. pod](#1. pod)

[2. controllers](#2. controllers)

[3. service](#3. service)

[4. storage](#4. storage)

[5. pollcies策略](#5. pollcies策略)

[6. 其他](#6. 其他)


一、什么是Kubernetes?

Kubernetes这个单词来自于希腊语,含义是 舵手 或 领航员;

Production-Grade Container Orchestration Automated container deployment, scaling, and

management

生产环境级别的容器编排

编排是什么意思?

  1. 按照一定的目的依次排列;
  2. 调配、安排;

Kubernetes,也称为K8S,其中8是代表中间"ubernete"的8个字符,是Google在2014年开源的一个容器编

排引擎,用于自动化容器化应用程序的部署、规划、扩展和管理,它将组成应用程序的容器分组为逻辑单元,以便

于管理和发现,用于管理云平台中多个主机上的容器化的应用,Kubernetes 的目标是让部署容器化的应用简单并

且高效,很多细节都不需要运维人员去进行复杂的手工配置和处理;

Kubernetes拥有Google在生产环境上15年运行的经验,并结合了社区中最佳实践;

K8S是 CNCF 毕业的项目,本来Kubernetes是Google的内部项目,后来开源出来,又后来为了其茁壮成长,捐

给了CNCF;

CNCF全称Cloud Native Computing Foundation(云原生计算基金会)

Kubernetes是采用Go语言开发的,Go语言是谷歌2009发布的一款开源编程语言;

二、Kubernetes管理员认证(CKA)

1. 简介

CKA全称Certified Kubernetes Administrator,是Linux基金会和Cloud Native Computing Foundation

(CNCF)官方推出的全球Kubernetes管理员认证,对于技术团队,CKA认证可以作为团队成员的技术能力的一

个考察标准,也可以作为整个团队对Kubernetes云平台的管理能力的有力证明;

2. 考试难易程度

考试只允查阅官方文档,在考试过程中你只能去

如果去了其它的网站,按作弊处理;

3. 考试时长

考试时间为3小时;

4. 多少分及格

CKA满分100分,66分及格;

5. 考试费用

美元:$300

人民币:¥2088

有一次免费重考的机会,一年后过期;

三、Kubernetes整体架构

Master

k8s集群控制节点,对集群进行调度管理,接受集群外用户去集群操作请求;

Master Node 由 API Server、Scheduler、ClusterState Store(ETCD 数据库)和 Controller 、

MangerServer 所组成;

Nodes

集群工作节点,运行用户业务应用容器;

Nodes节点也叫Worker Node,包含kubelet、kube proxy 和 Pod(Container Runtime);

四、Kubernetes架构及和核心组件

API server是所有请求的唯一入口;

api server管理所有的事务,并把信息记录到etcd数据库中,etcd有一个自动服务发现的特性机制,etcd会搭建

有三个节点的集群,

实现三副本;

scheduler 调度器用来调度资源,查看业务节点的资源情况,确定在哪个node上创建pod,把指令告知给api

server;

控制管理器controller-manager管理pod;

pod可以分为有状态和无状态的pod,一个pod里最好只放一个容器;

api server把任务下发给业务节点的kubelet去执行;

客户访问通过kube-proxy去访问pod;

pod下面的不一定是docker,还有别的容器;

一般pod中只包含一个容器,除了一种情况除外,那就是elk,elk会在pod内多放一个logstash去收集日志;

五、Kubernetes各个组件及功能

1. master组件

1.1. kube-apiserver

kubernetes api,集群的统一入口,各组件之间的协调者,以restful api提供接口服务,

所有对象资源的增删改查和监听操作都交给apiserver处理后在提交给etcd存储记录;

1.2. kube-controller-manager

处理集群中常规的后台任务,一种资源对应一个控制器,controller-manager就是负责管理这些控制器的;

1.3. kube-scheduler

根据调度算法为新创建的pod选择一个node节点,可以任意部署,可以部署在同一个节点上,也可以部署在不同

节点上;

1.4. etcd

分布式键值存储系统,用户保存集群状态数据,比如pod、service等对象信息;

2. node组件

2.1. kubelet

kubelet时master在node节点上的代理agent,管理本node运行容器的生命周期,比如创建容器、pod挂载数据

卷、下载sercet、获取容器和节点状态等工作,kubelet将每个pod转换成一组容器;

2.2. kube-proxy

在node节点上实现pod的网络代理,维护网络规则和四层的负载均衡工作;

2.3. docker

容器引擎,运行容器;

六、Kubernetes核心概念

1. pod

最小部署单元;

一组容器的集合;

一个pod中的容器共享网络命名空间;

pod是短暂的;

2. controllers

replicaset:确保预期的pod副本数量;

deployment:无状态应用部署,比如nginx、apache,一定程度上的增减不会影响客户体验;

statefulset:有状态应用部署,是独一无二型的,会影响到客户的体验;

daemonset:确保所有node运行同一个pod,确保pod在统一命名空间;

job:一次性任务;

cronjob:定时任务;

3. service

防止pod失联;

定义一组pod的访问策略;

确保了每个pod的独立性和安全性;

4. storage

volumes

persistent volumes

5. pollcies策略

resource quotas

6. 其他

label:标签,附加到某个资源上,用户关联对象、查询和筛选;

namespaces:命名空间,将对象从逻辑上隔离;

annotations:注释;

Kubectl:k8s提供的终端控制命令;

Kubeadm:可以用来初始化或加入一个k8s集群;

相关推荐
JunLan~5 小时前
Docker 部署 GLPI(IT 资产管理软件系统)
运维·docker·容器
青草地溪水旁5 小时前
c++ list的front和pop_front的概念和使用案例
c++·容器·list
元气满满的热码式8 小时前
K8S部署DevOps自动化运维平台
运维·kubernetes·devops
LUCIAZZZ8 小时前
基于Docker以KRaft模式快速部署Kafka
java·运维·spring·docker·容器·kafka
IT艺术家-rookie12 小时前
k8s--部署k8s集群--控制平面节点
容器·kubernetes
康世行13 小时前
Windows环境下MaxKB大模型 Docker部署图文指南
windows·docker·容器
Elastic 中国社区官方博客13 小时前
使用 Ollama 和 Kibana 在本地为 RAG 测试 DeepSeek R1
大数据·数据库·人工智能·elasticsearch·ai·云原生·全文检索
Linux运维老纪1 天前
windows部署deepseek之方法(The Method of Deploying DeepSeek on Windows)
linux·人工智能·分布式·云原生·运维开发·devops
Elastic 中国社区官方博客1 天前
Elastic Cloud Serverless 获得主要合规认证
大数据·数据库·elasticsearch·搜索引擎·云原生·serverless·全文检索
超级阿飞1 天前
在K8s中部署动态nfs存储provisioner
云原生·容器·kubernetes·nfs