pause pod 什么是pod_Kubernetes 自主式Pod清单 干货太多先马住慢慢看

43aa4757781405dfa1933a68f1ac0673.png

在讲资源清单之前,先给大家介绍一下究竟什么是Kubernetes资源?有几种资源?

① · 资源分类:

① · 1 工作负载:pod、rs(ReplicasSet)、deploy(Deployment)、sts(StatefulSet)、ds(DaemonSet)、job、cronjob

① · 2 服务发现及负载均衡:svc(Service)、ing(Ingress)

① · 3 配置与存储:cm(ConfigMap)、Secret、Volume、pv( persistentvolumes )、pvc、sc(StorageClasses)DownwardAPI

① · 4 集群级:ns(Namespace),Node,Role,ClusterRole,RoleBinding,ClusterRoleBinding

① · 5 元数据: HPA,PodTemplate,LimitRange

这么多种分类看完已经晕了,其实每种分类下面还有好多好多字段需要你自己定义 ,今天我们只介绍一种自主式清单 【pod自主式清单】 。

什么是自主式pod?和kubectl run的pod又有什么区别?

我们接触的pod大多数是控制器控制的pod,那么今天讲的是自主式pod(也就是由yaml文件来创建的pod),也就是pod自己去控制自己,防止pod被控制器杀死。(虽然这种pod应用的场景不是很多,但是只要熟悉了pod的清单,再理解其他几种类型的资源就会非常好理解) ② · 1 看看pod清单里面都有哪些字段

fe99a386e626c0b2b4410ddc1cbbbe30.png

想要查看详细信息就使用kubectl explain pod 想要查看下面的子字段的话kubectl explain pod.apiVersion 即可~~ apiVersion kind metadata spec 这四个字段是必须有的,下面就看看一份简单的pod清单应该长什么样

apiVersion: v1        ##版本为v1
kind: Pod               ##资源类型为Pod
metadata:              ## 元数据,下面是需要配置的子字段,这里缩进字符要保持一致name: pod-demo      ## pod名namespace: default    ##pod所在的名称空间labels:                   ##标签-- 下面全用KV格式书写,这里我们给这个pod 打上两个标签  ↓app: pod-demo  release: bata
spec:           containers:              ##容器- name: app-container            ##容器名image: ikubernetes/myapp:v1     ##镜像地址

现在我们就试试用这个文件创建第一个自主式pod 创建命令 kubectl create -f pod-demo.yaml 删除命令 kubectl delete -f pod-demo.yaml

1a2e770827b08014a6801866c7ccad68.png

这样一个自主式pod就创建好了,但是好像还不够定制化,下面就详细介绍一下自主式pod可以定义那些字段 可定义的字段太多了,这里我总结了大部分常用指标,大家当字典看吧~

spec.nodeSelector <map[string]string>
pod.spec.nodeSelector: #指定对象的调度节点,节点必须存在
pod.spec.restartPolicy <string>
pod.spec.restartPolicy:#容器的重启策略。有三种Always(只有退出就重启),OnFailure(失败退出时不重启),Never(只要退出就不重启),kubelet重新启动的已退出容器将以指数退避延迟(10秒,20秒,40秒......)重新启动,上限为五分钟,并在成功执行十分钟后重置
spec.containers.image.imagePullPolicy  <string>        #镜像的下载策略。有三种:Always(总是去仓库下载) ,Never(从不去仓库下载) , IfNotPresent(如果本地没有就去仓库下载) 
spec.containers.ports:        #容器公开的端口列表。在这里公开端口可以为系统提供关于容器使用的网络连接的额外信息,但主要是提供信息。在这里不指定端口不会阻止该端口被公开。任何监听容器内默认的“0.0.0.0”地址的端口都可以从网络访问
spec.containers.ports.containerPort <integer> -required-    #pod暴露的端口,此端口仅是额外的信息,对端口是否被暴露没有影响
spec.containers.ports.hostPort <integer>   #主机上公开的端口
spec.containers.ports.protocol <string>    #端口的协议
spec.containers.ports.hostIP   <string>    #指定要绑定的主机
spec.containers.command <[]string> #运行的程序,类似于docker中的entrypiont,并且这里的命令不会运行在shell中,如果没有这个字段docker镜像会运行自己entrypiont中的指令
spec.containers.args <[]string>  #向docker镜像中传递参数 如果定义了这个字段,docker镜像中cmd命令不会被执行,如果引用变量使用$(VAR_NAME)格式引用,如果想使用命令引用的的方式,需要使用$$(VAR_NAME)方式来引用 
#关于args和command的官方文档链接:https://kubernetes.io/docs/tasks/inject-data-application/define-command-argument-container/   
spec.containers.volumeMounts 
spec.containers.volumeMounts.name 
spec.containers.volumeMounts.mountPath #可以被容器挂载的存储卷的路径,路径不能包含':' 符号 
spec.containers.volumeMounts.subPath #可以被容器挂载的存储卷的路径,并且不会覆盖挂载点中的文件 
spec.containers.volumeMounts.readOnly #是否只读,默认为false
spec.containers.resources 
spec.containers.resources.limits    #资源限制
spec.containers.resources.limits.cpu  #CPU 上限, 可以短暂超过, 容器也不会被停止 
spec.containers.resources.limits.memory :# 内存上限, 不可以超过; 如果超过, 容器可能会被终止或调度到其他资源充足的机器上 
spec.containers.resources.requests   #资源需求
spec.containers.resources.requests.cpu :# CPU 请求, 也是调度 CPU 资源的依据, 可以超过 
spec.containers.resources.requests.memory : #内存请求, 也是调度内存资源的依据, 可以超过; 但如果超过, 容器可能会在 Node 内存不足时清理

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/486649.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

