K8s中配置文件模板含义是什么
发表于:2024-11-19 作者:千家信息网编辑
千家信息网最后更新 2024年11月19日,这篇文章给大家分享的是有关K8s中配置文件模板含义是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、deploymentDeployment为Pod和Replica
千家信息网最后更新 2024年11月19日K8s中配置文件模板含义是什么
这篇文章给大家分享的是有关K8s中配置文件模板含义是什么的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。
一、deployment
Deployment为Pod和Replica Set下一代Replication Controller)提供声明式更新
1,配置示例#
apiVersion: apps/v1 # 1.9.0 之前的版本使用 apps/v1beta2,可通过命令 kubectl api-versions 查看kind: Deployment #指定创建资源的角色/类型metadata: #资源的元数据/属性 name: nginx-deployment #资源的名字,在同一个namespace中必须唯一 namespace: xxxx #命名空间 labels: app: demo #标签spec: replicas: 3 #副本数量3 strategy: rollingUpdate: ##由于replicas为3,则整个升级,pod个数在2-4个之间 maxSurge: 1 #滚动升级时会先启动1个pod maxUnavailable: 1 #滚动升级时允许的最大Unavailable的pod个数 selector: #定义标签选择器,部署需要管理的pod(带有该标签的的会被管理)需在pod 模板中定义 matchLabels: app: web-server template: #这里Pod的定义 metadata: labels: #Pod的label app: web-server spec: # 模板的规范 containers: - name: nginx #容器的名字 image: nginx:1.12.1 #容器的镜像地址 command: [ "/bin/sh","-c","cat /etc/config/path/to/special-key" ] #启动命令 args: #启动参数 - '-storage.local.retention=$(STORAGE_RETENTION)' - '-storage.local.memory-chunks=$(STORAGE_MEMORY_CHUNKS)' - '-config.file=/etc/prometheus/prometheus.yml' - '-alertmanager.url=http://alertmanager:9093/alertmanager' - '-web.external-url=$(EXTERNAL_URL)' #如果command和args均没有写,那么用Docker默认的配置。 #如果command写了,但args没有写,那么Docker默认的配置会被忽略而且仅仅执行.yaml文件的command(不带任何参数的)。 #如果command没写,但args写了,那么Docker默认配置的ENTRYPOINT的命令行会被执行,但是调用的参数是.yaml中的args。 #如果如果command和args都写了,那么Docker默认的配置被忽略,使用.yaml的配置。 imagePullPolicy: IfNotPresent # IfNotPresent :默认值,本地有则使用本地镜像,不拉取,如果不存在则拉取 # Always: 总是拉取 # Never: 只使用本地镜像,从不拉取 livenessProbe: #表示container是否处于live状态。如果LivenessProbe失败,LivenessProbe将会通知kubelet对应的container不健康了。随后kubelet将kill掉container,并根据RestarPolicy进行进一步的操作。默认情况下LivenessProbe在第一次检测之前初始化值为Success,如果container没有提供LivenessProbe,则也认为是Success; httpGet: path: /health #如果没有心跳检测接口就为/ port: 8080 scheme: HTTP initialDelaySeconds: 60 ##启动后延时多久开始运行检测 timeoutSeconds: 5 successThreshold: 1 failureThreshold: 5 readinessProbe: readinessProbe: httpGet: path: /health #如果没有心跳检测接口就为/ port: 8080 scheme: HTTP initialDelaySeconds: 30 ##启动后延时多久开始运行检测 timeoutSeconds: 5 successThreshold: 1 failureThreshold: 5 resources: ##CPU内存限制 requests: cpu: 2 memory: 2048Mi limits: cpu: 2 memory: 2048Mi env: ##通过环境变量的方式,直接传递pod=自定义Linux OS环境变量 - name: LOCAL_KEY #本地Key value: value - name: CONFIG_MAP_KEY #局策略可使用configMap的配置Key, valueFrom: configMapKeyRef: name: special-config #configmap中找到name为special-config key: special.type #找到name为special-config里data下的key ports: - name: http containerPort: 8080 #对service暴露端口 volumeMounts: #挂载volumes中定义的磁盘 - name: log-cache mount: /tmp/log - name: sdb #普通用法,该卷跟随容器销毁,挂载一个目录 mountPath: /data/media - name: nfs-client-root #直接挂载硬盘方法,如挂载下面的nfs目录到/mnt/nfs mountPath: /mnt/nfs - name: example-volume-config #高级用法第1种,将ConfigMap的log-script,backup-script分别挂载到/etc/config目录下的一个相对路径path/to/...下,如果存在同名文件,直接覆盖。 mountPath: /etc/config - name: rbd-pvc #高级用法第2中,挂载PVC(PresistentVolumeClaim)#使用volume将ConfigMap作为文件或目录直接挂载,其中每一个key-value键值对都会生成一个文件,key为文件名,value为内容, volumes: # 定义磁盘给上面volumeMounts挂载 - name: log-cache emptyDir: {} - name: sdb #挂载宿主机上面的目录 hostPath: path: /any/path/it/will/be/replaced - name: example-volume-config # 供ConfigMap文件内容到指定路径使用 configMap: name: example-volume-config #ConfigMap中名称 items: - key: log-script #ConfigMap中的Key path: path/to/log-script #指定目录下的一个相对路径path/to/log-script - key: backup-script #ConfigMap中的Key path: path/to/backup-script #指定目录下的一个相对路径path/to/backup-script - name: nfs-client-root #供挂载NFS存储类型 nfs: server: 10.42.0.55 #NFS服务器地址 path: /opt/public #showmount -e 看一下路径 - name: rbd-pvc #挂载PVC磁盘 persistentVolumeClaim: claimName: rbd-pvc1 #挂载已经申请的pvc磁盘
二、Service YAML
apiVersion: v1 # 指定api版本,此值必须在kubectl api-versions中 kind: Service # 指定创建资源的角色/类型 metadata: # 资源的元数据/属性 name: demo # 资源的名字,在同一个namespace中必须唯一 namespace: default # 部署在哪个namespace中 labels: # 设定资源的标签 app: demospec: # 资源规范字段 type: ClusterIP # ClusterIP 类型 ports: - port: 8080 # service 端口 targetPort: http # 容器暴露的端口 protocol: TCP # 协议 name: http # 端口名称 selector: # 选择器 app: demo
感谢各位的阅读!关于"K8s中配置文件模板含义是什么"这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!
配置
文件
资源
目录
路径
检测
模板
内容
容器
标签
磁盘
端口
类型
参数
名字
命令
镜像
升级
含义
高级
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
服务器安装教程
数据库如何清除表格内数据
软件开发什么是依从性
正规软件开发加盟商包括什么
医药研发数据库
杭州移动软件开发平台
影视制作公司服务器配置
软件开发设计取费
软件开发状态汇报
乐享易购北京网络技术有限公司
华陌网络技术有限公司
网络安全与政务服务平台
北京启航软件开发
数据库无效外部过程什么意思
什么是软件开发自学步骤
河南费纳软件开发公司
小学生网络安全现状调研问卷
手机用哪些云服务器比较好
软件开发一个功能点多少钱
软件开发学什么不容易淘汰
地理信息软件开发子项检查
控制台查看代码行数据库
网络安全防护技能手册
聊天软件开发那个比较好
丰县软件开发品质保障
wek服务器
数据库添加字段会添加到哪里
网络安全宣传周九进
怎样黑进骗子的服务器
sql数据库修改列名as