Docker Kubernetes 經常使用命令

Docker Kubernetes 經常使用命令node

 


json


  • # 經過文件名或標準輸入建立資源。
  • kubectl create
  •   # 讀取指定文件內容,進行建立。(配置文件可指定json,yaml文件)。
  •   kubectl create -f 配置文件
  •   # 建立指定文件內容,建立並指定服務版本。(配置文件可指定json,yaml文件)。
  •   kubectl create -f 配置文件 --edit --output-version=版本號 -o json

  •  # 將一個資源公開爲一個新的Kubernetes服務,暴露服務。
  • kubectl expose
  •   # 建立Kubernetes 資源類型,並添加暴露端口。
  •   kubectl expose 資源類型 資源名稱 --port=暴露端口 --target-port=容器端口
  •   # 建立Kubernetes service 服務,並添加暴露端口。
  •   kubectl expose service 資源名稱 --port=暴露端口 --target-port=容器端口 --name=建立服務名稱
  •   # 建立Kubernetes ,並添加UDP暴露端口,使用默認容器端口。
  •   kubectl expose 資源類型 資源名稱 --port=暴露端口 --protocol=udp --name=建立服務名稱
  •   # 建立Kubernetes服務,根據yaml文件,並添加暴露端口。(配置文件可指定json,yaml文件)。
  •   kubectl expose -f 配置文件 --port=暴露端口 --target-port=容器端口

  • # 建立並運行一個特定的鏡像,多是副本。建立一個deployment或job管理建立的容器。
  • kubectl run
  •   # 建立一個鏡像,運行。
  •   kubectl run 容器名 --image=鏡像名
  •   # 建立一個鏡像,運行。並啓用暴露端口。
  •   kubectl run 容器名 --image=鏡像名 --port=暴露端口
  •   # 建立一個鏡像,運行。並引入變量。
  •   kubectl run 容器名 --image=鏡像名 --env=「變量」
  •   # 建立一個鏡像,運行。並引入標籤。
  •   kubectl run 容器名 --image=鏡像名 --labels="key=value,env=prod"
  •   # 建立一個鏡像,運行。並設置副本數。默認1。
  •   kubectl run 容器名 --image=鏡像名 --replicas=副本數
  •   # 建立一個鏡像,運行。並添加-i-t訪問容器終端。並設置重啓策略(Never不重啓)。
  •   kubectl run -i -t 容器名 --image=鏡像名 --restart=重啓策略
  •   # 建立一個鏡像,運行。並指定容器內執行指定命令。
  •   kubectl run 容器名 --image=鏡像名 --command -- 指定命令

api


  • # 經過文件名、標準輸入、資源名稱或標籤選擇器來刪除資源
  • kubectl delete
  •   # 刪除指定資源。
  •   kubectl delete 資源類型 資源名
  •   # 刪除全部指定資源。
  •   kubectl delete 資源類型 -all
  •   # 經過指定文件刪除指定資源。(配置文件.json .yaml)
  •   kubectl delete -f 配置文件

  • # 維護期間排除容器名
  • kubectl drain
  •   # 排除指定容器名。
  •   kubectl drain 容器名

bash


  • # 配置應用資源。修改現有應用程序資源。
  • kubectl set
  •   # 更新pod內的環境變量。
  •   kubectl set env 資源類型 資源名稱 添加變量=值
  •   # 更新pod鏡像。
  •   kubectl set image 資源類型 資源名稱 容器名=升級鏡像版本
  •   # 更新pod內的資源。
  •   kubectl set resources 資源類型 資源名稱 [請求——限制= & =請求][選項]
  •   # 經過配置文件更新pod內的資源。(配置文件.json .yaml)
  •   kubectl set resources -f 配置文件

  • # 使用默認的編輯器編輯一個資源。
  • kubectl edit
  •   # 動態更新服務配置參數。
  •   kubectl edit 資源類型 資源名稱

  • # 管理資源的發佈。
  • kubectl rollout
  •   # 回滾到上一個版本。
  •   kubectl rollout undo 資源類型 資源名稱
  •   # 指定版本回滾。
  •   kubectl rollout undo 資源類型 資源名稱 --to-revision=3
  •   # 查看當前的資源狀態。
  •   kubectl rollout status 資源類型 資源名稱
  •   # 查看歷史修訂版本
  •   kubectl rollout history 資源類型 資源名稱
  •   # 查看指定歷史修訂版本
  •   kubectl rollout history 資源類型 資源名稱 --revision=版本數

  • # 執行指定複製控制的滾動更新。
  • kubectl rolling-update
  •   # 滾動更新v1版本,經過json配置文件跟新到v2版本。
  •   kubectl rolling-update 服務名稱-v1 -f 服務名稱-v2.json
  •   # 滾動更新v1版本,到v2,並指定更新鏡像。
  •   kubectl rolling-update 服務名稱-v1 服務名稱-v2 --image=image:v2

  • # 擴容或縮容Pod數量,Deployment、ReplicaSet、RC或Job
  • kubectl scale
  •   # 擴容縮容副本數。
  •   kubectl scale --replicas=副本數 資源類型 資源名稱
  •   # 擴容縮容副本數。對多個資源擴容。
  •   kubectl scale --replicas=副本數 資源類型/資源名稱1 資源類型/資源名稱2
  •   # 擴容縮容副本數。若是當前副本數爲N個就擴容爲Y個。
  •   kubectl scale --current-replicas=副本數N --replicas=副本數Y 資源類型 資源名稱

  • # 建立一個自動選擇擴容或縮容並設置Pod數量
  • kubectl autoscale
  •   # 設置該資源類型的副本數自動擴容到相關值
  •   kubectl autoscale 資源類型 資源名稱 --min=最小值 --max=最大值
  •   # 設置該資源類型的副本數自動擴容到相關值。並根據CPU閾值擴容縮容。
  •   kubectl autoscale 資源類型 資源名稱 --max=最大值 --最小值 --cpu-percent=80

  • # 修改證書資源。
  • kubectl certificate

  • # 標記節點不可調度
  • kubectl cordon
  •   # 標記指定節點不可調度
  •   kubectl cordon 節點名

  • # 標記節點可調度
  • kubectl uncordon
  •   # 標記指定節點可調度
  •   kubectl uncordon 節點名

  •  # 更新一個或多個節點上的nodes。
  • kubectl taint

  •  # 執行命令到容器。
  • kubectl exec
  •   # 執行指定命令到容器中。
  •   kubectl exec 容器名 命令
  •   # 分配僞終端已宿主級向容器添加命令。
  •   kubectl exec 容器名 -- bash -c 「命令」
  •   # 進入指定節點容器內。
  •   kubectl exec 容器名 -it bash

  • # 轉發一個或多個本地端口到一個pod。
  • kubectl port-forward
  •   # 將宿主級端口轉發到容器中。
  •   kubectl port-forward 容器名 宿主級端口:容器端口

  • # 爲kubernetes API Server啓動服務代理
  • kubectl proxy

  • # 拷貝文件或目錄到容器中。
  • kubectl cp

  •  # 附加到一個進程到一個已經運行的容器。
  • kubectl attach
  •   # 進入到一個運行的容器終端。
  •   kubectl attach 容器名

  •  # 經過文件名或標準輸入對資源應用配置
  • kubectl apply
  • # 更新部署配置文件信息(配置文件格式.json .yaml)
  • kubectl apply -f 配置文件

  •  # 使用補丁修改、更新資源的字段。
  • kubectl patch

  • # 經過文件名或標準輸入替換一個資源。
  • kubectl replace
  •   # 從新建立配置文件內的資源 。配置文件但是(.yaml、.json)
  •   kubectl replace -f 配置文件 --force

  •  # 不一樣的API版本之間轉換配置文件。YAML和JSON格式都接受。
  • kubectl convert

  • # 更新資源上的標籤
  • kubectl label

  • # 在一個或多個資源上更新註釋。
  • kubectl annotate

  • # 修改kubeconfig文件(用於訪問API,好比配置認證信息)
  • kubectl config

