Kubernetes(k8s)之编写资源清单

一级目录

什么叫资源清单

k8s中所有的内容都抽象为资源,资源实例化之后,叫做对象。
在k8s中,一般使用yaml格式的文件来创建符合我们预期期望的pod,这样的yaml文件我们一般称为资源清单。

好处:怎么创建的怎么回收

如何创建资源

apiserver 仅接受JSON格式的资源定义,yaml格式提供配置清单,apiserver 可自动将其转为JSON格式,而后再提交。

编写资源清单模板(格式)

我们可以先以run命令的形式运行一个pod,然后在查看时指定-o yaml参数即可看到yaml格式的资源清单。
在这里插入图片描述
首先要指定api,指定使用的是哪种api资源,可以通过指令kubectl api-versions查看k8s提供了哪些api资源。这些不是固定的,可以通过插件去扩充。
官方文档地址:https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/
在这里插入图片描述
然后按如下格式编写即可

apiVersion: group/version  //指明api资源属于哪个群组和版本,同一个组可以有多个版本

kind: 		//标记创建的资源类型,k8s主要支持资源类别:Pod,ReplicaSet,Deployment,StatefulSet,DaemonSet,Job,Cronjob
    
metadata:	//元数据
        name:	//对象名称
        namespace:	//对象属于哪个命名空间
        labels:	//指定资源标签,标签是一种键值数据

spec: 		//定义目标资源的期望状态

kubectl explain pod命令可以查看帮助,关于怎么编写你想要的资源清单的帮助
在这里插入图片描述

资源清单参数说明

可以用命令的方式查看参数说明
例:kubectl explain pod.spec.containers.tty
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

自主式Pod资源清单

编写yaml文件,内容以及解释如下

[root@server2 pod]# vim pod.yaml
apiVersion: v1		#属于v1版本
kind: Pod			#资源类型为pod
metadata:
  name: pod-example	#对象名称
spec:
  containers:		#下边并列了两个容器,一整个pod里运行的一服务包含功能myapp和busybox
  - name: myapp		#容器名
    image: myapp:v1	#镜像版本
    imagePullPolicy: IfNotPresent	#镜像拉取策略,未指定直,默认是always
  - name: busybox	
    image: busybox:v1
    tty: true		#因为busybox是一个交互式服务,所以需要给一个终端,tty默认是false,不给true会导致启动失败
    stdin: true		#和tty需要一起开启,默认也是false,接受在终端输入的内容暂存缓存

应用文件创建pod,正常运行,两个容器处于ready状态
在这里插入图片描述
将busybox调到前台运行成功
在这里插入图片描述
删除创建的pod(指定文件源,怎么创建的怎么删除),再给文件写点东西进去,重新应用

修改后的文件内容如下:
apiVersion: v1
kind: Pod
metadata:
  name: pod-example
spec:
  hostNetwork: true		#共享使用宿主机的网络
  nodeName: server4		#指定部署节点为server4
  containers:
  - name: myapp
    image: myapp:v1
    imagePullPolicy: IfNotPresent
    resources:
      requests:
        cpu: "100m"		#启动时至少用100m的cpu
        memory: "50Mi"	#启动时至少用50mi的内存
      limits:
        cpu: "200m"		#启动时至多用200mcpu
        memory: "100Mi"	#启动时至多用200m内存

重新应用查看详细描述,可以看到使用的节点是server4,共享server4的网络
在这里插入图片描述
在这里插入图片描述
我们设置的资源限制和请求的直也可以看到
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值