k8s资源清单定义入门_m0_46172263的博客-程序员秘密

技术标签: k8s  

k8s上所有的内容都抽象为资源。资源的实例化后被称为对象。

资源:对象

(一)以下是常见的资源类型以及具体的对象

(1)工作负载型资源(workload):

       1)运用程序,对外提供服务:pod

       2)很少单独运行pod,需要通过控制器来管理:

deployment(无状态)、replicaset、statefulset(有状态)、daemonset(系统守护进程)、job、cronjog

(2)服务发现及均衡:service、ingress

(3)配置与存储:

1)volume(存储卷)、CSI(容器存储接口,来扩展各种存储)

2)configmap:当配置中心使用的资源类型

      secret:跟configmap相关,当可以存放敏感数据

备注:个人理解

第一种用来存放用户数据,第二种存储是用来存放配置相关的数据。

(4)集群级资源:

node、namespace、role、clusterrole,rolebinding、clusterrolebing

(5)元数据型资源:

     HPA:自动调整其他资源的元数据信息

     podtemplate:控制器通过其中配置的 Pod Template 信息来创建 Pod。

     limitrange:定义资源限制。一个pod启动之后最多可以使用多少CPU和内存,可以在名称空间级别给他加一个默认设定。

  • (二)创建资源的方式:配置清单

创建资源时,除了使用命令的方式,还有其他方式,我们一般称为使用‘配置清单’来创建。

配置清单是长什么样子,可以通过kubectl get podname -o yaml的方式查看一个pod的配                        置清单

创建资源的方法

(1)其实每个资源都有一个yam的定义。

在定义的时候,apiserver仅接收JSON格式的资源定义。在之前用run创建pod资源的时候,run命令会自动把你给的内容自动转化为JSON格式

(2)人更容易理解和记忆的是,因此,我们可以使用yaml格式来定义。如果使用yaml格式提供配置清单,apiserver可自动将其转化为json格式,而后再提交执行。

配置清单的格式

大部分资源的配置清单都由五部分组成:

(1)apiversion:用来指明资源属于哪个群组以及版本。

k8s把整个apiserver所支持的api分组来进行管理。分组的好处,如果以后想要修改其中一个组影响范围不至于扩大;

api群组有三个级别,阿尔法(内测),贝尔塔(公测,),stable(稳定版)。

例子:pod是最核心的资源,所以它属于核心群组:v1

控制器属于应用程序管理的资源,所以属于apps

(2)kind:资源类别。

用来标记你创建的是什么资源。比如你创建的是pod还是deployment。

(3)metadata:元数据

     name:在同类中名字得是唯一的。

     namespace

     labels

     uid:资源的唯一标准,这东西一般都是由系统自动生成的,不需要直击手动去配置这个UID,否则可能会找出冲突。

Selflink: 每个资源的引用PATH(路径)。格式/api/GROUP(组名)/VERSION(版本)/namespace/NAMESPACE_NAME(名称空间的真正名字)/TYPE(资源类别)/TYPE_NAME(资源名字)

应用:将来我们在本地打开一个代理以后,可直接通过这个路径来获取相关资源的信息

(4)spec:定义用户所期望的状态,disired state

(5)status:当前状态,current state,本字段由k8s集群维护(用户不能定义这个字段的内容)

资源创建了以后,资源可能不符合条件。比如我们指定控制器对pod的副本数量为5个,如果我们用delete删除一个Pod以后只剩下四个,当前是4个,我们期望是5个,那怎么办?让当前状态无线向期待状态靠近。比如我们指定了一个容器期望的版本为v2,而当前是V1,这个时候会滚动更新,以便向期待的状态靠近。

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/m0_46172263/article/details/120829244

智能推荐

黑马程序员_Day01 __方法与数组_niuyaweiqq的博客-程序员秘密

---------------------- ASP.Net+Unity开发、.Net培训、期待与您交流! ----------------------1、什么是函数?函数就是定义在类中具有特定功能的一段小程序,也叫做方法。小知识:开发中我们在编写程序,其实就是在不断的实现功能,而java中最小的功能单元就是函数,所以我们在编程的时候尽可能的将一些功能通过函数的

基于角定位和区域分割的多方向场景文本检测(译文)_HamburgerLiu的博客-程序员秘密

