K8S集群(kubernetes)(2022)

一、基础

(一)关键词

集群:物理形态
分布式:工作方式
生产级别
容器编排系统
微服务
云原生平台
容器技术

(二)组件

1、api service:水平扩展

所有服务访问统一入口
对外暴露K8S的api接口,是外界进行资源操作的唯一入口
提供认证、授权、访问控制、API注册和发现等机制;

2、crontroller manager:leader选举

负责维护集群的状态,
比如故障检测、自动扩展、滚动更新等,
它们是处理集群中常规任务的后台线程。

3、scheduler:leader选举

负责资源的调度,
按照预定的调度策略将Pod调度到相应的机器上;
就是监视新创建的 Pod,如果没有分配节点,
就选择一个节点供他们运行,这就是pod的调度。

4、etcd:

一个可信赖的分布式键值存储服务,
能够为整个分布式集群存储一些关键数据,
协助分布式集群运转。
储存K8S集群所有重要信息(持久化)。
v2版本时基于内存的存储,v3开始才是序列化到介质。
新版本K8S(v1.11以上)已经改用v3版本etcd。

5、kubelet:

直接跟容器引擎交互实现容器的生命周期管理。

6、kube-proxy:

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

(三)插件

1、coredns:

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

2、dashboard:

给 K8S 集群提供一个 B/S 结构访问体系

3、ingress controller:

官方只能实现四层代理、INGRESS 可实现七层代理

4、federation:

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

5、prometheus :

提供K8S集群的监控能力

6、elk:

提供 K8S 集群日志统一分析介入平台

(四)环境安装方式

1、单机版本

2、伪多机(通过vm)

3、真实多台机器

(五)资源

所有内容 → 抽象 → 资源 → 实例化 → 做对象

1、资源清单:.yaml格式文件

2、名称空间级资源

默认空间:
工作负载型资源:
	Pod
	ReplicaSet(ReplicationController在v1.11版本废弃)
	Deployment
	StatefulSet
	DaemonSet
	Job
	CronJob
服务发现及负载均衡型资源:
	Service
	Ingress
配置与存储型资源:
	Volume
	CSI(容器存储接口,可以扩展各种各样的第三方存储卷)
特殊类型的存储卷:
	ConfigMap(当配置中心来使用的资源类型)
	Secret(保存敏感数据)
	DownwardAPI(把外部环境中的信息输出给容器)

3、集群级资源

Namespace
Node
Role
ClusterRole
RoleBinding
ClusterRoleBinding

4、元数据型资源

HPA
PodTemplate
LimitRange

你可能感兴趣的:(java,容器,kubernetes,分布式)