国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

深入微服務架構(gòu) | 微服務與k8s架構(gòu)解讀

這篇具有很好參考價值的文章主要介紹了深入微服務架構(gòu) | 微服務與k8s架構(gòu)解讀。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

微服務項目架構(gòu)解讀

① 什么是微服務?

微服務是指開發(fā)一個單個小型的但有業(yè)務功能的服務,每個服務都有自己的處理和輕量通訊機制,可以部署在單個或多個服務器上。

微服務也指一種種松耦合的、有一定的有界上下文的面向服務架構(gòu)。也就是說,如果每個服務都要同時修改,那么它們就不是微服務,因為它們緊耦合在一起;如果你需要掌握一個服務太多的上下文場景使用條件,那么它就是一個有上下文邊界的服務,這個定義來自DDD領域驅(qū)動設計。

它的主要特點是組件化、松耦合、自治、去中心化,體現(xiàn)在以下幾個方面:

一組小的服務

服務粒度要小,而每個服務是針對一個單一職責的業(yè)務能力的封裝,專注做好一件事情。

獨立部署運行和擴展

每個服務能夠獨立被部署并運行在一個進程內(nèi)。這種運行和部署方式能夠賦予系統(tǒng)靈活的代碼組織方式和發(fā)布節(jié)奏,使得快速交付和應對變化成為可能。

獨立開發(fā)和演化

技術選型靈活,不受遺留系統(tǒng)技術約束。合適的業(yè)務問題選擇合適的技術可以獨立演化。服務與服務之間采取與語言無關的API進行集成。相對單體架構(gòu),微服務架構(gòu)是更面向業(yè)務創(chuàng)新的一種架構(gòu)模式。

獨立團隊和自治

團隊對服務的整個生命周期負責,工作在獨立的上下文中,自己決策自己治理,而不需要統(tǒng)一的指揮中心。團隊和團隊之間通過松散的社區(qū)部落進行銜接。

我們可以看到整個微服務的思想就如我們現(xiàn)在面對信息爆炸、知識爆炸是一樣的:通過解耦我們所做的事情,分而治之以減少不必要的損耗,使得整個復雜的系統(tǒng)和組織能夠快速的應對變化。

② 微服務的優(yōu)點

每個微服務都很小,這樣能聚焦一個指定的業(yè)務功能或業(yè)務需求。

微服務能夠被小團隊單獨開發(fā),這個小團隊是2到5人的開發(fā)人員組成。

微服務是松耦合的,是有功能意義的服務,無論是在開發(fā)階段或部署階段都是獨立的。

微服務能使用不同的語言開發(fā)。

微服務允許容易且靈活的方式集成自動部署,通過持續(xù)集成工具,如Jenkins, bamboo 。

一個團隊的新成員能夠更快投入生產(chǎn)。

微服務易于被一個開發(fā)人員理解,修改和維護,這樣小團隊能夠更關注自己的工作成果。無需通過合作才能體現(xiàn)價值。

微服務允許你利用融合最新技術。

微服務只是業(yè)務邏輯的代碼,不會和HTML,CSS 或其他界面組件混合。

微服務能夠即時被要求擴展。

微服務能部署中低端配置的服務器上。

易于和第三方集成。

每個微服務都有自己的存儲能力,可以有自己的數(shù)據(jù)庫。也可以有統(tǒng)一數(shù)據(jù)庫

k8s集群架構(gòu)解讀

① 什么是kubernetes

Kubernetes(k8s)是Google開源的容器集群管理系統(tǒng)(谷歌內(nèi)部:Borg)。在Docker技術的基礎上,為容器化的應用提供部署運行、資源調(diào)度、服務發(fā)現(xiàn)和動態(tài)伸縮等一系列完整功能,提高了大規(guī)模容器集群管理的便捷性。Kubernetes優(yōu)勢:

容器編排

輕量級

開源

彈性伸縮

負載均衡? ?