论文原文地址:摘要以往基于深度学习的场景文本检测方法大致可分为两类。第一类将场景文本视为一般对象的一种类型,遵循一般对象检测范式,通过对文本框位置的回归实现场景文本的本地化,但受到场景文本的任意性取向和大长宽比的困扰。第二部分直接分割文本区域,但主要需要复杂的后期处理。本文提出了一种将两种方法的思想结合起来的方法,避免了它们的缺点。我们提出通过定位文本框的角点和在相对位置分割文本区域来检测场景文本...

exFAT和NTFS哪个好_jackbreak的博客-程序员秘密

如果是超过4GB的U盘建议选择exFAT的格式会比较好,这个格式可以说是为大容量的U盘等flash设备准备的,特别是在支持拷贝大于4GB的文件的限制方面非常好,一般情况下U盘默认的格式都是FAT32的,这个文件系统一般情况下并无什么使用问题,但是一旦遇到单个大于4GB的文件将会提示“磁盘空间不足”或者"文件太大"。注:很多打印店都是XP系统,XP只有打了补丁之后才能支持exFAT,因此使用

调试STM32f401过程出现的问题_小六@sll的博客-程序员秘密

前言最近在调试STM32F401遇到了一堆问题,检查结果就仅仅是一个简单的问题,写在此处,希望能帮到你,也为自己做一次深刻的笔记内容。实验条件在之前STM32F103的电路图上直接焊接STM32F401进行系统配置使用J-LINK进行烧录程序,出现的问题及解决的办法STM32F401和STM32F103的引脚相同,都是48引脚,直接配置系统时钟84MHZ,使用J-LINK能够直接进行下载,可直接烧录进去,但是使用示波器发现程序是没有运行的,于是就进行在线仿真运行,发现代码执行到 .

想进进字节、阿里等一线大厂,刷算法前一定先打好底层基础_微观技术的博客-程序员秘密

大家好,我是Tom哥~哲学里有一句很经典的话,”下层基础决定上层建筑“。相信很多人都听过,广泛用于我们生活中。那么我们软件开发行业的下层基础是什么,有人说是操作系统、是网络、是HTTP协议、是TCP,这些虽然也是底层,但其实不够原子化。软件行业讲究的是抽象,那么他们的共同点是什么。那就是数据和计算。数据不是幽灵,需要有个载体,今天这节,我们就来讲下数据有哪些存储结构。

随便推点

HTML-网页-3D旋转相册-创意相册_编程ID的博客-程序员秘密

HTML-网页-3D旋转相册代码:<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>3D旋转相册</title> <style> *{margin: 0;padding: 0;} html,body{height: 100%;} body{ overflow: hidden; display: fl

linux下vscode调试线程,原创 Linux环境下 使用vscode 调试cmake工程_15886991492的博客-程序员秘密

我相信大家会经常在linux下会经常去编译别人写好的或者自己写好的用cmake组织的C/C++工程mkdir build && cd build && cmake ../ && make && sudo make install && ldconfig等等这一套操作下来,看着命令行的飞速滚动很爽但是我们也会经常遇到这种...

docker创建与宿主机同域IP的container,解决ssh访问,免端口映射的方法_hua_ed的博客-程序员秘密

如上图:创建名为有—name指定为hadoopnamenode的container;该container的hostname是有-v指定的hadoopnamenode;由-v指定要挂载的数据券/opt/running和/opt/soft分别到container中的相同路径;用—net=node指定自定义网络,下面会说明配置过程;用--add-host指定conta

鸿蒙开发工具在哪下载,HUAWEI DevEco Studio(鸿蒙开发工具)_背离赤道逆光而行的博客-程序员秘密

HUAWEIDevEcoStudio鸿蒙开发工具是华为消费者业务为开发者提供的集成开发环境(IDE),旨在帮助开发者快捷、方便、高效地使用华为EMUI开放能力,除具备工程管理、代码编辑、编译构建、调试仿真等基础功能外,还提供了提供远程真机调试、APP云测试等特色服务。。相关软件软件大小版本说明下载地址HUAWEI DevEco Studio(鸿蒙开发工具)是华为消费者业务为开发者提供的集成开发环境...

Latex系列[2]--公式中的字体_盐粒-blog的博客-程序员秘密

首先需要明白什么是 math mode, 有些代码是必须在math mode下才能编译通过。$ ----$, 这个符号构建起来 math mode, 在这里面的符号,可以使用 \math..

推荐文章

热门文章

相关标签