ry_dong

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::
  10 随笔 :: 1 文章 :: 0 评论 :: 2219 阅读
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

简介:

容器编排:自动化容器的部署,管理,扩展,联网。

k8s--容器编排工具;

 

架构:

master

apiserver:前端控制层,被设计为水平扩展的架构,通过部署更多实例承载更多服务

controller:用于查询和调度程序,通过策略数量保证有正确数量的容器集在运行。

controller manager:多个控制器功能的结合。

etcd:键值数据库,k8s的后端存储,用于存储配置数据,可以部署于master节点,也可自行部署。

scheduler:调度器,根据特定的调度算法和调度策略,将pod调度到合适的节点上去

node

kubelet:与控制平面通信的应用,用来保证pod的运行,接受master的指令,负责管理pod。

kube-proxy:网络代理和负载均衡器。负责处理集群内部或外部的网络通信,靠操作包里的流量过滤层或自身进行端口转发。同时可以在多个pod和service之间实现负载均衡。

container-runtime:

 

核心概念:

pod:最小工作单元,每个pod包含一个或者多个相关容器,被当作一个整体进行调度。

  引入目的:pod内所有的容器使用相同的网络namespace和共享存储。pod内容器拥有相同IP地址和Port空间,容器间直接使用localhost通信。当挂载volume到pod,即可实现将volume挂载到pod中的每个容器。【网络存储共享,但cpu/内存不是。可以单独】

controller: 通过其实现工作负载的管理,横向扩展。分四类工作负载。

label:为资源分类,具体形式是key-value得标记对,可以在创建资源得时候设置。

namespace:对一组资源和对象的抽象整合。实现多租户划分。默认有四个default,kube-public,kube-system,kube-node-lease.

service:定义了一个pod逻辑集合和访问他们得策略。定义了外界访问一组特定pod的方式。service有自己的IP和端口,service为pod提供了负载均衡。

volume:用来端粒k8s存储,声明在pod中的容器可以访问的文件目录。可以被挂载在Pod中一个或多个容器的指定路径下,支持多种后端存储。

 

编排和管理

kubectl是k8s的命令行工具,用于管理集群,并进行容器化应用的安装部署。

支持以下对象的管理方式:

  通过kubectl内置的驱动命令,语法:kubectl [command] [type] [name] [flags];

  使用kubectl apply 创建指定目录中配置文件所定义的所有对象,文件是yaml或者json。

    如果是yaml。内容分为四部分:

        typeMeta:对象类型的元信息,声明对象使用哪个版本的API版本,哪个类型的对象;

        objectMeta:对象的辕信息,包括对象名称,使用的标签等;

        spec:对象的期望状态,比如对象使用什么镜像,有多少个副本;

        status:对象的实际状态,只能在对象创建后看到,创建对象时无需指定。

 

posted on   ry_d  阅读(16)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
点击右上角即可分享
微信分享提示