摘要:是容器中心自動(dòng)化平臺(tái),它幫助開發(fā)人員構(gòu)建測(cè)試并部署應(yīng)用程序。當(dāng)然,我們使用自身來構(gòu)建并部署到中概述我們是一個(gè)運(yùn)行云原生應(yīng)用的平臺(tái),在隔離上做了很多設(shè)計(jì)決策。我們啟動(dòng),監(jiān)控它的進(jìn)程,并在結(jié)束后銷毀它。
編者按:本文由Wercker CTO Andy Smith 分享,他分享了Kubernetes如何幫助他們節(jié)省時(shí)間并加速開發(fā)。本文是關(guān)于Kubernetes 1.3新功能一系列深入文章的第九篇。
我們?cè)赪ercker運(yùn)行數(shù)百萬容器執(zhí)行用戶的CI/ CD工作。這些容器的生命周期大多是短暫的,構(gòu)建、測(cè)試和部署完成后,這些容器的生命周期隨之結(jié)束。
雖然多數(shù)容器的生命是短暫的,但我們傾向于持續(xù)運(yùn)行我們的基礎(chǔ)設(shè)施。通常情況下我們需要跨多節(jié)點(diǎn)運(yùn)行多個(gè)容器,所以一個(gè)高度可擴(kuò)展的調(diào)度程序就顯得非常有必要。我們決定使用Kubernetes。
Wercker 是容器中心自動(dòng)化平臺(tái),它幫助開發(fā)人員構(gòu)建、測(cè)試并部署應(yīng)用程序。
我們支持任何數(shù)量的pipelines,從代碼構(gòu)建、測(cè)試微服務(wù)間的API協(xié)議、上傳鏡像和部署到調(diào)度器。
所有這些pipeline都運(yùn)行在Docker容器中,而且每個(gè)環(huán)節(jié)都是一個(gè)Docker容器。
當(dāng)然,我們使用Wercker自身來構(gòu)建Wercker并部署到Kubernetes中!
概述我們是一個(gè)運(yùn)行云原生應(yīng)用的平臺(tái),在隔離上做了很多設(shè)計(jì)決策。在底層,我們使用CoreOS和cloud-init 啟動(dòng)一個(gè)異構(gòu)節(jié)點(diǎn)的集群,我把這些節(jié)點(diǎn)命名為Patricians(貴族)、Peasants(農(nóng)民)、 Controller(控制器)。
對(duì)于Controller 節(jié)點(diǎn),也許我們應(yīng)該使用Constables(警察)這個(gè)叫法。
貴族節(jié)點(diǎn)占據(jù)我們基礎(chǔ)設(shè)施的一大部分,這些節(jié)點(diǎn)有適當(dāng)?shù)木W(wǎng)絡(luò)接口與后端服務(wù)通信,同時(shí)還作為各種負(fù)載均衡器的 endpoints。
這些節(jié)點(diǎn)上還運(yùn)行著下面三類服務(wù):
1.日志搜集服務(wù),并發(fā)送到日志服務(wù)
2.很多用于報(bào)告和處理job運(yùn)行結(jié)果的服務(wù)
3.處理API 調(diào)用的微服務(wù)
農(nóng)民節(jié)點(diǎn)用于運(yùn)行公共服務(wù),包括處理job的Pod,它用于從job 隊(duì)列讀取job,并聲稱新的pod以處理job的執(zhí)行。
job 本身是開源CLI工具的化身,你可以用Docker安裝并運(yùn)行在你的筆記本上。
農(nóng)民節(jié)點(diǎn)對(duì)基礎(chǔ)設(shè)施的訪問權(quán)限十分有限,運(yùn)行job的容器也是高度隔離的。
Controllers是控制器,對(duì)于這類節(jié)點(diǎn)的功能,你盡管望文生義就對(duì)了。
動(dòng)態(tài)Pods我們的服務(wù)對(duì)Kubernetes API 有重度依賴,每一個(gè)job啟動(dòng)時(shí),系統(tǒng)都會(huì)動(dòng)態(tài)創(chuàng)建Pod,這個(gè)Pod為job提供了運(yùn)行環(huán)境。
從隊(duì)列中獲取 job 描述后,我們定義了一個(gè)新的 pod,新的Pod 包含執(zhí)行檢查代碼、緩存管理、執(zhí)行job并上傳結(jié)果的相關(guān)環(huán)境。
我們啟動(dòng)pod,監(jiān)控它的進(jìn)程,并在 job 結(jié)束后銷毀它。
Ingresses為了給 HTTP API 提供后端服務(wù),并提供自注冊(cè)功能,我們使用了Kubernetes 的 Ingress 功能。
設(shè)置 Ingress 并不是很簡(jiǎn)單,但是通過閱讀nginx 例子,我們最終發(fā)現(xiàn)了一個(gè)將后端服務(wù)連接到前端的好方法。
1.3 即將發(fā)布的功能盡管我們把pods和容器當(dāng)成是短暫的,并期望它能夠在故障時(shí)快速重啟,同時(shí)我們也期待使用Pet Sets 和Init Containers 優(yōu)化我們的工作流。
對(duì)于Minikube得到官方支持,我們也很欣慰,因?yàn)樗岣吡宋覀兊谋镜販y(cè)試和開發(fā)的效率。
結(jié)論Kubernetes在管理跨節(jié)點(diǎn)的多個(gè)容器時(shí),為我們省掉了大量的關(guān)鍵工作。
它提供了一個(gè)強(qiáng)大的API和工具來查看,包含多內(nèi)置日志支持、度量、監(jiān)控和調(diào)試。
僅服務(wù)發(fā)現(xiàn)和網(wǎng)絡(luò)這兩項(xiàng)就為我們節(jié)省了很多時(shí)間,大大加速了開發(fā)進(jìn)度。
祝 Kubernetes 正式版一周年快樂,也祝愿它越來越好:)。
本文由時(shí)速云翻譯,如若轉(zhuǎn)載,需注明轉(zhuǎn)載自“時(shí)速云”
原文鏈接:http://blog.kubernetes.io/201...
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://www.ezyhdfw.cn/yun/32503.html
摘要:而微服務(wù)架構(gòu)能否成功實(shí)踐,利用各種工具解決潛在問題是關(guān)鍵。因此,微服務(wù)本身可以通過庫和運(yùn)行時(shí)代理解決客戶端服務(wù)發(fā)現(xiàn)負(fù)載均衡配置更新統(tǒng)計(jì)跟蹤等。與相比,解決了更廣的微服務(wù)架構(gòu)問題。和處理了不同范圍的微服務(wù)架構(gòu)技術(shù)點(diǎn),而且是用了不同的方法。 Spring Cloud vs. Kubernetes,誰才是部署微服務(wù)的最佳拍檔? Spring Cloud和Kubernetes都聲稱自己是開發(fā)和...
摘要:容器云將支持應(yīng)用的一鍵式部署交付,提供負(fù)載均衡,私有域名綁定,性能監(jiān)控等應(yīng)用生命周期管理服務(wù)。本容器云平臺(tái),對(duì)接持續(xù)集成發(fā)布系統(tǒng)。 前言 在移動(dòng)互聯(lián)網(wǎng)時(shí)代,新的技術(shù)需要新技術(shù)支持環(huán)境、新的軟件交付流程和IT架構(gòu),從而實(shí)現(xiàn)架構(gòu)平臺(tái)化,交付持續(xù)化,業(yè)務(wù)服務(wù)化。容器將成為新一代應(yīng)用的標(biāo)準(zhǔn)交付件,容器云將幫助企業(yè)用戶構(gòu)建研發(fā)流程和云平臺(tái)基礎(chǔ)設(shè)施??s短應(yīng)用向云端交付的周期,降低運(yùn)營(yíng)門檻。加速向互...
摘要:容器云將支持應(yīng)用的一鍵式部署交付,提供負(fù)載均衡,私有域名綁定,性能監(jiān)控等應(yīng)用生命周期管理服務(wù)。本容器云平臺(tái),對(duì)接持續(xù)集成發(fā)布系統(tǒng)。 前言 在移動(dòng)互聯(lián)網(wǎng)時(shí)代,新的技術(shù)需要新技術(shù)支持環(huán)境、新的軟件交付流程和IT架構(gòu),從而實(shí)現(xiàn)架構(gòu)平臺(tái)化,交付持續(xù)化,業(yè)務(wù)服務(wù)化。容器將成為新一代應(yīng)用的標(biāo)準(zhǔn)交付件,容器云將幫助企業(yè)用戶構(gòu)建研發(fā)流程和云平臺(tái)基礎(chǔ)設(shè)施??s短應(yīng)用向云端交付的周期,降低運(yùn)營(yíng)門檻。加速向互...
摘要:本篇文章將會(huì)結(jié)合網(wǎng)易云信的實(shí)踐經(jīng)驗(yàn),以全局概述的方式帶大家認(rèn)識(shí)點(diǎn)播私有化平臺(tái)構(gòu)建的整體架構(gòu)面貌?;跇?gòu)建點(diǎn)播私有云平臺(tái)在具有以上優(yōu)勢(shì)的同時(shí),還具備資源彈性管理監(jiān)控完善部署簡(jiǎn)易自動(dòng)化維護(hù)等特性。基于構(gòu)建平臺(tái),能夠自由管理創(chuàng)建云主機(jī)。 私有云是為一個(gè)客戶單獨(dú)使用而構(gòu)建的,因而提供對(duì)數(shù)據(jù)、安全性和服務(wù)質(zhì)量的最有效控制。前置條件是客戶擁有基礎(chǔ)設(shè)施,并可以使用基礎(chǔ)設(shè)施在其上部署應(yīng)用程序。其核心屬...
摘要:本篇文章將會(huì)結(jié)合網(wǎng)易云信的實(shí)踐經(jīng)驗(yàn),以全局概述的方式帶大家認(rèn)識(shí)點(diǎn)播私有化平臺(tái)構(gòu)建的整體架構(gòu)面貌?;跇?gòu)建點(diǎn)播私有云平臺(tái)在具有以上優(yōu)勢(shì)的同時(shí),還具備資源彈性管理監(jiān)控完善部署簡(jiǎn)易自動(dòng)化維護(hù)等特性?;跇?gòu)建平臺(tái),能夠自由管理創(chuàng)建云主機(jī)。 私有云是為一個(gè)客戶單獨(dú)使用而構(gòu)建的,因而提供對(duì)數(shù)據(jù)、安全性和服務(wù)質(zhì)量的最有效控制。前置條件是客戶擁有基礎(chǔ)設(shè)施,并可以使用基礎(chǔ)設(shè)施在其上部署應(yīng)用程序。其核心屬...
閱讀 816·2021-11-11 16:54
閱讀 3170·2021-09-26 09:55
閱讀 2067·2021-09-07 10:20
閱讀 1280·2019-08-30 10:58
閱讀 1111·2019-08-28 18:04
閱讀 772·2019-08-26 13:57
閱讀 3666·2019-08-26 13:45
閱讀 1222·2019-08-26 11:42