打卡学习kubernetes——了解kubernetes组成及架构

目录

[1 什么是kubernetes](#1 什么是kubernetes)

[2 kubernetes组件](#2 kubernetes组件)

[3 kubernetes架构](#3 kubernetes架构)


1 什么是kubernetes

kubernetes是一个旨在自动部署、扩展和运行应用容器的开源平台。目标是构建一个生态系统,提供组件和工具以减轻在公共和私有云中运行应用程序的负担。

kubernetes是:

  • 可移植:共有、私有、混合、多云
  • 可扩展:模块化、可插拔、提供Hook、可组合
  • 自愈:自动放置、自动重启、自动复制、自动缩放

2 kubernetes组件

一个 kubernetes集群需要有一个master节点来负责整个集群的管理和控制,除master以外的其他机器被称为node节点。

一般来说,k8s的所有控制命令都是发送给master,然后由master来负责具体的执行过程。master通常会部署在一个独立的服务器或虚拟机上,它是整个集群的首脑,如果master宕机或不可用,那么所有的控制命令都将失效。

与master一样,node节点也可以是一台物理机或虚拟机,作为k8s集群中的工作节点,一般任务pod都运行在node节点上。

master及node的组件具体包括以下部分:

在此简单提一下service:

service可以简单理解成一组提供相同服务的pod的对外访问入口。service与pod之间通过selector来绑定。service与pod的关系如下。

3 kubernetes架构

kubernetes最初源于谷歌内部的Borg,提供了面向应用的容器集群部署和管理系统。k8s旨在消除编排物理/虚拟计算,网络和存储基础设施的负担,k8s借鉴了Borg的设计理念,比如pod、service、labels和单pod单IP等。k8s的架构图如下图所示:

简单介绍一下核心组件:

apiserver:提供资源操作的唯一入口,并提供认证、授权、访问控制、API注册和发现等机制

controller manager:负责维护集群的状态,比如故障检测、自动扩展、滚动更新等;

scheduler :负责资源的调度,按照预定的调度策略将pod调度到相应的机器上;

etcd:保存整个集群的状态;

kubelet:负责维护容器的生命周期,同时也负责volume(CVI)和网络(CNI)的管理;

kube-proxy:负责为service提供cluster内部的服务发现和负载均衡。

常见的端口号需要了解一下哦~在实际使用过程中遇到bug的时候对于排错很有用!明天继续k8s架构的学习!

相关推荐
jinxinyuuuus14 分钟前
局域网文件传输:WebRTC与“去中心化应用”的架构思想
架构·去中心化·webrtc
狗哥哥42 分钟前
从零到一:打造企业级 Vue 3 高性能表格组件的设计哲学与实践
前端·vue.js·架构
嗷嗷哦润橘_1 小时前
AI Agent学习:MetaGPT之我的工作
人工智能·学习·flask
小马哥编程1 小时前
【软考架构】滑动窗口限流算法的原理是什么?
java·开发语言·架构
知识分享小能手1 小时前
CentOS Stream 9入门学习教程,从入门到精通,Linux日志分析工具及应用 —语法详解与实战案例(17)
linux·学习·centos
2301_783360131 小时前
【学习笔记】关于RNA_seq和Ribo_seq技术的对比和BAM生成
笔记·学习
qq_397731511 小时前
Objective-C 学习笔记(第9章)
笔记·学习·objective-c
西格电力科技2 小时前
面向工业用户的绿电直连架构适配技术:高可靠与高弹性的双重设计
大数据·服务器·人工智能·架构·能源
北邮刘老师2 小时前
【智能体互联协议解析】ACPs/AIP为什么还在用“落后”的“中心化”架构?
网络·人工智能·架构·大模型·智能体·智能体互联网
ujainu2 小时前
Python学习第一天:保留字和标识符
python·学习·标识符·保留字