建立nginx容器:nginx
kubectl run nginx-deploy8 --image=nginx:1.14-alpine --port=80 --replicas=2json
deployment "nginx-deploy8" createdapi
刪除pod:app
kubectl delete pods nginx-deploy8-77c9f8dcf5-prdrt測試
端口映射到集羣外部使用ui
kubectl expose deployment nginx-deploy8 --name=nginx8 --port=80 --target-port=80 --protocol=TCPspa
建立客戶端pod並進入該容器:3d
RESTful:server
GET,PUT,DELETE,POST...對象
Kubectrl run ...
資源:對象
Workload(工做負載型資源):Pod,ReokucaSet,Deoloyment...
服務發現及均衡,service,ingress
配置與存儲
Volume,CSI
configMap,secret
downwardAPI
集羣級的資源
Namespace,Node,role,clusterRoleBinding
元數據型資源
HPA,PodTemplate,LimitRange
以ymal格式打印輸出:
kubectl get pods myapp-5dc65c69c8-2v8jb -o yaml
大部分資源的配置清單(5個一級字段組成):
apiVersion: group/version
kubectl api-versions
Deploy
Beta(公共測試版)
穩定版
Kind:資源類別
Metadata:元數據
Name:同一類別是惟一的
NameSpace:
Labels:標籤
Annotations:
...
每一個資源引用PATH:
/api/GROUP/VERSION/namespace/NAMESPACE/TYPE/NAME(大寫字母表明可替代)
Spec:
指望的狀態,disired state
Status:當前狀態
Current state 本字段有kuberneters集羣維護
讓當前狀態無限向指望狀態靠近
建立資源的方法:
Apiserver 僅接受JSON格式的資源定義;
Yaml格式提供配置清單,apiserver可自動將其轉爲json格式,然後在提交;
命令:
Required(必選字段)
字段斷定
kubectl explain pod
二級字段斷定:
kubectl explain pod.metadata
多級字段斷定以點(.)區分依次類推
kubectl create -f pod_demo.yaml
kubectl describe pods pod-demo
kubectl delete -f pod_demo.yaml(pod完全刪除)