AKS Azure Kubernetes部署及查看應用資源( 二 )

AKS Azure Kubernetes部署及查看應用資源
文章插圖
連接Kubernetes1、 進入Microsoft Azure 管理頁面,并選擇創建的Kubernetes 服務 。
2、 選擇概述頁面、點擊點擊連接會出現以下界面
 

AKS Azure Kubernetes部署及查看應用資源

文章插圖
3、 打開Windows CMD命令窗口輸入az login,并且在彈出的登錄頁面進行登錄驗證(注意Azure 是國內版還是國外版的,需要對應切換環境) 。
4、 輸入第2步的兩個連接命令,依次輸入 。
5、 輸入kubectl get pods -n <命名空間名>來查詢pod信息 。
 
AKS Azure Kubernetes部署及查看應用資源

文章插圖
查看Pod描述和日志【AKS Azure Kubernetes部署及查看應用資源】上面我們講了怎么連接到Azure Kubernetes服務并且查詢Pods信息,下面我們看下怎么查看Pod更具體的信息來分析Pod狀態 。
在應用部署的時候,特別是在最開始的時候,特別容易碰到部署不成功的情況 。例如Pod出現ErrImagePull或者ImagePullBackOff、或者出現CrashLoopBackOff等等,那么我們就需要查詢Pod的描述或者日志等等來定位到錯誤信息 。
1、 保持上面的kubernetes 連接,并且在CMD里面輸入kubectl describe pod <pod名稱>  -n <命名空間名稱>查看描述
2、 Kubectl logs -f  <pod名稱> -n <命名空間名稱> 查看日志
例如我這里部署一個demo,鏡像配置一個不存在的鏡像 。就會出現ImagePullBackOff的都問題,我們可以查看描述
 
AKS Azure Kubernetes部署及查看應用資源

文章插圖

AKS Azure Kubernetes部署及查看應用資源

文章插圖
例如對于CrashLoopBackOff的情況一般是啟動后又失敗了 , 這時候我們可能更需要查看log日志來定位信息了,一般問題是在程序啟動時報錯 。例如數據庫連接、redis連接、接入第三方連接報錯等等
查看資源消耗情況上面我們看了怎么查詢定位應用部署中遇到的問題,現在我們來看看在應用運行中可能會遇到那些問題 。在程序運行中可能會遇到部署的程序資源耗盡然后導致Pod假死或者重啟的情況、也有可能怎么節點甚至是Kubernetes服務資源耗盡的情況 。這次我們主要針對如何查詢資源信息 。
1、 查詢node 資源情況 。Kubectl top node
2、 查詢Pod資源情況kubectl top pod -n <命名空間名稱>
在Kubernetes服務中心部署可以使用自帶的負載均衡 。第一種情況是節點池資源充足,但是對應Pod的資源消耗殆盡甚至超過了 。這就是在配置Pod的yaml文件中的資源限制配置問題了 。yaml文件中resources配置中的requests最低需求和limits最大限制 。第二種就是node節點的資源直接消耗殆盡了 。一般這時候就需要看看是否需要增加配置,同時也需要檢查應用程序,再看看具體是CPU還是內存了 , 是否有代碼造成了內存泄漏 。優化長時間處理的代碼 。
進入Pod中查看文件進入Pod的命令kubectl exec -ti <Pod名稱>-n <> sh 。跟進入docker鏡像內部相似進入進去后輸入ls命令發現其實就是打包之前的應用程序 。
AKS Azure Kubernetes部署及查看應用資源

文章插圖
生命不息、戰斗不止!


推薦閱讀