k8s入門
廢話有點多,前天我生日,這是我寫過最帥的程式碼!這篇文章讚賞超過 100 多,感謝大家的支援和認可。我繼續努力,爭取把我所學到的,見到的都後續分享出來,能有幫助就好。我本身就是個念舊的人,身上的錢包從大二開始到現在用了8年左右沒換過,媳婦還給我送了一個錢包,大概是希望繼續在多多賺錢吧。。
因為最近工作中需要用到k8s,基本白天去公司實操,晚上回來看書。一口氣買了兩本技術類書籍。今天就把我所學到的分享給大家,對不起,久等了。
記得入職當天,因為我們組就 3 個人。負責公司的 k8s 叢集架構。責任比較重大,一旦環境出問題,意味著所有的開發和測試都要歇菜休息,大家想想出問題了,他們肯定不願意,白天浪費太多的時間意味著他們都要晚上加班。要擱我身上,我也不願意。
有讀者問什麼是 k8s? 用來幹什麼的?這個逼格有那麼高嗎?
k8s其實是一個編排工具,在容器也就是 docker 的基礎之上去管理軟體應用生命週期的一個工具,主要執行在 linux 上。說到這裡得插入一個有趣得題外話題:公司有一個測試妹子,沒用過 linux ,不知道如何去連結 linux ,不知道如何在 linux上去解壓安裝包。同事抓住了機會又調侃了一把測試妹子,說『跑著去啊,右鍵解壓就可以了』。結果妹子去照做了,每成功。我估計他們接下來有戲了。所以多學習還是有好處的。從建立應用——應用部署——提供服務——擴容縮容——應用迭代等一系列流程全部是由它管理的。不用像傳統的行業,在升級或者故障切換時還需要去停業務或者停止資料庫,可以做到快速切換升級,不停止用用。
k8s叢集
叢集,為什麼要使用叢集? 說白了,三個臭皮匠頂個諸葛亮,眾人的力量大呀。一根筷子一下就掰斷了,多根筷子使勁也很難把它掰斷。這個就是機群的作用,你壞了我上,我壞了你上。理解之後沒什麼難的。看上去名字很唬人,實際上也就是那麼一回事。
k8s概念
這個就跟學習資料庫是一樣的,首先理解資料庫能幹什麼?由哪些東西組成。比如它是存客戶業務資料的,由表、表空間等等一些東西組成。在k8s中有這麼一些概念:cluster、Master、Node、Pod、Rc、Service、Namespace以及yaml檔案、helm包、kube-proxy等等。本身就是一個分散式高可用的東西。
-
cluster。它是計算、儲存、網路資源的整合。k8s利用這些資源去執行各種基於容器的應用。
-
Master。叢集主節點,這個相當於人的大腦,我們的一切行為都是大腦去調配。它主要負責分配和排程任務。決定將應用放在哪裡去執行。Master執行與 linux 上,可以使物理機也可以是虛擬機器。為了可以實現高可用,可以部署多個Master節點。
-
Node。它的職責是聽從Master的調配並負責容器 docker 的應用。Node由Master管理,去負責監控並彙報容器的狀態,同時根據 Master的要求去管理容器的生命週期。它也是執行在 linux 上,可以是物理機也可以是虛擬機器。
-
Pod。Pod是k8s排程的最小單元。每一個Pod包含一個或多個容器。pod中的容器會作為一個整體被Master排程到一個node上執行。
-
rc控制檔案。主要用來管理配置。
-
service。顧名思義提供服務的,想要跑起來非得靠它不可。
-
Namespace。其實就類似於資料庫中有多個使用者,建立了30個檢視,每個檢視需要分配給不同的使用者,並同時將他們的資源切割開來。便於管理。
-
helm包。k8s用來打包的工具。其實就類似與debian、烏班圖得apt,紅帽和centos上的 yum 倉庫一樣。而helm就是 k8s 上的包管理工具。
-
kube-proxy。它得作用主要用來做負載均衡功能。什麼叫負載均衡?比如這裡有 180 斤 土豆,大家平均分配哈,要不然兩個人背了 30 斤,你讓剩下的那個人情以何堪呀?
k8s常用命令
# 檢視叢集資訊
kubectl cluster-info
# 檢視各元件資訊
kubectl -s http://localhost:8080 get componentstatuses
# 檢視pods所在的執行節點
kubectl get pods -o wide
# 檢視pods定義的詳細資訊
kubectl get pods -o yaml
# 檢視rc資訊
kubectl get rc
# 檢視service的資訊
kubectl get svc
# 檢視叢集節點資訊
kubectl get nodes
# 建立
kubectl create -f 檔名
# 重建
kubectl replace -f 檔名 [–force]
# 刪除
kubectl delete -f 檔名
kubectl delete pod pod名
kubectl delete rc rc名
kubectl delete service service名
kubectl delete pod –all
docker打映象:
一般在windows上將壓縮包上傳到linux上:
docker -i load + 名稱用來載入;
docker images 用來列出本機上的映象;
給映象打標籤:
docker tag+映象名。
docker push推映象;
docker pull拉映象
三天學習的結果,我爭取繼續努力。平時沒什麼時間去追劇,週六熬夜看了下『沙海』,有人說這部劇不錯,也有人吐槽這部劇結局不太看好。但是給我印象最深刻的是吳三石的那個老師說的那段話「復讀三個月考了六百六十六分,人才啊,你就是老師的驕傲啊,看來老師的努力沒有白費」。你看說話都說的這麼有水平。六百六十六,不就是 666 麼?要我看,這個老師絕b人才啊,有木有?
原文釋出時間為:2018-09-17
本文作者:說點特別的
本文來自雲棲社群合作伙伴“說點特別的”,瞭解相關資訊可以關注“說點特別的”。
相關文章
- Kubernetes(K8s)極速入門K8S
- k8s入門之Secret(十)K8S
- k8s入門之pod(四)K8S
- k8s入門之Deployment(五)K8S
- k8s入門之ConfigMap(九)K8S
- k8s入門之Ingress(七)K8S
- k8s入門之Service(六)K8S
- K8S入門(二) 單機部署K8S
- k8s(00)入門知識介紹K8S
- k8s入門之PV和PVC(八)K8S
- k8s入門你至少需要會哪些K8S
- 入門Kubernetes-minikube本地k8s環境K8S
- 從零開始入門 K8s | K8s 安全之訪問控制K8S
- Kubernetes入門,使用minikube 搭建本地k8s 環境K8S
- k8s從入門到放棄(1):介紹&上手K8S
- 從零開始入門 K8s | 深入剖析 Linux 容器K8SLinux
- 從零開始入門 K8s | Kata Containers 創始人帶你入門安全容器技術K8SAI
- k8s從入門到放棄(2): 縮擴容&更新K8S
- 五分鐘k8s入門到實戰-應用配置K8S
- 零基礎入門雲原生-k8s工具介紹~K8S
- K8s 資源全彙總 | K8s 大咖帶你 31 堂課從零入門 K8sK8S
- 入門入門入門 MySQL命名行MySql
- 對於kubernetes(k8s)入門需要了解的docker基礎K8SDocker
- 寫給大家看的“不負責任” K8s 入門文件K8S
- 寫給大家看的 “不負責任” K8s 入門文件K8S
- 從零開始入門 K8s | 理解 CNI 和 CNI 外掛K8S
- 從零開始入門 K8s | Kubernetes 網路模型進階K8S模型
- 從零開始入門 K8s | 理解 RuntimeClass 與使用多容器K8S
- 【微服務入門】kubernetes是什麼?K8S能幹什麼?微服務K8S
- 從零開始入門 K8s | etcd 效能最佳化實踐K8S
- 從零開始入門 K8s | 手把手帶你理解 etcdK8S
- 從零開始入門 K8s | Kubernetes 網路概念及策略控制K8S
- 從零開始入門 K8s | 理解容器執行時介面 CRIK8S
- 是時候扔掉Prometheus了,VictoriaMetrics全家桶入門與K8S部署PrometheusK8S
- 何入CTF的“門”?——所謂入門就是入門
- 如何入CTF的“門”?——所謂入門就是入門
- 從零開始入門 K8s | 有狀態應用編排 - StatefulSetK8S
- 從零開始入門 K8s | GPU 管理和 Device Plugin 工作機制K8SGPUdevPlugin