利用Racher輕松構(gòu)建PASS平臺

?一,Rancher是什么

1.1 Rancher背景

?Rancher Labs成立于2014年??偛吭O(shè)立在美國加州的Cupertino。在美國的亞利桑那州的菲尼克斯和中國的深圳設(shè)立有研發(fā)中心。

?核心團隊自2008年就在一起工作,曾創(chuàng)立Cloud.com并推出了CloudStack,

經(jīng)歷了從VM到容器的整個虛擬化技術(shù)演進過程。

?Rancher的兩個產(chǎn)品,Rancher平臺和Rancher操作系統(tǒng),已經(jīng)有了超過4000

萬次的下載量,被大量的運用在了云計算的各個領(lǐng)域。

?作為容器領(lǐng)域的先行者和重要參與者,Rancher Labs是OCI、CNCF的成員;也是Docker生態(tài)核心組織-Docker治理委員會(DGAB)的成員。

1.2 Rancher創(chuàng)始人

?Rancher創(chuàng)始人是梁勝博士。

?梁勝博士是美國Rancher Labs Inc.公司聯(lián)合創(chuàng)始人及公司CEO。

?在此之前,從2011年至2014年間,梁博士擔任Citrix System Inc.公司云平臺首席技術(shù)官,也是Citrix公司首位華人CTO。

?在加入Citrix公司之前,梁勝創(chuàng)立了cloud.com公司并擔任首席執(zhí)行官,直至2011年7月被Citrix以2.3億美金購入旗下。

?之前他作為Sun Microsystems公司核心主任工程師,先后領(lǐng)導(dǎo)設(shè)計和開發(fā)了Java 2平臺的JNI(Java Native Interface)和JVM(Java虛擬機)。

?梁勝畢業(yè)于中國科技大學少年班,并擁有耶魯大學計算機博士學位。

1.3 Rancher簡介

1.4 容器生態(tài)圈

?什么是容器?

與宿主機系統(tǒng)共享內(nèi)核但與系統(tǒng)中的其他進程資源隔離的運行環(huán)境。

?容器相關(guān)技術(shù)的歷史(部分)

1982 chroot in Unix

2000 FreeBSD Jail

2001 Linux VServer

2004 Solaris Zone o 2005 OpenVZ

2008 LXC

2013 Docker

2014 Rocket(Rkt) o ......

?容器生態(tài)圈知名產(chǎn)品體系

1.5 Rancher容器管理平臺系統(tǒng)架構(gòu)圖

1.6 Rancher容器管理UI界面

二,Rancher如何搭建

提示:為了降低理解難度,以下過程全部采用圖形化界面操作以及漢語進行演示,如果想有更進一步的認識或者?你是一個極客,請手動敲命令進行操作

2.1 安裝Docker環(huán)境

?Windows用戶或者Mac用戶通過下載? DockerToolbox 來安裝 docker, docker-machine 和其他輔助工具,可以到頁面https://www.docker.com/products/docker-toolbox中下載

?安裝過程中會檢測是否已經(jīng)安裝Virtual Box,如果未安裝,則會提示安裝Virtual Box

?安裝成功后,桌面會出現(xiàn)Docker Quickstart Terminal 和 Kitematic (Beta)圖標

?點擊Kitematic(Docker圖形化管理工具),第一次啟動的時候自動創(chuàng)建 Virtual Box 的? default 虛擬機.可以打開Virtual Box進行查看,如下圖:

?Kitematic啟動成功之后如下圖,至此,Docker環(huán)境創(chuàng)建成功

2.2 安裝Rancher

?Rancher的各種容器管理理念均架構(gòu)在由Rancher server和rancher agent構(gòu)建的Infrastructure之上。Rancher server是Rancher的核心,提供核心容器管理服務(wù)以及API服務(wù)。

?Rancher的一個設(shè)計理念是所有組件都Containerized(容器化)

