k8s核心组件详解和分层架构
k8s核心组件


master中的核心组件
- api-server(接口服务,基于rest风格开放k8s接口的服务)
- kube-controller-manager(管理各个类型的控制器,针对k8s中的各种资源进行管理)

- cloud-controller-manager(云控制管理器,第三方云平台提供的控制器,api对接管理功能)
- kube-scheduler(调度器,负责将pod基于一定的算法,将其调用到更合适的节点(服务器)上)
- etcd(理解为k8s的数据库,键值类型的分布式数据库,提供了基于raft算法实现自助的集群高可用[老版本:基于内存 新版本:持久化存储])
ps:官方对于整个存储的地方称之为面板,控制面板
node中的核心组件
- kubelet(负责pod的生命周期,存储,网络)
- kube-proxy(网络代理(内部网络),负责service的服务发现 负载均衡[4层负载])
- container-runtime(容器运行时环境:docker,containerd,cri-o[一般会在三者中选择一个])
附加组件
- kube-dns(负责为整个集群提供dns服务)
- ingress controller(为服务提供外网入口)
- prometheus(监控)
- dashboard(ui界面)
- federation(提供跨可用区的集群)
- fluentd-elasticsearch(提供集群日志采集,存储和查询)
分层架构

- 生态系统(最顶层)
基于k8s的生态系统所创建出来的应用 - 接口层(所有的应用都需要调用k8s的接口)
- 管理层(管理层,系统度量(基础设施,容器和网络的度量),自动化(如自动扩展,动态provision等)以及策略管理(RBAC,Quota,psp,networkpolicy等))
- 应用层(部署(五状态应用,有状态应用,批处理任务,集群应用等)和路由(服务发现,dns解析))
- 核心层(kubernetes最核心的功能,对外提供api构建高层的应用,对内提供插件式应用执行环境)
- 插件(整个架构从上往下,最后调用不同的插件)
k8s核心组件详解和分层架构的更多相关文章
- ansible安装与核心组件详解
第1章 安装anisble 1.1 安装epel源 rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-6.noarc ...
- Spring 的核心组件详解
Spring 总共有十几个组件,但是真正核心的组件只有三个:Core.Context 和 Bean.它们构建起了整个 Spring的骨骼架构,没有它们就不可能有 AOP.Web 等上层的特性功能. 一 ...
- Hibernate核心组件详解
Hibernate是对象/关系映射(ORM,Object/Relational Mapping)的解决方案,就是将Java对象与对象关系映射到关系型数据库中的表格与表格之间的关系.它是Java应用与关 ...
- 详解阿里P7架构师是怎么在Spring中实现事务暂停
摘要 Spring框架是一个流行的基于轻量级控制反转容器的Java/J2EE应用框架,尤其在数据访问和事务管理方面的能力是众所周知的.Spring的声明性事务分离可以应用到任何POJO目标对象,并且包 ...
- hadoop之yarn详解(基础架构篇)
本文主要从yarn的基础架构和yarn的作业执行流程进行阐述 一.yarn的概述 Apache Yarn(Yet Another Resource Negotiator的缩写)是hadoop集群资源管 ...
- 深入详解Mybatis的架构原理与6大核心流程
MyBatis 是 Java 生态中非常著名的一款 ORM 框架,目前在一线互联网大厂中应用广泛,Mybatis已经成为了一个必会框架. 如果你想要进入一线大厂,能够熟练使用 MyBatis 开发已经 ...
- Kafka核心组件详解
1.概述 对于Kafka的学习,在研究其系统模块时,有些核心组件是指的我们去了解.今天给大家来剖析一下Kafka的一些核心组件,让大家能够更好的理解Kafka的运作流程. 2.内容 Kafka系统设计 ...
- HBase详解(03) - HBase架构和数据读写流程
RegionServer 架构 每个RegionServer可以服务于多个Region 每个RegionServer中有多个Store, 1个WAL和1个BlockCache 每个Store对应一个列 ...
- k8s 使用详解
转自:https://www.cnblogs.com/gaoyuechen/p/8685771.html
- k8s 配置文件 详解
apiVersion: v1 # [必须]版本号kind: Pod # [必选]Podmetadata: # [必选-Object]元数据 name: String # [必选] Pod的名称 nam ...
随机推荐
- 重启React Native老项目的奇幻之旅:填坑实录与解决方案分享
这两天为了重启五年前基于 React Native(版本 0.59.9)开发的老项目,经过各种填坑查询等操作,最终把它成功地运行起来了. 在这篇文章中,我将详述那些遭遇的挑战以及对应的解决方案,以期为 ...
- 争论不休的一个话题:金额到底是用Long还是BigDecimal?
在网上一直流传着一个争论不休的话题:金额到底是用Long还是用BigDecimal?这个话题一出在哪都会引起异常无比激烈的讨论.... 比如说这个观点:算钱用BigDecimal是常识 有支持用Lon ...
- 百度AIPNLP 文本相似度 文本审核
效果不如有监督的bert文本相似度好 from aip import AipNlp APP_ID = "22216281" APT_KEY = "foEeYauuvnqW ...
- Tencent 闲聊对话机器人接口调用,画像:设计员小白
from datetime import datetime import time import requests from hashlib import md5 from urllib import ...
- javascript现代编程系列教程之一:区块作用域对VAR不起作用的问题
在JavaScript中,使用var声明的变量具有函数作用域,而不是块级作用域.这意味着在一个函数内部,使用var声明的变量在整个函数范围内都是可见的,包括嵌套的块(如if语句.for循环等).为了避 ...
- 实战指南:使用 xUnit 和 ASP.NET Core 进行集成测试【完整教程】
引言 集成测试可在包含应用支持基础结构(如数据库.文件系统和网络)的级别上确保应用组件功能正常. ASP.NET Core 通过将单元测试框架与测试 Web 主机和内存中测试服务器结合使用来支持集成测 ...
- 力扣1069(MySQL)-产品分析Ⅱ(简单)
题目: 编写一个 SQL 查询,按产品 id product_id 来统计每个产品的销售总量. 查询结果格式如下面例子所示: 解题思路: 没有用到product表,直接在sales表中使用聚合函数: ...
- 力扣273(java)-整数转换英文表示(困难)
题目: 将非负整数 num 转换为其对应的英文表示. 示例 1: 输入:num = 123输出:"One Hundred Twenty Three"示例 2: 输入:num = 1 ...
- CSS选择器练习--餐厅选择
1.题目:Select the plates 答案:plate 1 <div class="table"> 2 <plate></plate> ...
- Serverless Kubernetes:理想,现实与未来
简介: 当前 Serverless 容器的行业趋势如何?有哪些应用价值?如果 Kubernetes 天生长在云上,它的架构应该如何设计?Serverless 容器需要哪些基础设施?阿里云容器服务产品负 ...