• Kubernetes中Pod的yaml格式定义配置文件说明


     1 apiVersion: v1          # 必选,版本号
     2 kind: Pod               # 必选,Pod
     3 metadata:               # 必选,元数据
     4   name: String          # 必选,Pod名称
     5   namespace: String       # 必选,Pod所属的命名空间
     6   labels:                # 自定义标签,Map格式
     7     Key: Value            # 键值对
     8   annotations:          # 自定义注解
     9     Key: Value            # 键值对
    10 spec:                  # 必选,Pod中容器的详细属性
    11   containers:            # 必选,Pod中容器列表
    12   - name: String        # 必选,容器名称
    13     image: String        # 必选,容器的镜像地址和名称
    14     imagePullPolicy: {Always | Never | IfNotPresent}    
          # 获取镜像的策略,Always表示下载镜像,IfnotPresent 表示优先使用本地镜像,否则下载镜像,Never表示仅使用本地镜像。
    15 command: [String] # 容器的启动命令列表(覆盖),如不指定,使用打包镜像时的启动命令。 16 args: [String] # 容器的启动命令参数列表 17 workingDir: String # 容器的工作目录 18 volumeMounts: # 挂载到容器内部的存储卷配置 19 - name: String # 引用Pod定义的共享存储卷的名,需用Pod.spec.volumes[]部分定义的卷名 20 mountPath: String # 存储卷在容器内Mount的绝对路径,应少于512字符 21 readOnly: boolean # 是否为只读模式 22 ports: # 容器需要暴露的端口库号列表 23 - name: String # 端口号名称 24 containerPort: Int # 容器需要监听的端口号 25 hostPort: Int # 可选,容器所在主机需要监听的端口号,默认与Container相同 26 env: # 容器运行前需设置的环境变量列表 27 - name: String # 环境变量名称 28 value: String # 环境变量的值 29 resources: # 资源限制和请求的设置 30 limits: # 资源限制的设置 31 cpu: String # Cpu的限制,单位为Core数,将用于docker run --cpu-shares参数,如果整数后跟m,表示占用权重,1Core=1000m 32 memory: String # 内存限制,单位可以为Mib/Gib,将用于docker run --memory参数 33 requests: # 资源请求的设置 34 cpu: string # CPU请求,容器启动的初始可用数量 35 memory: string # 内存请求,容器启动的初始可用数量 36 livenessProbe:
          # 对Pod内容器健康检查设置,当探测无响应几次后将自动重启该容器,检查方法有exec、httpGet和tcpSocket,对一个容器只需设置其中一种方法即可。
    37 exec: # 对Pod容器内检查方式设置为exec方式 38 command: [String] # exec方式需要制定的命令或脚本 39 httpGet: # 对Pod容器内检查方式设置为HttpGet方式,需要指定path、port 40 path: String # 网址URL路径(去除对应的域名或IP地址的部分) 41 port: Int # 对应端口 42 host: String # 域名或IP地址 43 schema: String # 对应的检测协议,如http 44 HttpHeaders: # 指定报文头部信息 45 - name: String 46 value: String 47 tcpSocket: # 对Pod容器内检查方式设置为tcpSocket方式 48 port: Int 49 initialDelaySeconds: Int # 容器启动完成后首次探测的时间,单位为秒 50 timeoutSeconds: Int # 对容器健康检查探测等待响应的超时时间,单位为秒,默认为1秒 51 periodSeconds: Int # 对容器监控检查的定期探测时间设置,单位为秒,默认10秒一次 52 successThreshold: Int # 探测几次成功后认为成功 53 failureThreshold: Int # 探测几次失败后认为失败 54 securityContext: 55 privileged: false 56 restartPolicy: {Always | Never | OnFailure}
          # Pod的重启策略,Always表示一旦不管以何种方式终止运行,kubelet都将重启,OnFailure表示只有Pod以非0退出码才重启,Nerver表示不再重启该Pod
    57 nodeSelector: # 设置NodeSelector表示将该Pod调度到包含这个label的node上,以Key:Value的格式指定 58 Key: Value # 调度到指定的标签Node上 59 imagePullSecrets: # Pull镜像时使用的secret名称,以Key:SecretKey格式指定 60 - name: String 61 hostNetwork: false # 是否使用主机网络模式,默认为false,如果设置为true,表示使用宿主机网络 62 volumes: # 在该Pod上定义共享存储卷列表 63 - name: String # 共享存储卷名称(Volumes类型有多种) 64 emptyDir: { } # 类型为emptyDir的存储卷,与Pod同生命周期的一个临时目录,为空值 65 hostPath: String # 类型为hostPath的存储卷,表示挂载Pod所在宿主机的目录 66 path: String # Pod所在宿主机的目录,将被用于同期中Mount的目录 67 secret: # 类型为Secret的存储卷,挂载集群与定义的Secret对象到容器内部 68 secretname: String 69 items: # 当仅需挂载一个Secret对象中的指定Key时使用 70 - key: String 71 path: String 72 configMap: # 类型为ConfigMap的存储卷,挂载预定义的ConfigMap对象到容器内部 73 name: String 74 items: # 当仅需挂载一个ConfigMap对象中的指定Key时使用 75 - key: String 76 path: String
  • 相关阅读:
    Excel操作基本方法 服务器端不用安装Office工具
    使用IrisSkin2给软件"换肤"
    手机进行GPRS连接的代码(C#.NET开发)
    C# DataGridView 倒出word
    win2003优化大全 (转载)
    c# Invoke和BeginInvoke 区别
    关于sqlite3使用top的一些规则总结
    C#拷贝文件和复制文件夹实例代码 C#拷贝文件
    c# FileSystemWatcherc# FileSystemWatcher控件的使用方法控件的使用方法
    所见即所得富文本编辑器实现原理 转
  • 原文地址:https://www.cnblogs.com/Binggo30/p/10891261.html
Copyright © 2020-2023  润新知