首页 > 其他分享 >k8s yaml文件总结

k8s yaml文件总结

时间:2023-09-22 21:24:04浏览次数:39  
标签:总结 name service v1 yaml pod k8s

k8s支持yaml和JSON格式创建资源对象,json用于接口之间消息传递,适用于开发;yaml格式用于配置和管理,适用于云平台管理,yaml简洁非标记性语言

1.yaml相关基础概念
   yaml语法规则:
   大小写敏感;缩进表示层级关系;缩进不允许使用tab键,只允许使用空格;#表示注释 ---为可选分隔符,当需要再一个文件定义多个结构时使用
   k8s两种结构类型
   maps:字典,Key:Value的键值对信息 如:apiVersion: v1
   lists:列表,即数组。

   例如:
   args
   -beijing
   -shanghai
   -shenzhen
   -guangzhou
2.yaml常见语法
   apiVersion当前所有可用API版本,kubectl api-versions 查看。常用6个apiverion:
   v1:
   apps/v1: Kubernetes API的稳定版本,包含很多核心对象:pod、service等
   batch/v1: 包含一些通用的应用层的api组合,如:Deployments, RollingUpdates, and ReplicaSets
   autoscaling/v1: 包含与批处理和类似作业的任务相关的对象,如:job、cronjob
   networking.k8s.io/v1: 允许根据不同的资源使用指标自动调整容器
   networking.k8s.io/v1: 用于Ingress
   rbac.authorization.k8s.io/v1: 用于RBAC
   kind:资源对象类型,如 pod、deployment、statefulset、job、cronjob
   metadata:常用的配置项有 name,namespace,即配置其显示的名字与归属的命名空间
   spec:个嵌套字典与列表的配置项,也是主要的配置项,支持的子项非常多,根据资源对象的不同,子项会有不同的配置

3.yaml文件运行
   例1:创建 deployment 资源
   #kubectl create -f nginx.yaml
apiVersion: apps/v1 # 1.9.0 之前的版本使用 apps/v1beta2,可通过命令 kubectl api-versions 查看
kind: Deployment #指定创建资源的角色/类型
metadata: #资源的元数据/属性
name: nginx-deployment #资源的名字,在同一个namespace中必须唯一
spec:
replicas: 2 #副本数量2
selector: #定义标签选择器
matchLabels:
app: web-server
template: #这里Pod的定义
metadata:
labels: #Pod的label
app: web-server
spec: # 指定该资源的内容
containers:
- name: nginx #容器的名字
image: nginx:1.12.1 #容器的镜像地址
ports:
- containerPort: 80 #容器对外的端口
   例2:创建pod资源
#kubectl create -f pod-redis.yaml //创建 pod 资源
apiVersion: v1
kind: Pod
metadata:
name: pod-redis
labels:
name: redis
spec:
containers:
- name: pod-redis
image: docker.io/redis
ports:
- containerPort: 80 #容器对外的端口
   例3:创建service
   $ kubectl create -f httpd-svc.yaml //创建 service 资源
apiVersion: v1
kind: Service # 指明资源类型是 service
metadata:
name: httpd-svc # service 的名字是 httpd-svc
labels:
name: httpd-svc
spec:
ports: # 将 service 8080 端口映射到 pod 的 80 端口,使用 TCP 协议
- port: 8080
targetPort: 80
protocol: TCP
selector:
run: httpd # 指明哪些 label 的 pod 作为 service 的后端

标签:总结,name,service,v1,yaml,pod,k8s
From: https://www.cnblogs.com/huchao12/p/17723389.html

相关文章

  • pytest + yaml 框架 -55. raw 不转义模板语法
    前言在yaml文件中,设置的引用变量语法是${var},最近有小伙伴提到一个需求:请求参数的内容需要有特殊符号${var},希望不被转义,不要引用变量,直接用原始数据即可。raw忽略模板语法Jinja2提供了"raw"语句来忽略所有模板语法。语法示例{%raw%}hello${var}world!{%end......
  • uniapp项目实践总结(二十)URLScheme 协议知识总结
    导语:在日常开发过程中,我们经常可以碰到很多的调起某个应用,打开唤醒某个APP,链式启动App等场景,背后就涉及到了URLScheme协议的相关知识,下面就简单介绍一下。目录简介常见URLScheme跳转方法实战演练案例展示简介URLScheme是一个可以让APP之间互相跳转的协议,每......
  • LCT的简陋总结
    不想了解基础知识的可以直接从\(LCT\)基础操作部分开始,前面不是很重要目录\(LCT\)基础知识实链剖分辅助树一些性质\(LCT\)基础操作函数定义函数实现主要参考oi-wiki\(LCT\)基础知识树上操作是算法竞赛中重要的操作由于树的特殊性,使得维护一些子树信息和路径信息变得较为困......
  • 封装总结
    封装就是把public的类变成private的类(个人理解)露出该露的,封装该封装的定义一个私有类以后可以用ALT+INSERT快捷生成get和set方法get方法主要是为了拿到私有类set是为了设置私有类的值,以及在set方法中写一些判断条件,以防止出现一些不合理的值构造器,就是一个无参的一旦有了有......
  • 2023.9.22——每日总结
    学习所花时间(包括上课):9h代码量(行):0行博客量(篇):1篇今天,上午测试,下午做任务。我了解到的知识点:1.echarts结合mysql、javaweb实现大数据的可视化;明日计划:1.完成任务;2.尽力完成测试;......
  • [一些总结]php中的弱相等和强相等
    PHP中的弱相等和强相等相关知识网络上有太多人总结了,但还是想自己动动手写点东西加深加深印象,哈哈。先看下GPT对弱相等和强相等的解释:在PHP中,弱相等(==)和强相等(===)是用于比较两个值的操作符,它们有以下区别:1.弱相等(==):弱相等用于比较两个值是否相等,不考虑值的数据类型。如......
  • k8s 命令
    kindcreatecluster--namemy-cluster kindcreatecluster--configkind-example-config.yaml 加载镜像到集群:kindloaddocker-imagek8s.net.demo--namemy-clusterkubectlcluster-info--contextkind-mytest//显示当前的集群kubectlconfigcurrent-context/......
  • 考试程序语句总结
    1、导csv文件到hive数据库建表便于接收数据:createtabletest1(day_idvarchar(30),sale_nbrvarchar(30),buy_nbrvarchar(30),cntvarchar(30),roundvarchar(30))rowformatserde'org.apache.hadoop.hive.serde2.OpenCSVSerde'WITHSERDEPROPERTIES("separatorChar......
  • k8s 自动扩缩容HPA原理及adapter配置详解
    大家好,我是蓝胖子,都知道,k8s拥有自动扩缩容机制HPA,我们能够通过配置针对不同的扩缩容场景进行自动扩缩容,往往初学者在面对其中繁多配置的时候会学了又忘记,今天我将会以一种不同的视角,结合apiserver请求来探索这部分的配置,看完本篇,应该会对扩缩容这部分配置会有更深的理解。自......
  • k8s部署redis单节点
    创建pvc.yamlkind:PersistentVolumeClaimapiVersion:v1metadata:name:nfspvc1namespace:sqqqqspec:accessModes:-ReadWriteOnceresources:requests:storage:5GistorageClassName:nfs-storage创建redis-configmap.yamlkind:Confi......