② Kubernetes架構(gòu)和組件

深入微服務架構(gòu) | 微服務與k8s架構(gòu)解讀,軟件測試,架構(gòu),微服務,kubernetes,功能測試,軟件測試,自動化測試,職場和發(fā)展

?主從分布式架構(gòu),Master/Node

  • 服務分組,小集群,多集群

  • 服務分組,大集群,單集群

Kubernetes Master / Node : 如果大家對諸如hadoop這樣的分布式集群有所了解,就會發(fā)現(xiàn)k8s的設計理念和其他分布式架構(gòu)的非常類似的:Master節(jié)點負責接收用戶的指令、分配任務以及記錄各個node的情況;而node節(jié)點負責接收Master的指令,啟動相應的Pod(k8s的最小執(zhí)行單元,是一個Container的集合)

安裝k8s時會指定Master和Node節(jié)點,部署好之后,我們通過k8s的api與Master節(jié)點進行交互。Master節(jié)點收到了我們的指令(比如新啟動一個Pod),會調(diào)度Node節(jié)點去完成它們。當然,其中底層的調(diào)度策略、具體的實現(xiàn)細節(jié)對于我們使用者來說都是隱蔽的,不需要我們?nèi)チ私狻?/p>

master工作流程圖

深入微服務架構(gòu) | 微服務與k8s架構(gòu)解讀,軟件測試,架構(gòu),微服務,kubernetes,功能測試,軟件測試,自動化測試,職場和發(fā)展

Kubecfg將特定的請求,比如創(chuàng)建Pod,發(fā)送給Kubernetes Client。

Kubernetes Client將請求發(fā)送給API server。

API Server根據(jù)請求的類型,比如創(chuàng)建Pod時storage類型是pods,然后依此選擇何種REST Storage API對請求作出處理。

REST Storage API對的請求作相應的處理。

將處理的結(jié)果存入高可用鍵值存儲系統(tǒng)Etcd中。

在API Server響應Kubecfg的請求后,Scheduler會根據(jù)Kubernetes Client獲取集群中運行Pod及Minion/Node信息。

依據(jù)從Kubernetes Client獲取的信息,Scheduler將未分發(fā)的Pod分發(fā)到可用的Minion/Node節(jié)點上。

Kubernetes Node運行節(jié)點,運行管理業(yè)務容器,包含如下組件:

1.Kubelet負責管控容器,Kubelet會從Kubernetes API Server接收Pod的創(chuàng)建請求,啟動和停止容器,監(jiān)控容器運行狀態(tài)并匯報給Kubernetes API Server。

2.Kubernetes Proxy負責為Pod創(chuàng)建代理服務,Kubernetes Proxy會從Kubernetes API Server獲取所有的Service信息,并根據(jù)Service的信息創(chuàng)建代理服務,實現(xiàn)Service到Pod的請求路由和轉(zhuǎn)發(fā),從而實現(xiàn)Kubernetes層級的虛擬轉(zhuǎn)發(fā)網(wǎng)絡。

3.DockerNode上需要運行容器服務。

Kubelet[節(jié)點上的Pod管家]

負責Node節(jié)點上pod的創(chuàng)建、修改、監(jiān)控、刪除等全生命周期的管理 定時上報本Node的狀態(tài)信息給API Server。

kubelet是Master API Server和Minion/Node之間的橋梁,接收Master API Server分配給它的commands和work,通過kube-apiserver間接與Etcd集群交互,讀取配置信息。

具體的工作如下:

設置容器的環(huán)境變量、給容器綁定Volume、給容器綁定Port、根據(jù)指定的Pod運行一個單一容器、給指定的Pod創(chuàng)建network 容器。

同步Pod的狀態(tài)、同步Pod的狀態(tài)、從cAdvisor獲取container info、 pod info、 root info、 machine info。

在容器中運行命令、殺死容器、刪除Pod的所有容器。

③ k8s常用命令

