~~~
# 列出所有命名空間中的全部部署
kubectl get deployments --all-namespace=true
~~~
~~~
# 列出特定命名空間中的所有部署
# 格式:kubectl get deployments --namespace <namespace-name>
kubectl get deployments --namespace kube-system
~~~
~~~
# 列出有關特定部署的詳細信息
# 格式:kubectl describe deployment <deployment-name> --namespace <namespace-name>
kubectl describe deployment my-dep --namespace kube-system
~~~
~~~
# 使用特定標簽列出 Pod
# 格式:kubectl get pods -l <label-key>=<label-value> --all-namespaces=true
kubectl get pods -l app=nginx --all-namespaces=true
~~~
~~~
# 獲取具有特定標簽的所有 Pod 的日志
# 格式:kubecl logs -l <label-key>=<label-value>
kubectl logs -l app=nginx --namespace kube-system
~~~
~~~
kubectl scale --replicas=5 deployment/azure-vote-front
kubectl apply -f 指定網絡文件
~~~
~~~
resources:
requests:
cpu: 250m
limits:
cpu: 500m
~~~
下面的示例使用\[kubectl autoscale\]命令自動縮放*azure-vote-front*部署中的 Pod 數。如果所有 Pod 的平均 CPU 利用率超過其請求使用率的 50%,則自動縮放程序會將 Pod 增加到最多*10*個實例。為部署定義的最小實例數為*3*
kubectl autoscale deployment azure-vote-front --cpu-percent=50 --min=3 --max=10
kubectl get hpa
節點數增加到三個
az aks scale --resource-group myResourceGroup --name myAKSCluster --node-count 3
Kubernetes 群集分為兩個組件:
* 控制平面節點提供 Kubernetes 核心服務和應用程序工作負載的業務流程。
* 節點運行應用程序工作負荷。

控制平面包括以下 Kubernetes 核心組件:
* kube-apiserver - API 服務器,用于公開基礎 Kubernetes API。此組件為管理工具(如`kubectl`或 Kubernetes 儀表板)提供交互。
* etcd - 可維護 Kubernetes 群集和配置的狀態,高可用性 etcd 是 Kubernetes 中的鍵值存儲。
* kube-scheduler - 創建或縮放應用程序時,計劃程序可確定哪些節點可以運行工作負荷并啟動這些節點。
* kube-controller-manager - 控制器管理器可監視許多較小的控制器,這些控制器執行 Pod 復制和節點處理等操作。
* StatefulSet - 維護超出單個 Pod 生命周期的應用程序的狀態(如存儲)。
* DaemonSet - 確保在 Kubernetes 啟動進程早期每個節點上都有正在運行的實例

