kubernetes,簡稱k8s,是用8代替8個字元「ubernete」而成的縮寫。是乙個開源的,用於管理雲平台中多個主機上的容器化的應用,kubernetes的目標是讓部署容器化的應用簡單並且高效(powerful),kubernetes提供了應用部署,規劃,更新,維護的一種機制。 [1]
傳統的應用部署方式是通過外掛程式或指令碼來安裝應用。這樣做的缺點是應用的執行、配置、管理、所有生存週期將與當前作業系統繫結,這樣做並不利於應用的公升級更新/回滾等操作,當然也可以通過建立虛擬機器的方式來實現某些功能,但是虛擬機器非常重,並不利於可移植性。
新的方式是通過部署容器方式實現,每個容器之間互相隔離,每個容器有自己的檔案系統 ,容器之間程序不會相互影響,能區分計算資源。相對於虛擬機器,容器能快速部署,由於容器與底層設施、機器檔案系統解耦的,所以它能在不同雲、不同版本作業系統間進行遷移。
容器占用資源少、部署快,每個應用可以被打包成乙個容器映象,每個應用與容器間成一對一關係也使容器有更大優勢,使用容器可以在build或release 的階段,為應用建立容器映象,因為每個應用不需要與其餘的應用堆疊組合,也不依賴於生產環境基礎結構,這使得從研發到測試、生產能提供一致環境。類似地,容器比虛擬機器輕量、更「透明」,這更便於監控和管理。
問題排查一 從describe去查詢相應的deploy/pod/rs/svc
[root@k8s-master ~]# kubectl describe po/nginx-f95d765f9-8b6bp
[root@k8s-master ~]# kubectl describe deploy/nginx
[root@k8s-master ~]# kubectl describe svc
問題排查二 從pod的logs日誌排查
[root@k8s-master ~]# kubectl logs nginx-f95d765f9-cfm6d
問題排查三 進入pod檢視應用排查
[root@k8s-master ~]# kubectl exec -it nginx-f95d765f9-cfm6d bash
root@nginx-f95d765f9-cfm6d:/# ps -ef
K8S節點狀態NotReady問題解決
前言 記錄節點notready 由於證書過期導致問題排查過程 問題描述 kubectl get nodes o wide grep notready kubectl describe node node ip message node which was running pod is unrespo...
Scrapy安裝遇到問題解決
win10平台 安裝scrapy遇到一些問題 1.本來使用命令 pip install scrapy2.然而我安裝了py2.x 和 py3.x 版本所有,所以使用該命會報錯,所以使用命令 我python3 為預設版本,py2名稱為python2 python m pip install scrapy...
Apache 啟動遇到問題解決
解決httpd could not reliably determine the server s fully qualified domain name 將裡面的 servername localhost 80 注釋去掉即可。再執行 httpd 然後可以通過瀏覽器訪問 http localhost...