創(chuàng)建資源:

kubectl create -f yaml文件

查看資源:

kubectl get <resource_type>
# 比如獲取K8s集群下pod的信息
kubectl get pod
# 更加詳細的信息
kubectl get pod -o wide
#獲取pod更詳盡的狀態(tài)信息
kubectl describe pod pod名稱
#查看所有的nodes
kubectl get nodes
#查看所有的namespace
kubectl get pod --all-namespaces

替換資源:

kubectl?replace?-f?yaml文件

刪除資源:

kubectl?replace?-f?yaml文件

查看日志:

kubectl logs pod名稱
#如果想動態(tài)查看日志加-f

最后感謝每一個認真閱讀我文章的人,禮尚往來總是要有的,雖然不是什么很值錢的東西,如果你用得到的話可以直接拿走:

深入微服務架構(gòu) | 微服務與k8s架構(gòu)解讀,軟件測試,架構(gòu),微服務,kubernetes,功能測試,軟件測試,自動化測試,職場和發(fā)展

這些資料,對于【軟件測試】的朋友來說應該是最全面最完整的備戰(zhàn)倉庫,這個倉庫也陪伴上萬個測試工程師們走過最艱難的路程,希望也能幫助到你!

深入微服務架構(gòu) | 微服務與k8s架構(gòu)解讀,軟件測試,架構(gòu),微服務,kubernetes,功能測試,軟件測試,自動化測試,職場和發(fā)展文章來源地址http://www.zghlxwxcb.cn/news/detail-752486.html