?搭建一個單節(jié)點的Rancher Server為例,首先安裝一個Rancher server,直接在Kitematic搜索Rancher,如下圖,點擊CREATE:

?然后選中Rancher server,點擊Start,加載完畢后,點擊EXEC,輸入命令:PS AUX,可以看到內(nèi)部,/usr/bin/s6-svscan是容器的第一個啟動進程,/service這個 路徑作為其命令行參數(shù),又分別內(nèi)部啟動了mysql,graphite_exporter,cattle等服務(wù),注:單節(jié)點rancher server的數(shù)據(jù)都保存在其內(nèi)部的MySQL中,而多節(jié)點rancher server則采用一個外部的MySQL存儲數(shù)據(jù)。

?等待一定時間后,WEB PREVIEW出現(xiàn)了預(yù)覽界面,點擊小箭頭,直接在瀏覽器打開。

?打開Rancher server界面,如下,至此,Rancher server已經(jīng)初步搭建成功!

2.3 管理Rancher,添加用戶(Account)

?第一次啟動Rancher后,Rancher的UI是沒有訪問控制的,點擊系統(tǒng)管理->訪問控制,如下圖,可以看到有7種方式,選擇LOCAL,輸入用戶名和密碼

?然后點擊退出登錄,可以看到如下界面,訪問控制已經(jīng)添加上

2.4 管理Rancher,設(shè)置環(huán)境(Environment)

?登錄之后,點擊左上角環(huán)境管理,Rancher 支持將資源分組歸屬到多個環(huán)境。 每個環(huán)境具有自己獨立的基礎(chǔ)架構(gòu)資源及服務(wù),并由一個或多個用戶、團隊或組織所管理。

例如,您可以創(chuàng)建獨立的“開發(fā)”、“測試”及“生產(chǎn)”環(huán)境以確保環(huán)境之間的安全隔離,將“開發(fā)”環(huán)境的訪問權(quán)限賦予全部人員,但限制“生產(chǎn)”環(huán)境的訪問權(quán)限給一個小的團隊。

如下圖,建立Pass云測試和Pass云管理,兩套環(huán)境,分別給測試和開發(fā)人員使用,可以修改它的Name、Container Orchestration引擎(cattle、k8s和swarm,默認cattle)以及Access Control,我們使用Cattle進行編排引擎。

下圖可以體現(xiàn)出環(huán)境的隔離性:

環(huán)境管理,也可以基于環(huán)境模板,如下圖,比如Cattle,上面已經(jīng)安裝好了ipsec,healthcheck等服務(wù):

?創(chuàng)建好環(huán)境后,環(huán)境下面還沒有設(shè)置沒有任何Resources(主機、存儲 等)可供使用(比如創(chuàng)建Containers)。

選擇基礎(chǔ)架構(gòu),添加主機(hosts),如下圖,可以自己定義物理機或者虛擬機,也可以選擇亞馬遜云等,如果沒有發(fā)現(xiàn)你想使用的云,比如阿里云,可以選擇管理docker-machine驅(qū)動進行添加:

2.5 管理Rancher,設(shè)置主機(Hosts)

?以添加本地環(huán)境作為主機資源為例,將下圖中的命令在命令行進行執(zhí)行

?執(zhí)行成功后,可以看到基礎(chǔ)設(shè)施里面多了一個主機,并且這個主機上,已經(jīng)默認在跑了一些應(yīng)用,比如healthcheck,至此一套基礎(chǔ)的架構(gòu)已經(jīng)具備了

2.6 管理Rancher,設(shè)置?應(yīng)用(Stacks)

?應(yīng)用(stacks)就是由一組服務(wù)組成,比如上圖的應(yīng)用:ipsec由cni-driver-1和ipsec-1服務(wù)組成。

?而服務(wù)是一組由相同docker鏡像創(chuàng)建的容器,服務(wù)擴展了Docker的“l(fā)ink”概念以利用Rancher的輕量級分布式DNS服務(wù)用于服務(wù)發(fā)現(xiàn)。服務(wù)可以單獨添加或通過應(yīng)用商店部署。

