- kubectl创建别名
1 | alias k=kubectl |
- tab补全命令
1 | yum install -y bash-completion |
- kubernets运行应用
1 | kubectl run kubia --image=luksa/kubia --port=8080 --generator=run/v1 |
- 创建一个服务
1 | #创建一个LoadBalancer服务 |
- 公共配置参数
1 | --log-backtrace-at traceLocation 记录日志每到 file:行号时打印一次stack trace 默认值0 |
- kube-apiserver 启动参数
1 | --admission-control strings 对发送给apiserver的任何请求进行准入控制 配置为一个准入控制器列表 |
Pod 资源文件详细说明
属性名称
取值类型
是否必需
取值说明
version
String
yes
v1
kind
String
yes
Pod
metadata
Object
yes
元数据
metadata.name
String
yes
Pod的名称
metadata.namespace
String
yes
Pod所属名称空间
metadata.labels[]
List
自定义标签列表
metadata.annotation[]
List
自定义注解列表
spec
Object
yes
Pod中容器详细定义
spec.containers[]
List
yes
Pod中的容器列表
spec.containers[].name
String
yes
容器的名称
spec.containers[].image
String
yes
容器的镜像名称
spec.containers[].imagePullPolicy
String
获取镜像策略
spec.containers[].command[]
List
容器启动命令列表
spec.containers[].args[]
List
启动命令参数列表
spec.containers[].workingDir
String
容器工作目录
spec.containers[].volumeMounts[]
List
容器存储卷配置
spec.containers[].volumeMounts[].name
String
共享存储卷名称
spec.containers[].volumeMounts[].mountPath
String
存储卷容器内挂载绝对路径
spec.containers[].volumeMounts[].readOnly
Boolean
是否只读模式,默认读写模式
spec.containers[].ports[]
List
容器暴露的端口号列表
spec.containers[].ports[].name
String
端口的名称
spec.containers[].ports[].containerPort
Int
容器需要监听的端口号
spec.containers[].ports[].hostPort
Int
默认与containerPort一致
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数
spec.containers[].resources.limits.memory
String
内存限制 单位MiB/GiB
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
共享存储卷的名称
spec.volumes[].emptyDir
Object
与Pod同生命周期的临时目录
spec.volumes[].hostPath
Object
Pod所在宿主机的目录
spec.volumes[].hostPath.path
String
Pod所在在主机的目录
spec.volumes[].secret
Object
挂载预定义secret对象到容器
spec.volumes[].configMap
Object
挂载预定义configMap对象到容器
spec.volumes[].livenessProbe
Object
健康检查配置
spec.volumes[].livenessProbe.exec
Object
使用exec方式
spec.volumes[].livenessProbe.exec.command[]
String
指定命令或脚本
spec.volumes[].livenessProbe.httpGet
Object
使用httpGet方式 path prot
spec.volumes[].livenessProbe.tcpSocket
Object
使用tcpSocket方式
spec.volumes[].livenessProbe.initalDelaySeconds
Number
启动后首次探测时间 单位s
spec.volumes[].livenessProbe.timeoutSeconds
Number
探测超时时间 默认1s
spec.volumes[].livenessProbe.periodSeconds
Number
探测时间间隔 默认10s
spec.restartPolicy
String
重启策略
spec.nodeSelector
Object
Pod调度到包含label的Node key:value格式指定
spec.imagePullSecrets
Object
Pull镜像使用secret
spec.hostNetwork
Boolean
是否使用主机网络模式
Pod 资源文件详细说明
属性名称
取值类型
是否必需
取值说明
version
String
yes
v1
kind
String
yes
Pod
metadata
Object
yes
元数据
metadata.name
String
yes
Pod的名称
metadata.namespace
String
yes
Pod所属名称空间
metadata.labels[]
List
自定义标签列表
metadata.annotation[]
List
自定义注解列表
spec
Object
yes
Pod中容器详细定义
spec.selector[]
List
yes
选择指定label标签的Pod
spec.type
String
yes
service的类型默认ClusterIP
spec.clusterIP
String
虚拟服务IP地址
spec.sessionAffinity
String
是否支持session 默认为空 可选ClientIP 同一客户端到同一后端Pod
spec.ports[]
List
service需要暴露端口列表
spec.ports[].name
String
端口名称
spec.ports[].protocol
String
端口协议 TCP UDP 默认TCP
spec.ports[].port
int
服务监听端口号
spec.ports[].targetPort
int
需要转发到后端Pod的端口号
spec.ports[].nodePort
int
当type=NodePort时 映射宿主机端口号
status
object
当type=LoadBalancer时 设置外部负载均衡器地址
status.loadBalancer
object
外部负载均衡器
status.loadBalancer.ingress
object
外部负载均衡器
status.loadBalancer.ingress.ip
string
外部负载均衡器的IP地址
status.loadBalancer.ingress.hostname
string
外部负载均衡器的主机名