Kubernetes之pod的属性
| 属性名称 | 取值类型 | 是否必选 | 取值说明 |
|---|---|---|---|
| version | String | Required(必) | 版本号,例如v1 |
| kind | String | Required | pod |
| metadata | Object | Required | 元数据 |
| metadata.name | String | Required | pod的名称,命名规范须符合RFC 1035规范 |
| metadata.namespace | String | Required | pod的所属命名空间,默认值为default |
| metadata.labels[] | List | 自定义便签列表 | |
| metadata.annotation[] | List | 自定义注解列表 | |
| Spec | Object | Required | pod中容器的详细定义 |
| spec.containers[] | List | Required | Pod容器列表 |
| spec.containers[].name | String | Required | 容器名称 |
| spec.containers[].image | String | Required | 容器镜像名称 |
| spec.containers[].imagePullPolicy | String |
获取镜像策略,可选值包括:Always、Never、IfNOtPresent,默认值为Always Always:表示每次都尝试重新下载镜像 IfNotPresent:表示如果本地有镜像,使用本地镜像,本地镜像不存在时下载镜像 Never:表示仅使用本地镜像 |
|
| spec.containers[].command[] | List | 容器启动命令列表,如果不指定,则使用镜像打包是的启动命令 | |
| spec.containers[].args[] | List | 容器启动命令参数列表 | |
| spec.containers[].workingDir | String | 容器工作目录 | |
| spec.containers[].volumeMounts[] | List | 挂载到容器内部的存储卷配置 | |
| spec.containers[].volumeMounts[].name | String |
引用Pod定义的共享存储名称,需要使用volumes[]部分定义的共享存储名称 |
|
| spec.containers[].volumeMounts[].mountPath | String | 存储卷在容器内Mount的绝对路径,应少于512字符 | |
|
spec.containers[].volumeMounts[].readOnly |
string | 是否为只读模式,默认读写模式 | |
| spec.containers[].ports[] | list | 容器需要暴露端口号列表 | |
| spec.containers[].ports[].name | String | 端口名称 | |
|
spec.containers[].ports[].containerPort |
lnt | 容器需要监听的端口号 | |
| spec.containers[].ports[].hostPort | Int | 容器所在主机需要监听的端口号,默认与containerPort相同。设置hostPost时,同一台主机无法启动该容器的第二个副本 | |
| spec.containers[].ports[].protocol | String | 端口协议,支持TCP和UDP,默认TCP | |
| spec.containers[].env[] | list | 容器运行前需要设置的环境变量列表 | |
| spec.containers[].env[].name | String | 环境变量的名称 | |
| spec.containers[].env[].value | String | 环境变量值 | |
| spec.containers[].resources | Object | 资源限制和资源请求的请求设置 | |
| spec.containers[].resources.limits | Object | 资源限定的设置 | |
| spec.containers[].resources.limits.cpu | String | CPU限制,单位为core数,将用于 docker run --cpu-shares参数 | |
| spec.containers[].resources.limits.memory | String | 内存限制,单位为MIB/GiB等,将用于docker run --memory参数 | |
| spec.containers[].resources.requests | Object | 容器初始化的资源限制设置 | |
| spec.containers[].resources.requests.cpu | String | CPU请求,单位为core数,容器启动时初始化可用数量 | |
| spec.containers[].resources.requests.memory | String | 内存请求,单位为MIB、GiB容器启动的初始化可用数量 | |
| spec.volumes[] | list | 在该Pod定义共享存储列表 | |
| spec.volumes[].name | String |
共享存储卷的名称;在同一个Pod中每个存储卷定义一个名称,应符合RFC 1035规范。容器定义部分的containers[]. volumeMount[].name将引用该存储卷法人名称 |
|
| spec.volumes[].emptyDir | Object | 类型为emptyDir的存储卷,表示与pod同生命周期的一个临时目录,其值为一个空对象:emptyDir | |
| spec.volumes[].hostPath.path | String | 类型为hostpash的存储卷,表示挂着pod所在宿主机的目录 | |
| spec.volumes[].secret | Object | 类型为secret的存储卷,表示挂载集群预定义的secret对象到容器内部 | |
|
spec.volumes[].configMap |
Object | 类型为configMap的存储卷,表示挂载集群预定义的configMap对象到容器内部 | |
| spec.volumes[].livenessProbe | Object |
对pod内容器设置健康状态检查的设置,当探测几次无响应后,系统自动重启该容器。可以设置的方法包括:exec、httpGet、 和tcpSocket。对一个容器仅设置一种健康检查方法 |
|
| spec.volumes[].livenessProbe.exec | Object | 对pod内部健康状态检查设置exec方式 | |
| spec.volumes[].livenessProbe.exec.command[] | String | exec 需要指定的命令或者脚本 | |
| spec.volumes[].livenessProbe.httpGet | Object | 对Pod内个容器健康状态检查,设置HTTPGet方式。需要指定Path、pod | |
| spec.volumes[].livenessProbe.tcpSocket | Object | 对pod内各个容器健康检查的设置,tcpSocket方式 | |
| spec.volumes[].livenessProbe.initialDelaySeconds | Number | 容器启动完成后进行首次探测的时间,单位为s | |
| spec.volumes[].livenessProbe.timeoutSeconds | Number | 对容器健康状态检查的等待响应的超时时间。单位为s,默认为1s,超过该超时时间设置,将认为该容器不健康,将重启容器 | |
| spec.volumes[].livenessProbe.periodSeconds | Number | 对容器健康检查的定期时间设置,单位为s默认为10s探测一次 | |
| spec.restartPolicy | String |
pod的重启策略,可选值为Always、OnFailure、默认值Always Always:pod一旦停止运行,则无论容器是如何终止的。kubelet都将它重启 OnFailure:只有pod以非零吗终止时,kubelet才会重启容器,如果正常退出则不会重启 Never:pod终止后将该pod退出吗;报告给Master,不会再重启pod |
|
| spec.nodeSelector | Object | 设置NodeSelector表示将该pod调度到包含这些label的Node上。以key:value格式指定 | |
| spec.imagePullSecret | Object | pull镜像时使用secret名称,以name:secretkey.格式指定 | |
| spec.hostNetwork | Boolean |
是否使用主机网络模式,默认值为false.。如果设置为true,则表示容器使用宿主机网络,使用Docker网桥,该pod将无法在同一 台主机启动第二个副本 |
Kubernetes之pod的属性的更多相关文章
- 通过describe命令学习Kubernetes的pod属性详解
我们可以首先使用kubectl get pods命令得到pod列表,比如我们想研究pod nginx-storage-pod的明细: 使用命令kubectl describe pod nginx-st ...
- Kubernetes之Pod使用
一.什么是Podkubernetes中的一切都可以理解为是一种资源对象,pod,rc,service,都可以理解是 一种资源对象.pod的组成示意图如下,由一个叫”pause“的根容器,加上一个或多个 ...
- kubernetes之pod健康检查
目录 kubernetes之pod健康检查 1.概述和分类 2.LivenessProbe探针(存活性探测) 3.ReadinessProbe探针(就绪型探测) 4.探针的实现方式 4.1.ExecA ...
- Kubernetes基石-pod容器
引用三个问题来叙述Kubernetes的pod容器 1.为什么不直接在一个Docker容器中运行所有的应用进程. 2.为什么pod这种容器中要同时运行多个Docker容器(可以只有一个) 3.为什么k ...
- 06 . Kubernetes之Pod控制器详细介绍及应用
Pod API属性详解 Pod是k8s集群中的最小编排单位.将这个设计落实到API对象上,容器就成了Pod属性里一个普通的字段.那么到底哪些属性属于Pod对象,哪些属性属于容器的呢?先看下面的一段描述 ...
- kubernetes调度pod运行于master节点上
应用背景: 使用kubeadm部署的kubernetes集群,其master节点默认拒绝将pod调度运行于其上的,加点官方的术语就是:master默认被赋予了一个或者多个“污点(taints)”,“污 ...
- Kubernetes探索学习004--深入Kubernetes的Pod
深入研究学习Pod 首先需要认识到Pod才是Kubernetes项目中最小的编排单位原子单位,凡是涉及到调度,网络,存储层面的,基本上都是Pod级别的!官方是用这样的语言来描述的: A Pod is ...
- kubernetes concepts -- Pod Overview
This page provides an overview of Pod, the smallest deployable object in the Kubernetes object model ...
- kubernetes删除pod一直处于terminating状态的解决方法
kubernetes删除pod一直处理 Terminating状态 # kubectl get po -n mon NAME READY STATUS RESTARTS AGE alertmanage ...
随机推荐
- WPF在ViewModel中绑定按钮点击(CommandBase定义)
定义CommandBase public class CommandBase:ICommand { private readonly Action<object> _commandpara ...
- Unity surface shader 2
UV滚动 Shader "Nafio/ScrollUV" { Properties { _Tex("T",2D) = "white" {} ...
- 洛谷P1447 [NOI2010]能量采集(容斥)
传送门 很明显题目要求的东西可以写成$\sum_{i=1}^{n}\sum_{j=1}^m gcd(i,j)*2-1$(一点都不明显) 如果直接枚举肯定爆炸 那么我们设$f[i]$表示存在公因数$i$ ...
- Spring Boot Dubbo 构建分布式服务
概述: 节点角色说明 节点 角色说明 Provider 暴露服务的服务提供方 Consumer 调用远程服务的服务消费方 Registry 服务注册与发现的注册中心 Monitor 统计服务的调用次数 ...
- 如何在VMware workstation上创建Linux虚拟机
由于需要使用Linux虚拟机部署Hadoop集群,故在win10系统上安装了VMware workstation 14,现将介绍如何在VMware workstation上创建Linux虚拟机.下面以 ...
- 剑指Offer的学习笔记(C#篇)-- 数组中重复的数字
题目描述 在一个长度为n的数组里的所有数字都在0到n-1的范围内. 数组中某些数字是重复的,但不知道有几个数字是重复的.也不知道每个数字重复几次.请找出数组中任意一个重复的数字. 例如,如果输入长度为 ...
- 笔记-迎难而上之Java基础进阶2
Set集合 import java.util.*; public class HashSetDemo{ public static void main(String[] args){ //Set接口的 ...
- 将RegEx(正则表达式提取器)与JMeter一起使用
JMeter的,最流行的开源性能测试工具,可以工作正则表达式,用正则表达式提取.正则表达式是一种用于通过使用高级操作提取文本的必需部分的工具.正则表达式在测试Web应用程序时很流行,因为它们可用于验证 ...
- Django (十一) 项目部署 2
阿里云项目部署 ( 如果xshell连接不上阿里云: 解决方法: 1, 在淘宝IP地址库查看当前IP: http://ip.taobao.com/ 2, 点击进入:安全(云盾) -> 安骑士(服 ...
- mysql8.0数据库忘记密码时进行修改方法
最近安装mysql8.0数据库,用以前的修改mysql方法,没有成功,所以参考网上前辈的做法,自己重新整理了下忘记密码时进行修改方法 1.安装mysql8.0后发现,在安装目中,是没有my.ini 和 ...