Kubernetes--YAML文件

Kubernetes支持YAML和JSON格式創建資源對象

JSON格式用於接口之間消息的傳遞
YAML格式用於配置和管理
YAML是一種簡潔的非標記性語言

語法格式

縮進標識層級關係
不支持製表符(tab)縮進,使用空格縮進
通常開頭縮進兩個空格
字符後縮進一個空格,如冒號,逗號等
“—”表示YAML格式,一個文件的開始
“#”表示註釋
  • 查看應用名稱
kubectl api-versions
  • demo演示
mkdir demo

#編輯nginx-deployment.yaml文件
vim /demo/nginx-deployment.yaml

apiVersion: apps/v1
kind: Deployment
metadata:
  name: my-nginx
  labels:
    app: nginx
spec:
  replicas: 2
  selector:
    matchLabels:
      app: nginx
  template:
    metadata:
      labels:
        app: nginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.15.4
        ports:
        - containerPort: 80

#創建nginx-deployment.yaml文件
kubectl create -f nginx-deployment.yaml

#查看pod節點
kubectl get pods

#編輯nginx-service.yaml文件
vim nginx-service.yaml

apiVersion: v1
kind: Service
metadata:
  name: my-nginx-service
  labels:
    app: nginx
spec:
  type: NodePort
  ports:
  - port: 80
    targetPort: 80
  selector:
    app: nginx

#創建nginx-service.yaml文件
kubectl create -f nginx-service.yaml

#查看服務
kubectl get svc

-自動測試命令的正確性,並不執行創建

kubectl run nginx-deployment --image=nginx --port=80 --replicas=2 --dry-run
  • 查看生成yaml格式
kubectl run nginx-deployment --image=nginx --port=80 --replicas=2 --dry-run -o yaml

-查看生成json格式

kubectl run nginx-deployment --image=nginx --port=80 --replicas=3 --dry-run -o json
  • 將現有的資源生成模板導出
kubectl get deploy/nginx --export -o yaml
  • 保存到文件中
kubectl get deploy/nginx --export -o yaml > my-deploy.yaml
  • 查看字段幫助信息
kubectl explain pods.spec.containers

謝謝閱讀!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章