不会Python开发的运维终将被淘汰?

Python语言是一种面向对象、直译式计算机程序设计语言&#xff0c;由Guido van Rossum于1989年底发明。Python语法简捷而清晰&#xff0c;具有丰富和强大的类库&#xff0c;具有可扩展性和可嵌入性&#xff0c;是现代比较流行的语言。 一、最流行的语言 IEEE Spectrum 的数据记…

8大领域、6大机遇!读懂2020年AI医疗新风向

来源 | 工业互联网创新中心、36氪研究院编辑 | 蒲蒲蓝皮书如下未来智能实验室的主要工作包括&#xff1a;建立AI智能系统智商评测体系&#xff0c;开展世界人工智能智商评测&#xff1b;开展互联网&#xff08;城市&#xff09;云脑研究计划&#xff0c;构建互联网&#xff08;…

arduino uno r3单片机封装图_Arduino教程 | 初识Arduino

前一段时间偶然进入创客空间并接触到了开源硬件&#xff0c;小编表示十分感兴趣。于是这周打算汇总一下网络上现有的一些关于Arduino的及教程进行分享。首先感谢一下各位原作者&#xff0c;在此表示十分感谢~什么是Arduino&#xff1f;Arduino是一个能够用来感应和控制现实物理…

神经网络原来是这样和数学挂钩的

来源&#xff1a;遇见数学近几年&#xff0c;有几个被媒体大肆报道的事件&#xff0c;如下表所示。如上所示&#xff0c;深度学习作为人工智能的一种具有代表性的实现方法&#xff0c;取得了很大的成功。那么&#xff0c;深度学习究竟是什么技术呢&#xff1f;深度学习里的“学…

鸿蒙os开发小程序,9岁小学生展示鸿蒙OS开发:这操作太秀了

华为的鸿蒙 OS 正在迅速成熟&#xff0c;这背后离不开无数开发者的支持。近日&#xff0c;鸿蒙 OS 技术社区就向大家介绍了一位特殊的鸿蒙开发者&#xff0c;今年只有 9 岁&#xff0c;还是个小学生 ……在鸿蒙社区&#xff0c;这位小开发者坐在镜头前&#xff0c;向大家演示了…

java调用一个方法后怎么继续执行不等待该方法的返回_Java面试题大全2020版(二)...

今天给大家推送第二部分&#xff0c;主要的大块内容分为&#xff1a;多线程、反射、对象拷贝。三大块内容中涉及到的考点如下&#xff1a;三、多线程35. 并行和并发有什么区别&#xff1f;并行是指两个或者多个事件在同一时刻发生&#xff1b;而并发是指两个或多个事件在同一时…

城市“脑梗” 当前城市大脑面临的困境

来源&#xff1a;中国建设报智慧城市 作者 刘锋 吕本富2020年&#xff0c;城市大脑已经成为前沿科技和城市建设发展的重点&#xff0c;有近百个城市宣布开展城市大脑建设。数百家科技企业进入到泛城市大脑的建设领域&#xff0c;有数百亿的资金投入到城市大脑的建设中。面对…

html5 banner特效,HTML5特效库 CSS3遮罩banner动画特效源码

效果图各位朋友。大家早上好&#xff01;今天给大家带来的是 CSS3遮罩banner动画特效源码&#xff01;看倦的轮播图的&#xff0c;可以试试这个特效&#xff01;别有一番意思&#xff01;大家可以按照自己的意愿进行行修改&#xff0c;改成自己喜欢的样子&#xff01;有想要文件…

android蓝牙通信_使用Arduino构建OLED显示屏与Android手机接口的智能手表

背景知识视频教程Arduino 训练营&#xff1a;通过项目学习​viadean.com通过制作Arduino UNO FM收音机接收器学习Arduino I2C​viadean.com通过构建实际应用程序来掌握Arduino - 国外课栈​viadean.com我们大多数人都熟悉162点阵液晶显示器&#xff0c;它在许多项目中用于向用户…

