声明式的管理方法文件

1.声明式管理方法(yaml)文件

1.适合对资源的修改操作

2.声明式管理依赖于已有yaml文件,所有的内容都在yaml文件中声明

3.编辑好的yaml文件还是要依靠陈述式的命令发布到k8s集群当中

2.声明式的三种格式

1.deployment的yaml文件 demonset statefulset

2.service的yaml文件

3.不基于控制器的yaml文件

k8s当中支持两种声明式的资源管理方式:

1.yaml格式,用于配置和管理资源对象

2.json格式,主要用于在api接口之间消息的传递

1.deployment的yamal文件

vim nginx1.yaml

apiVersion: apps/v1

#声明API版本的标签

kind: Deployment

#定义资源的类型 service/pod/deployment/Job.ingress/daemonset/statefulset

metadata:

name: nginx1

namespace: guoqi

labels:

wdf: nginx1

#定义资源的元数据信息,资源名称,资源对象部署的命名空间,标签等等信息

spec:

#定义deployment的资源需要的参数属性。

replicas: 3

#定义副本数

selector:

#定义标签选择器

matchLabels:

wdf: nginx1

#选择匹配的标签

template:

#定义业务的模版,如果定义了多个副本,所有的副本的属性都会按照模版的配置进行匹配

metadata:

labels:

wdf: nginx1

#定义了pod的副本都使用元数据标签和属性来进行匹配

spec:

containers:

- name: nginx

image: nginx:1.10

#posts:

#- containerPort:80

# spec:声明容器的相关参数,虽然我指定了容器的暴露端口是80,nginx默认的镜像就是80

# 即使指定了其他端口,也不会改变容器的端口。

2.service的文件

apiVersion: v1

kind: Service

metadata:

name: nginx-service

namespace: guoqi

labels:

wdf: nginx1

#元数据信息包括,service的名称,所属的命名空间,以及要匹配的deployment的标签,要和之前的保持一致

spec:

type: NodePort

ports:

- port: 80

targetPort: 80

selector:

wdf: nginx1

#匹配所有的标签都是wdf:nginx1的pod的后端提供服务

3.创建一个pod

apiVersion: v1

#定义pod的api

kind: Pod

#定义资源类型

metadata:

name: centos1

namespace: guoqi

spec:

restartPolicy: Never

#restartPolicy指的是pod内的容器启动失败或者有问题的重启策略:Always Never Onfailure(只有异常退>出才会重启,状态非0,如果状态为0,不重启),restartPolicy指的是容器的重启策略,资源类型定义为deployment,这个容器策略只能是Always。

containers:

- name: centos

image: centos:7

#定义元数据信息,pod的全称,命名空间,标签

3.command和args

定义容器运行的命令参数,类似于docker的CMD和entrypoint

args可以理解docker中的cmd 给command传参

  • 22
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值