到了這里,關于深入微服務架構(gòu) | 微服務與k8s架構(gòu)解讀的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • Kubernetes (K8s) 解讀:微服務與容器編排的未來

    Kubernetes (K8s) 解讀:微服務與容器編排的未來

    ???? 博主貓頭虎(????)帶您 Go to New World??? ????貓頭虎建議程序員必備技術棧一覽表??: ??? 全棧技術 Full Stack : ?? MERN/MEAN/MEVN Stack | ?? Jamstack | ?? GraphQL | ?? RESTful API | ? WebSockets | ?? CI/CD | ?? Git Version Control | ?? DevOps ?? 前端技術 Frontend : ??? HTML CSS |

    2024年02月09日
    瀏覽(33)
  • 微服務應用視角解讀如何選擇K8S的彈性策略

    微服務應用視角解讀如何選擇K8S的彈性策略

    微服務架構(gòu)的出現(xiàn),拆分了龐大的單體應用,讓業(yè)務之間的開發(fā)與協(xié)作變得更加靈活。當面臨業(yè)務流量增加的場景時,往往需要對一些應用組件進行擴容。K8S在應用層面提供了HPA,圍繞HPA開源社區(qū)延伸出了KEDA這樣的彈性組件,為微服務應用以業(yè)務指標執(zhí)行彈性策略提供了實現(xiàn)

    2024年02月02日
    瀏覽(16)
  • 深入探討Kubernetes(K8s)在云原生架構(gòu)中的關鍵作用和應用

    深入探討Kubernetes(K8s)在云原生架構(gòu)中的關鍵作用和應用

    ??個人主頁:程序員 小侯 ??CSDN新晉作者 ??歡迎 ??點贊?評論?收藏 ?收錄專欄:云計算 ?文章內(nèi)容:Kubernetes(K8s) ??希望作者的文章能對你有所幫助,有不足的地方請在評論區(qū)留言指正,大家一起學習交流!?? 隨著云原生應用程序的興起,Kubernetes(通常稱為K8s)

    2024年02月09日
    瀏覽(86)
  • 云原生之深入解析K8s中的微服務項目設計與實現(xiàn)

    云原生之深入解析K8s中的微服務項目設計與實現(xiàn)

    ① 微服務設計的思想 一個單片應用程序?qū)⒈粯?gòu)建、測試并順利地通過這些環(huán)境。事實證明,一旦投資于將生產(chǎn)路徑自動化,那么部署更多的應用程序似乎就不再那么可怕了。請記住,CD的目標之一就是讓部署變得無聊,所以無論是一個應用程序還是三個應用程序,只要它仍然

    2024年02月03日
    瀏覽(92)
  • 【K8S系列】深入解析K8S監(jiān)控

    【K8S系列】深入解析K8S監(jiān)控

    做一件事并不難,難的是在于堅持。堅持一下也不難,難的是堅持到底。 文章標記顏色說明: 黃色 :重要標題 紅色 :用來標記結(jié)論 綠色 :用來標記論點 藍色 :用來標記論點 Kubernetes (k8s) 是一個容器編排平臺,允許在容器中運行應用程序和服務。今天學習一下k8s監(jiān)控相關

    2024年02月12日
    瀏覽(94)
  • 【K8S系列】深入解析K8S存儲

    【K8S系列】深入解析K8S存儲

    做一件事并不難,難的是在于堅持。堅持一下也不難,難的是堅持到底。 文章標記顏色說明: 黃色 :重要標題 紅色 :用來標記結(jié)論 綠色 :用來標記一級論點 藍色 :用來標記二級論點 Kubernetes (k8s) 是一個容器編排平臺,允許在容器中運行應用程序和服務。今天學習一下

    2024年02月11日
    瀏覽(18)
  • 【K8S系列】深入解析k8s網(wǎng)絡

    【K8S系列】深入解析k8s網(wǎng)絡

    你只管努力,其他交給時間,時間會證明一切。 文章標記顏色說明: 黃色 :重要標題 紅色 :用來標記結(jié)論 綠色 :用來標記一級論點 藍色 :用來標記二級論點 Kubernetes (k8s) 是一個容器編排平臺,允許在容器中運行應用程序和服務。今天學習一下k8s網(wǎng)絡相關的內(nèi)容 希望這篇

    2024年02月03日
    瀏覽(18)
  • 【K8S系列】深入解析K8S調(diào)度

    【K8S系列】深入解析K8S調(diào)度

    做一件事并不難,難的是在于堅持。堅持一下也不難,難的是堅持到底。 文章標記顏色說明: 黃色 :重要標題 紅色 :用來標記結(jié)論 綠色 :用來標記論點 藍色 :用來標記論點 Kubernetes (k8s) 是一個容器編排平臺,允許在容器中運行應用程序和服務。今天學習一下k8s調(diào)度相關

    2024年02月11日
    瀏覽(16)
  • k8s 系列之 CoreDNS 解讀

    k8s 系列之 CoreDNS 解讀

    kuberntes 中的 pod 基于 service 域名解析后,再負載均衡分發(fā)到 service 后端的各個 pod 服務中,如果沒有 DNS 解析,則無法查到各個服務對應的 service 服務 基于環(huán)境變量的方式 基于內(nèi)部域名的方式 DNS策略,在Pod,Deployment RC等資源設置 dnsPolicy None 用于想要自定義 DNS 配置的場景,

    2024年02月06日
    瀏覽(32)
  • 【K8S】docker和K8S(kubernetes)理解?docker是什么?K8S架構(gòu)、Master節(jié)點 Node節(jié)點 K8S架構(gòu)圖

    【K8S】docker和K8S(kubernetes)理解?docker是什么?K8S架構(gòu)、Master節(jié)點 Node節(jié)點 K8S架構(gòu)圖

    一、docker的問世 ????????在LXC(Linux container)Linux容器虛擬技術出現(xiàn)之前,業(yè)界網(wǎng)紅是虛擬機。虛擬機技術的代表,是VMWare和OpenStack。 虛擬機是什么? ????????虛擬機其實就是 在你的操作系統(tǒng)里面,裝一個軟件,然后通過這個軟件,再模擬一臺甚至多臺“子電腦”出來。

    2024年03月26日
    瀏覽(36)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包