DeepMind新突破!首次用深度学习从第一性原理计算分子能量

来源&#xff1a;AI科技评论编译 | 青暮DeepMind发表了一项新研究&#xff0c;展示了深度学习如何帮助解决现实系统中的量子力学基本方程问题&#xff0c;相关论文发表在物理学期刊《Physical Review Research》&#xff0c;代码也已经开源。这种新的神经网络架构叫做Fermionic…

重磅发布:2020全球前沿技术发展趋势报告

来源&#xff1a;科技日报作者&#xff1a;刘垠、操秀英大热的脑机接口、基因编辑等前沿技术发展如何&#xff1f;2020年科技界关注了哪些热点&#xff1f;22日在浦江创新论坛上发布的《全球前沿技术发展趋势报告》带来了答案。《全球前沿技术发展趋势报告》由中国科学技术信息…

400错误是什么原因_499错误是什么?499错误的原因及解决方法

​HTTP状态码出现499错误有多种情况&#xff0c;499错误是什么&#xff1f;下面我们来学习Nginx 499错误的原因及解决方法。日志记录中HTTP状态码出现499错误有多种情况&#xff0c;比如nginx反代到一个永远打不开的后端&#xff0c;日志状态记录就会是499、发送字节数是0。​经…

MapReduce过程详解及其性能优化

http://blog.csdn.net/aijiudu/article/details/72353510 废话不说直接来一张图如下&#xff1a; 从JVM的角度看Map和Reduce Map阶段包括&#xff1a; 第一读数据&#xff1a;从HDFS读取数据 1、问题:读取数据产生多少个Mapper&#xff1f;&#xff1f; Mapper数据过大的话&…

爱因斯坦梦断“大统一理论”

来源&#xff1a;数学职业家爱因斯坦发表了他最为得意之作&#xff1a;广义相对论之后&#xff0c;便开始了他的“统一之梦”。大有“躲进小楼成一统&#xff0c;管他冬夏与春秋”之势&#xff0c;这一“统”就是三十余年&#xff0c;到死方休。尽管统一场论一词始于爱因斯坦&a…

js数组截取前5个_想用好 Node.js?这 5 个经典国产项目值得细品

凭借着高并发性能优秀、异步事件驱动、入门简单等优势&#xff0c;Node.js 受到了不少开发者们的青睐。但不得不承认的是&#xff0c;如果用不好 Node.js&#xff0c;它的坑就会非常多&#xff0c;为了帮助各位 Node.js 的开发者们更灵活地使用它&#xff0c;Gitee 为大家推荐以…

微博html天涯吴奇隆刘诗诗,吴奇隆深夜微博晒爱心,为刘诗诗庆生,网友:撒了一大把狗粮...

导语&#xff1a;吴奇隆深夜微博晒爱心&#xff0c;为刘诗诗庆生&#xff0c;网友&#xff1a;撒了一大把狗粮明星夫妻的甜蜜生活&#xff0c;总会让大家感到幸福浪漫。看到自己的偶像能够过得这么好&#xff0c;作为粉丝心里也是很美的&#xff0c;为偶像的幸福感到高兴。娱乐…

划重点!2020年,这些前沿技术最受关注

来源&#xff1a;科技日报大热的脑机接口、基因编辑等前沿技术发展如何&#xff1f;2020年科技界关注了哪些热点&#xff1f;22日在浦江创新论坛上发布的《全球前沿技术发展趋势报告》带来了答案。《全球前沿技术发展趋势报告》由中国科学技术信息研究所和上海市科学学研究所联…

MVC里面写html获取不到input,asp.net-mvc – ASP.Net [HiddenInput]数据属性在Razor中用Html.EditorForModel渲染时不起作用?...

我有以下型号&#xff1a;public class Product{[HiddenInput(DisplayValue false)]public int ProductID { get; set; }[required(ErrorMessage"Please enter a product name")]public string Name { get; set; }[required(ErrorMessage"Please enter a descr…

select默认选中的option_macOS下妙用option按键

macOS下option键是非常重要的按键&#xff0c;它的特性是激活一些隐藏功能&#xff0c;所以经常被多数人忽视。现在总结一下option键让你意想不到的功能吧。最大化窗口mac左上角三个按钮默认为关闭 最小化和全屏&#xff0c;但大多数时候&#xff0c;我们最要的是最大化窗口&am…

化身“监工”的AI,我们该如何相处?

来源&#xff1a; 脑极体AI技术带来整体社会福利增加的同时&#xff0c;也正在带来一系列新的问题。目前来说&#xff0c;与人工智能是否会取代人类这类“玄学”问题而言&#xff0c;当下最现实的一个问题就是人和AI的协作问题了。不久前&#xff0c;人物杂志的一篇《外卖骑手&…