app


  • # 顯示一個或多個資源
  • kubectl get
  •   # 查看組件運行狀態
  •   kubectl get componentstatus
  •   # 查看節點加入信息
  •   kubectl get node
  •   # 查看全部資源
  •   kubectl get all
  •   # 查看pods狀態
  •   kubectl get pods
  •   # 查看pods及運行節點位置,查看更多信息
  •   kubectl get pods -o wide
  •        # 查看pods下其餘命名空間(kube-system等)
  •        kubectl get pods -n 命名空間
  •   # 查看endpoints節點
  •   kubectl get endpoints
  •   # 查看sservice暴露宿主級訪問地址描述信息
  •   kubectl get service
  •   # 根據標籤查找資源描述信息。--output=wide查看更多信息。
  •   kubectl get 資源類型 --selector="key=value" --output=wide
  •   # 查看資源全部標籤
  •   kubectl get 資源類型 --show-labels
  •   # 根據標籤查看資源
  •   kubectl get 資源類型 -l app=example
  •   # 查看指定命名空間的資源
  •   kubectl get 資源類型 --namespace=kube-system
  •        # 查看命名空間
  •        kubectl get ns

  • # 文檔參考資料,可查看yaml文件字段指令含義。
  • kubectl explain
  •   # 得到資源的特定字段的文檔
  •   kubectl explain pods.spec.containers
  •   # 得到資源及其字段的文檔
  •   kubectl explain pods

  • # 顯示集羣信息
  • kubectl cluster-info
  •   # 顯示詳細集羣信息
  •   kubectl cluster-info dump

  • # 顯示資源(CPU/Memory/Storage)使用。須要Heapster運行。
  • kubectl top

  • # 顯示特定資源或資源組的詳細信。
  • kubectl describe
  •   # 查看資源詳細信息
  •   kubectl describe 資源類型 資源名稱
  •   # 指定標籤。詳細信息。
  •   kubectl describe 資源類型 -l name=標籤名
  •        # 查看node資源使用詳情信息
  •        kubectl describe nodes NodeIP

  • # 在od或指定的資源中容器打印日誌。若是od只有一個容器,容器名稱是可選的。
  • kubectl logs
  •   # 查看指定節點服務日誌。
  •   kubectl logs 容器名
  •   # 查看指定容器日誌。
  •   kubectl logs pod 節點名 -c 容器名
  •   # 查看指定容器日誌。實時查看。
  •   kubectl logs pod 容器名 -f
  •   # 經過標籤查看容器日誌
  •   kubectl logs -l key=value

其餘編輯器


  • # 檢查認證受權
  • kubectl auth

  • # 用於實現kubectl工具自動補全
  • kubectl completion

  • # 執行實現自動補全動做
  • source <(kubectl completion bash)

  • # 打印受支持的API版本
  • kubectl api-versions

  • # 全部命令幫助。
  • kubectl help

  • # 運行一個命令行插件。
  • kubectl plugin

  • # 打印客戶端和服務版本信息
  • kubectl version

 

# kubernetes官網ide

https://kubernetes.io/工具

 

# kubernetes官方文檔其餘命令spa

https://v1-8.docs.kubernetes.io/docs/reference/generated/kubectl/kubectl-commands插件

相關文章
相關標籤/搜索