网站建设和网页设计常见的推广方式
文章目录
- yaml文件管理
- 编写yaml配置文件
- 获取配置模板
- 方法一
- 方法二
- 方法三
- 方法四
yaml文件管理
-
Kubernetes 支持 YAML 和 JSON 格式管理资源对象
- JSON 格式:主要用于 api 接口之间消息的传递
- YAML 格式:用于配置和管理,YAML 是一种简洁的非标记性语言,内容格式人性化,较易读
-
YAML 语法格式:
- 大小写敏感
- 使用缩进表示层级关系
- 不支持Tab键制表符缩进,只使用空格缩进
- 缩进的空格数目不重要,只要相同层级的元素左侧对齐即可,通常开头缩进两个空格
- 符号字符后缩进一个空格,如冒号,逗号,短横杆(-)等
- “—”表示YAML格式,一个文件的开始,用于分隔文件间
- “#”表示注释
###查看k8s支持的API版本
kubectl api-versions
###当前版本k8s使用的API版本
kubectl api-resources
编写yaml配置文件
apiVersion: apps/v1 #指定api版本标签
kind: Deployment
#定义资源的类型/角色,deployment为副本控制器,此处资源类型可以是Deployment、Job、Ingress、Service等
metadata: #定义资源的元数据信息,比如资源的名称、namespace、标签等信息name: nginx-deployment #定义资源的名称,在同一个namespace空间中必须是唯一的labels: #定义Deployment资源标签(可定义多个)app: nginx
spec: #定义deployment资源需要的参数属性,诸如是否在容器失败时重新启动容器的属性replicas: 3 #定义副本数量selector: #定义标签选择器matchLabels: #定义匹配标签app: nginx #需与 .spec.template.metadata.labels 定义的标签保持一致template: #定义业务模板,如果有多个副本,所有副本的属性会按照模板的相关配置进行匹配metadata: ##pod资源的元信息labels: #定义Pod副本将使用的标签,需与 .spec.selector.matchLabels 定义的标签保持一致app: nginxspec: ##定义pod的属性containers: #定义容器属性- name: nginx #定义一个容器名,一个 - name: 定义一个容器image: nginx:1.15.4 #定义容器使用的镜像以及版本ports:- containerPort: 80 #定义容器的对外的端口
##创建yaml文件的目录
cd /opt/
mkdir demo/
vim demo01-deploy.yamlkubectl explain deployment
##查看deployment的信息,要编写的yaml的文件的字段
apiVersion: apps/v1
kind: Deployment
metadata: name: myapp-deploymentnamespace: test01labels: app: myapp
spec: replicas: 2selector:matchLabels: app: myapp-podtemplate:metadata: labels: app: myapp-podspec:containers:- name: myappimage: nginx:latestports: - containerPort: 80name: httpprotocol: TCP
##先创建 配置文件中的命名空间##利用yaml文件创建 deployment
kubectl apply -f demo01-deploy.yaml##创建service资源
vim myapp-svc.yaml
apiVersion: v1
kind: Service
metadata: name: myapp-servicenamespace: test01
spec: selector: app: myapp-podports: - name: httpport: 8080targetPort: 80nodePort: 31000protocol: TCPtype: NodePortexternalTrafficPolicy: Cluster
获取配置模板
方法一
##手动配置yaml配置文件,可根据 kubectl explain 命令获取字段信息
方法二
##对于新的资源
## 利用 --dry-run 模拟创建过程,但没有创建东西
kubectl create deployment ggl -n test01 --image=nginx:1.14 --replcas=3 --dry-run=client##利用 -o 获取配置文件
kubectl create deployment ggl -n test01 --image=nginx:1.14 --replcas=3 --dry-run=client -o yaml##将配置文件导出到文件中
kubectl create deployment ggl -n test01 --image=nginx:1.14 --replcas=3 --dry-run=client -o yaml > demo3.yaml
方法三
##对于已经存在的资源
##用get命令导出
kubectl get svc nginx-service -o yaml > my-svc.yaml
##在线编辑配置
kubectl edit svc nginx-service
#手动复制配置,再粘贴到新文件
方法四
##复制官方文档的配置文件案例