?服務(wù)也能夠利用其他Rancher內(nèi)置服務(wù),如負載均衡、健康監(jiān)控、升級支持以及高可用。

下面這幅圖直觀描述了?用戶, ?環(huán)境與?應(yīng)用之間的關(guān)系:

?在Pass云管理環(huán)境,創(chuàng)建一個example應(yīng)用,如下圖,點擊創(chuàng)建:

?創(chuàng)建成功后如下圖:

2.7 管理Rancher,設(shè)置?服務(wù)(Services)

?如上圖,點擊添加服務(wù),輸入名稱,選擇鏡像,鏡像就可以理解成為用戶提供服務(wù)的運行程序。這里選擇healthcheck為例子。下面可以進行一些端口映射,服務(wù)連接,網(wǎng)絡(luò),安全,調(diào)度等配置

?成功后,可以看到下圖,可以對這個服務(wù)進行升級,停止,刪除等操作

?如果用戶訪問量過大,還可以進行針對這個服務(wù),增加運行節(jié)點的數(shù)量或者說集群,如下圖,可以增加節(jié)點數(shù)量,點擊后,會自動尋找hosts列表,資源比較空閑的主機,或者其他策略??梢钥焖俚膶⒎?wù)部署到任意多個主機節(jié)點上。

?點擊查看日志,可以看到服務(wù)運行的實時日志:

?三,Rancher使用體驗

3.1 Rancher自帶了一套網(wǎng)絡(luò)方案

?rancher 自帶了一套網(wǎng)絡(luò)方案,可以實現(xiàn)跨機器的docker容器互聯(lián)。

?其原理大致是:在每個機器上通過docker啟動一個路由容器,將docker容器啟動時的ip定義為XX.XX網(wǎng)段,并在iptables中將XX.XX網(wǎng)段的請求轉(zhuǎn)發(fā)到路由進程的監(jiān)聽端口,進行udp的封裝和解封。

?其原理是隧道技術(shù),都是通過一個程序進行封包解包,并引導(dǎo)docker啟動容器時指定相應(yīng)的ip。

3.2 Rancher使用性

?自帶了一套UI,并集成了日志,shell等

?支持服務(wù)發(fā)現(xiàn),在rancher-agen容器中運行了dns服務(wù)

?支持容器伸縮,一鍵擴容

?支持多套環(huán)境管理(一套方案,支持開發(fā)、測試,生成等多個環(huán)境,環(huán)境彼此隔離,也即多租戶隔離)

總體而言,比較穩(wěn)定,易于使用

3.3 Rancher解決的典型場景

?新一代的私有云、混合云

混合云下的容器服務(wù):

應(yīng)用在不同云間動態(tài)擴展和遷移:

容器改變了應(yīng)用管理的模式:

?企業(yè)應(yīng)用商店和一鍵部署應(yīng)用

?構(gòu)建輕量級Pass服務(wù)

簡書是最好的寫作平臺,關(guān)注我的簡書,獲得海量架構(gòu)資料!絕對給你驚喜!?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 229,406評論 6 538
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異,居然都是意外死亡,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 99,034評論 3 423
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人,你說我怎么就攤上這事?!?“怎么了?”我有些...
    開封第一講書人閱讀 177,413評論 0 382
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 63,449評論 1 316
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當我...
    茶點故事閱讀 72,165評論 6 410
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 55,559評論 1 325
  • 那天,我揣著相機與錄音,去河邊找鬼。 笑死,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,606評論 3 444
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 42,781評論 0 289
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,327評論 1 335
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 41,084評論 3 356
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 43,278評論 1 371
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,849評論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 44,495評論 3 348
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 34,927評論 0 28
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 36,172評論 1 291
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 52,010評論 3 396
  • 正文 我出身青樓,卻偏偏與公主長得像,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 48,241評論 2 375

推薦閱讀更多精彩內(nèi)容