### 縮放事件的冷卻時間
由于水平 Pod 自動縮放程序每 30 秒檢查一次指標 API,因此在進行另一次檢查之前,先前的縮放事件可能尚未成功完成。此行為可能導致水平 Pod 自動縮放程序會在上一個縮放事件能夠接收應用程序工作負荷且需要對資源進行相應調整之前更改副本數。
若要最大程度地減少爭用事件,請設置延遲值。此值定義水平 Pod 自動縮放程序在一個縮放事件之后必須等待多長時間才能觸發另一個縮放事件。此行為允許新副本計數生效,指標 API 反映分布式工作負荷。[從 Kubernetes 1.12 開始,縱向擴展事件沒有延遲](https://kubernetes.io/docs/tasks/run-application/horizontal-pod-autoscale/#support-for-cooldown-delay),但是縱向縮減事件的延遲默認為 5 分鐘。
目前,無法從默認值調整這些冷卻時間值。
使用kubectl get sc命令查看預先創建的存儲類。
## 創建永久性卷聲明
該聲明請求名為`azure-managed-disk`、大小為*5 GB*、具有*ReadWriteOnce*訪問權限的磁盤。*managed-premium*存儲類指定為存儲類。
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: azure-managed-disk
spec:
accessModes:
* ReadWriteOnce
storageClassName: managed-premium
resources:
requests:
storage: 5Gi
提示
若要創建使用標準存儲的磁盤,請使用`storageClassName: default`而不是*managed-premium*。
## 使用永久性卷
## 備份永久性卷
首先,使用`kubectl get pvc`命令獲取卷名稱,
## 還原并使用快照
## 創建永久性卷聲明
永久性卷聲明 (PVC)
## 使用永久性卷
- 文章翻譯
- Large-scale cluster management at Google with Borg
- Borg Omega and kubernetes
- scaling kubernetes to 7500 nodes
- bpf 的過去,未來與現在
- Demystifying Istio Circuit Breaking
- 知識圖譜
- skill level up graph
- 一、運維常用技能
- 1.0 Vim (編輯器)
- 1.1 Nginx & Tengine(Web服務)
- 基礎
- 1.2 zabbix
- 定義
- 登錄和配置用戶
- 1.3 RabbitMQ(消息隊列)
- 原理
- RabbitMQ(安裝)
- 1.4虛擬化技術
- KVM
- 1.5 Tomcat(Web中間件)
- 1.6Jenkins
- pipline
- 1.7 Docker
- network
- 1.8 Keepalived(負載均衡高可用)
- 1.9 Memcache(分布式緩存)
- 1.10 Zookeeper(分布式協調系統)
- 1.11 GitLab(版本控制)
- 1.12 Jenkins(運維自動化)
- 1.13 WAF(Web防火墻)
- 1.14 HAproxy負載均衡
- 1.15 NFS(文件傳輸)
- 1.16 Vim(編輯器)
- 1.17 Cobbler(自動化部署)
- 二、常用數據庫
- 2.1 MySQL(關系型數據庫)
- mysql主從復制
- 2.2 Mongodb(數據分析)
- 2.3 Redis(非關系數據庫)
- 三、自動化運維工具
- 3.1 Cobbler(系統自動化部署)
- 3.2 Ansible(自動化部署)
- 3.3 Puppet(自動化部署)
- 3.4 SaltStack(自動化運維)
- 四、存儲
- 4.1 GFS(文件型存儲)
- 4.2 Ceph(后端存儲)
- 五、運維監控工具
- 5.1 云鏡
- 5.2 ELK
- 六、運維云平臺
- 6.1 Kubernetes
- 6.2 OpenStack
- 介紹
- 安裝
- 七、Devops運維
- 7.1 理念
- 7.2 Devops運維實戰
- 八、編程語言
- 8.1 Shell
- 書籍《Wicked Cool Shell Scripts》
- 8.2 Python
- 8.3 C
- 8.4 Java
- leecode算法與數據結構
- 九、雜記
- 高優先級技能
- 知識點
- JD搜集
- 明顯的短板
- 1.0 Python
- 1.1 Kubernetes
- 1.18.2 《kubernetes in action》
- 遺漏知識點
- 1.18.3 GCP、azure、aliyun
- Azure文檔
- 1.18.5 《program with kubernetes》
- Istio
- HELM
- 《Kubernetes best practice》
- Kubernetes源碼學習
- Scheduler源碼
- 調度器入口
- 調度器框架
- Node篩選算法
- Node優先級算法
- pod搶占調度
- 入口
- 主要代碼結構
- new
- 文章翻譯
- Flannel
- 從二進制集群搭建
- 信息收集
- docker優化
- 1.2 shell
- 面試題
- grep awk sed 常見用法
- shell實踐
- 1.3 Data structure(數據結構)
- Calico
- Aliyun文檔以及重點模塊
- git
- 大數據組件
- 前端,后端,web框架
- cgroup,namespace
- 內核
- Linux搜集
- crontab
- centos7常用優化配置
- centos Mariadb
- eBPF
- ebpf的前世今生
- Linux性能問題排查與分析
- 性能分析搜集
- 性能分析常用10條
- 網絡性能優化
- 文本處理命令
- sql
- Iptables
- python面試題
- iptables
- iptables詳細
- zabbix面試題,proj
- prometheus
- web中間件
- nginx
- Haproxy
- grep sed awk
- Linux常用命令
- 云平臺
- 書籍Linux應用技巧
- kafka
- kafka面試題
- ETCD
- Jenkins
- 3天補充的點
- K8s源碼
- K8s
- k8s實操
- etcd
- test
- BPF
- PSFTP使用
- StackOverflow問答精選
- 問題
- 我對于學習思考
- 修改ssh超時時間
- 課程目錄
- 運維與運維開發
- The Person
- 個人雜談
- mysql主從復制
- 對于工作的認識與思考