1.iaas 基礎設施即服務
?
公司:服務器購買、建設機房、dns路由器、硬件、存儲...--抽象成服務提供給公司(用戶)使用
2.paas 平臺即服務
在iaas層上進行了更高級層次抽象,iaas提供硬件服務,paas提供基礎軟件服務
3.saas 軟件即服務
釘釘,企業(yè)微信
云原生:
架構:軟件開發(fā)思想(軟件架構思想)
應用:就是為了讓應用程序(項目、mysql、elasticsearch...)都運行在云上容器中,這樣的技術就叫做云原生
特點:
1.容器化:容器項目部署,起到了隔離的作用
2.微服務:實現(xiàn)原生最好采用微服務架構,微服務按照function拆分后,可以做到高內聚,低耦合,實現(xiàn)CI/CD
3.devops
開發(fā)+運維-開發(fā)運維的結合體。Devops是一種敏捷思維,開發(fā)一種組織形式
4.CI/CD
持續(xù)交付:不停機更新
云擴展思維:
caas container as a service
faas function as a service 函數(shù)即服務
service mesh 服務網(wǎng)格架構 服務治理-服務限流-服務降級-服務監(jiān)控 istio
serverless 無服務架構,是指程序員開發(fā)不需要關系服務器的事情,只需要開發(fā)業(yè)務代碼即可
如何云原生?
本地部署應用可能需要停機更新,而云原生就不需要,始終是最新的狀態(tài),支持頻繁的變更
本地部署應用無法進行動態(tài)擴展(動態(tài)伸縮容),云原生可以利用云資源的彈性進行自動伸縮容,從而為企業(yè)降本增效
本地部署應用對物理硬件ip,網(wǎng)絡端口有強依賴,云原生就不需要了
本地部署需要人肉運維,云原生實現(xiàn)自動化運維
容器編排技術:
為什么要管理容器(虛擬機)?
怎么擴容?(自動)
容器宕機了,怎么恢復?(自動)
更新容器會不會影響業(yè)務?(不影響)
如何監(jiān)控?(自動)
如何調度?(自動)
數(shù)據(jù)安全(自動)
2.容器編排技術
2.1 docker-compose
docker-compose組件可以批量的創(chuàng)建容器,管理容器,粗顆粒度
2.2 swarm
swarm容器編排工具是docker公司自己的開發(fā),但是docker公司自己都不使用,docker使用的kubernetes:kubernetes采用pod和label這樣的概念把容器組合成一個個互相存在依賴關系的邏輯單元,相關容器被組合成pod后被共同部署和調度,形成服務。
kubernetes基本結構:
? ? ? ? 1.master節(jié)點 :負責調度,存儲集群狀態(tài)(服務注冊發(fā)現(xiàn)),提供統(tǒng)一api入口,一個master對應一群node節(jié)點
? ? ? ? 2.node節(jié)點:node節(jié)點存儲pod(pod內部封裝容器),一個node節(jié)點理論上可以存儲無數(shù)個pod,但是node節(jié)點存儲pod的數(shù)量受限于硬件資源的限制,同時受限于內部服務器運行所占用的資源
3.kubernetes
borg系統(tǒng)。kubernetes也是google公司開發(fā)的,架構設計思想是參考borg系統(tǒng)來架構設計的
發(fā)送請求:kubectl 客戶端指令,瀏覽器(可視化方式 rancher,dashboard)
master節(jié)點 :schedule調度器,負責計算該把pod調度到哪一個node節(jié)點
contollers: 控制器,負責維護node節(jié)點資源對象
apiServer:網(wǎng)關,所有請求都必須要經(jīng)過網(wǎng)關
etcd 服務發(fā)現(xiàn),注冊。集群狀態(tài)信息,調度信息
node節(jié)點 每一個node節(jié)點都運行一個kubelet進程,此進程負責本機服務的pod創(chuàng)建
pod是k8s管理的最小基本單元,pod內部可以運行一個或多個容器,一般情況下,pod內部只允許一個容器運行,便于管理
docker:docker引擎,pod內部運行的都是容器,這個容器是由docker引擎創(chuàng)建的,docker引擎是node節(jié)點基礎服務
kubelet:node節(jié)點代理,kubelet代理master節(jié)點請求,在本地node節(jié)點執(zhí)行
kube-proxy:網(wǎng)絡代理,主要用來生成網(wǎng)絡規(guī)則,創(chuàng)建訪問路由,創(chuàng)建service網(wǎng)絡訪問規(guī)則,負責均衡規(guī)則
fluentd:日志,日志收集
master節(jié)點
apiserver:集群的統(tǒng)一入口,各組件協(xié)調者,以http api 提供接口服務,所有對象資源的增刪改查和監(jiān)聽操作都交給apiserver處理后再提交給etcd存儲
manager controller:
? ? ? ? replication controller:副本控制器
? ? ? ? service cotroller:管理維護service(虛擬ip),提供負載以及服務代理
? ? ? ? endpoints controller: 管理維護endpoints,關聯(lián)service和pod
? ? ? ? persistent volumn controller: 持久化數(shù)據(jù)卷控制器
? ? ? ? daemon set controller:讓每一個node節(jié)點都運行相同的服務
? ? ? ? deployment controller:無狀態(tài)部署服務
4.scheduler
創(chuàng)建pod的流程:
? ? ? ? 1.kubctl發(fā)送創(chuàng)建pod的指令,此時這個指令被apiserver攔截,把創(chuàng)建的pod存儲在etcd
? ? ? ? 2.scheduler發(fā)起調用請求,此時這個指令被spiserver攔截,獲取etcd中的podQueue NodeList
? ? ? ? 調度算法:預選調度,優(yōu)選策略
3.把選擇合適的node、pod存儲在etcd
4.node節(jié)點上有一個kubelet進程,發(fā)送請求獲取pod,node對應創(chuàng)建資源文章來源:http://www.zghlxwxcb.cn/news/detail-462604.html
5.? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?文章來源地址http://www.zghlxwxcb.cn/news/detail-462604.html
到了這里,關于(二)云原生&k8s的架構及基本組件原理的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!