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