k8s资源对象(二)】的更多相关文章

REST是representational state transfer的缩写,意为“表征状态转移”,它是一种程序架构风格,基本元素为资源(resource).表征(representation)和行为(action). 资源可以分组为集合(collection),每个集合只包含单一类型的资源,并且各资源间是无序的.资源也可以部署于任何集合,它们称为单体资源.事实上,集合本身也是资源,它可以部署于全局级别,位于api的顶层,也可以包含于某个资源中,表现为“子集合”. k8s系统将一切事物都抽象为…
一.标签与标签选择器 1.标签是k8s极具特色的功能之一,它能够附加于k8s的任何资源对象之上.简单来说,标签就是键值类型的数据,它们可于资源创建时直接指定,也可随时按需添加于活动对象中,而后即可由标签选择器进行匹配度检查从而完成资源挑选.一个对象可拥有不止一个标签,同一个标签也可被添加至多个资源之上.实践中,可为资源附加多个不同维度的标签以实现灵活的资源分组管理功能,例如: 版本标签:release:stable.release:canary.release.beta 环境标签:environ…
一.容器于pod资源对象 现代的容器技术被设计用来运行单个进程时,该进程在容器中pid名称空间中的进程号为1,可直接接收并处理信号,于是,在此进程终止时,容器即终止退出.若要在一个容器中运行多个进程,则需要为这些进程提供一个类似于linux操作系统init进程的管控类进程,以树状结构完成多进程的生命周期管理.绝大多数场景中都应该于一个容器中仅运行一个进程,它将日志信息直接输出至容器的标准输出.不过,分别运行于各自容器的进程之间无法实现基于ipc的通信机制,此时,容器间的隔离机制对于依赖于此类通信…
本文介绍几种在K8S中限制资源使用的几种方法. 资源类型 在K8S中可以对两类资源进行限制:cpu和内存. CPU的单位有: 正实数,代表分配几颗CPU,可以是小数点,比如0.5代表0.5颗CPU,意思是一 颗CPU的一半时间.2代表两颗CPU. 正整数m,也代表1000m=1,所以500m等价于0.5. 内存的单位: 正整数,直接的数字代表Byte k.K.Ki,Kilobyte m.M.Mi,Megabyte g.G.Gi,Gigabyte t.T.Ti,Terabyte p.P.Pi,Pe…
Prometheus 监控K8S 资源状态对象 官方文档:https://github.com/kubernetes/kube-state-metrics kube-state-metrics是一个简单的服务,它监听Kubernetes API服务器并生成有关对象状态的指标.它不关注单个Kubernetes组件的运行状况,而是关注内部各种对象的运行状况,例如部署,节点和容器. 采集了k8s中各种资源对象的状态信息: kube-state-metrics kube_daemonset_* kube…
1.K8s集群升级 集群升级有一定的风险,需充分测试验证后实施 集群升级需要停止服务,可以采用逐个节点滚动升级的方式 1.1 准备新版本二进制文件 查看现在的版本 root@k8-master1:~# /usr/local/bin/kube-apiserver --version Kubernetes v1.21.0 1.1.1 从github上下载需要版本的二进制安装包,比如 1.21.5 root@k8-deploy:~/k8s-update/kubernetes-v1.21.5## ll…
kubernetes里的master指的是集群控制节点 master负责是整个集群的管理和控制 kubernetes3大进程 API server 增删改查操作的关键入口 controller manager  资源对象的自动化控制中心 Scheduler 负责资源调度的进程 etcd服务kubernetes所有资源对象都保存在etcd中 node除了集群中的master  其他的机器被称为node kubelet负责pod对应的容器的创建,启停等任务,同时与master密切协作,实现集群管理的…
一.常见资源对象 常见的资源对象:(包括但不仅限于) l  Workload: Pod,ReplicaSet,Deployment,StatefulSet,DaemonSet,Job,Cronjob l  服务发现及均衡:Service,Ingress…… l  配置与存储:Volume,CSI(扩展第三方存储的接口) ConfigMap,Secret DownwardAPI l  集群级资源:Namespace,Node,Role,ClusterRole,RoleBinding,Cluster…
当用户请求删除含有pod的资源对象时(如RC.deployment等),K8S为了让应用程序优雅关闭(即让应用程序完成正在处理的请求后,再关闭软件),K8S提供两种信息通知: 1).默认:K8S通知node执行docker stop命令,docker会先向容器中PID为1的进程发送系统信号SIGTERM,然后等待容器中的应用程序终止执行,如果等待时间达到设定的超时时间,或者默认超时时间(30s),会继续发送SIGKILL的系统信号强行kill掉进程. 2).使用pod生命周期(利用PreStop…
概念 Label机制是K8S中一个重要设计,通过Label进行对象弱关联,灵活地分类和选择不同服务或业务,让用户根据自己特定的组织结构以松耦合方式进行服务部署. Label是一对KV,对用户而言非常有意义的,但对K8S本身而言没有直接意义的.Label可以在创建对象时指定,也可以在后期修改,每个对象可以拥有多个标签,但key值必须是唯一的. Label可随意定义,但建议可读性,比如设置Pod的应用名称和版本号等.另外Lable是不具有唯一性的,为了更准确标识资源对象,应为资源对象设置多维度的la…