Kubernetes-K8S

Kubernetes由于单词太长,省略掉中间8个字母简称为K8S。它介于应用服务和服务器之间。能够通过策略协调和管理多个服务,只需要一个YAML文件配置。定义应用的部署顺序等信息,自动部署应用到各个服务器,还可以自动扩容缩容。

架构原理

划分服务器:控制平面、工作节点node

(老板,打工人)

控制平面

  1. 使用Api Server组件提供的接口直接控制服务器;
  2. 检查服务器资源有Scheduler调度器完成;
  3. Controller Manager开启和关闭服务;
  4. 产生的数据保存在存储层ETCD

node内部组件

node是实际的工作节点,既可以是裸机服务器也可以是虚拟机。部署服务我们只需要将代码打包为Container Image容器镜像,就能一行命令部署。

container runtime:容器运行时组件,

每个服务都为一个container,并且搭配一个日志收集器container和监控采集器container,这多个container共同组成一个一个pod。运行在node上,K8M可以将一个pod从一个节点转移到另外一个节点,所以说pod是K8S的最小调度单位。

Kublet是负责管理和监控pod运行

Kube proxy负责node的网络通信,可以转发外部请求

Cluster集群

控制平面和node共同组成了一个Cluster集群,在公司会有多个集群,测试环境集群和生产环境集群。Ingress使得外部可以访问内部

Kubectl

Kubectl是提供的命令行,调用api

服务创建:kubectl apply -f xx.yaml

网站访问服务

相关推荐
Avan_菜菜3 分钟前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
OpenTiny社区1 小时前
🎨 看完 GenUI SDK 源码我悟了!
前端·vue.js·github
千寻girling5 小时前
一份不可多得的《微服务》教程
后端·面试·github
霜落长河7 小时前
用Gemini提升React代码调试效率的教程
github
Sokach10159 小时前
Linux Shell 脚本从零到能用:一个新手的一天学习总结
linux
英勇无比的消炎药9 小时前
TinyRobot 源码深度分析:OpenTiny 的 AI 对话组件库
前端·vue.js·github
SelectDB1 天前
Litefuse 开源并推出单进程轻量模式,25 秒就能跑起来的 Agent 可观测与评估平台
运维·后端·自动化运维
AlfredZhao1 天前
Docker 容器时区不对,`timedatectl` 不存在怎么办?
linux·timezone
逛逛GitHub1 天前
慢慢吃掉你的 Claude Code,在终端里养一只黑洞。
github
jump_jump1 天前
为了重玩金庸群侠传,我研究了一下 Ruffle 怎么复活 Flash
游戏·rust·github