ansible全面介紹及運維工程師日常工作解析

ansible全面介紹及運維工程師日常工作解析

運維自動化發(fā)展歷程及技術(shù)應用

  1. 本地部署(on-permises)
    自己買硬件服務(wù)器,自己部署系統(tǒng),開發(fā)應用程序
  2. 基礎(chǔ)設(shè)施即服務(wù)(laas---infrastructure as a server)
    硬件通過購買的方式(阿里云/AWS/騰訊云),提供基本硬件架構(gòu),有了硬件后自己只需要按需求部署系統(tǒng)/軟件應用即可
  3. 平臺即服務(wù)(paas---Platform as a service)
    通過購買(阿里云/騰訊云/AWS等)云服務(wù),在購買的時候會把系統(tǒng)環(huán)境一并做好,只需要在服務(wù)器上做應用開發(fā)就可
  4. 軟件即服務(wù)(saas---software as a service)
    從硬件到操作系統(tǒng)再到應用開發(fā)全部一站式購買,只需要付錢購買就行,(有的帶有WEB頁面,直接交互式按需求部署即可)
    例如:淘寶,不需要自己買服務(wù)器開發(fā)網(wǎng)站應用,只需要交錢給淘寶然后在淘寶上創(chuàng)建頁面即可,省去的購買服務(wù)器,找人開發(fā)頁面的過程

后面的英文單詞及概念要記住!

自動化運維應用場景

  • 文件傳輸
  • 命令執(zhí)行
  1. 應用部署
  2. 配置管理
  3. 任務(wù)流編排

企業(yè)實際應用場景分析

  • Dev開發(fā)環(huán)境
    使用者: 程序員
    功能: 程序員開發(fā)軟件,測試BUG的環(huán)境
    管理人員: 程序員

一般是由程序員自行管理,運維不要接收

  • 測試環(huán)境
    使用者: QA測試工程師
    功能: 測試經(jīng)過Dev環(huán)境測試通過的軟件的功能
    管理人員: 運維

說明:
測試環(huán)境往往有很多套(IOS平臺/安卓平臺),測試環(huán)境滿足測試功能即可,不宜過多
(1)測試人員希望測試環(huán)境有多套,公司的產(chǎn)品多產(chǎn)品線并發(fā),雞即多個版本意味著多個版本同步測試
(2)通過測試環(huán)境有多少套和產(chǎn)品線數(shù)量保持一樣

  • 發(fā)布環(huán)境
    代碼發(fā)布機,有些公司為堡壘機(安全屏障)
    使用者: 運維
    功能: 發(fā)布代碼到生產(chǎn)環(huán)境
    管理人員: 運維(需要有經(jīng)驗的)
    發(fā)布機: 往往需要2臺(主備)

  • 生產(chǎn)環(huán)境
    使用者: 運維,少數(shù)情況開放權(quán)限給核心開發(fā)人員,極少數(shù)公司將權(quán)限完全開放給開發(fā)人員并其維護,(不要隨便給其他人權(quán)限,出問題后需要承擔責任!)
    功能: 對用戶提供公司產(chǎn)品的服務(wù)
    管理人員: 只能是運維
    生產(chǎn)環(huán)境服務(wù)器數(shù)量: 一般比較多,且應用非常重要.往往需要自動工具協(xié)助部署配置應用

  • 灰度環(huán)境
    生產(chǎn)環(huán)境的一部分
    使用者: 運維
    功能: 在全量發(fā)布代碼前將代碼的功能面向少量精準用戶發(fā)布的環(huán)境,可基于主機或用戶執(zhí)行灰度發(fā)布
    案例:

  1. 基于主機發(fā)布

共100臺生產(chǎn)服務(wù)器,先發(fā)布其中10臺服務(wù)器,這10臺服務(wù)器就是灰度服務(wù)器,有問題的話也是這10臺上的用戶受到影響,遇到問題立馬解決

  1. 基于用戶發(fā)布

比如利用會員機制或者一部分用戶(優(yōu)先嘗鮮使用新版本),這部分人優(yōu)先使用新版本,如果沒問題后在進行全面升級版本

  1. 基于地區(qū)發(fā)布

比如有些軟件只能某個地區(qū)使用的,一個地區(qū)一個地區(qū)的逐漸升級版本

管理人員: 運維
灰度環(huán)境: 往往該版本功能變更較大,為保險起見特意先讓一部分用戶優(yōu)化體驗該功能,待這部分用戶使用沒有重大問題的時候,再全量發(fā)布至所有服務(wù)器.

  • 程序發(fā)布
  1. 預發(fā)布驗證
    新版本的代碼先發(fā)布到服務(wù)器(跟線上環(huán)境配置完全相同,知識未接入到調(diào)度器),放到測試服務(wù)器上線測試(不對外發(fā)布使用)

  2. 程序發(fā)布
    不能導致系統(tǒng)故障或造成系統(tǒng)完全不可用
    不能影響用戶體驗
    (類似于飛機空中加油!ヾ(?°?°?)??)

  3. 灰度發(fā)布

  4. 發(fā)布路徑
    例如:

/webapp/zhanshen-1.1  #用這個版本就生成一個/webapp/zhanshen軟連接

/webapp/zhanshen  #這是一個軟連接,用戶訪問次目錄,

/webapp/zhanshen-1.2  #用這個版本就把1.1版本刪除后再生成一個/webapp/zhanshen軟連接
  1. 發(fā)布過程
    在調(diào)度器上下線一批主機(標記為maintanance狀態(tài))--> 關(guān)閉服務(wù) --> 部署新版本的應用程序 --> 啟動服務(wù) --> 在調(diào)度器上啟用這一批服務(wù)器
  2. 自動化灰度發(fā)布
    自動化腳本/自動化運維發(fā)布平臺來代替上面提到的復雜的發(fā)布過程

常用自動化運維工具

  • ansible:語言開發(fā):Python-->agentless(無客戶端/無代理)-->中小型環(huán)境
  • saltstack:語言開發(fā):Python-->一般需部署agent(客戶端),執(zhí)行效率更高
  • puppet:語言開發(fā):ruby-->功能強大,配置復雜,重型,適合大型環(huán)境
  • fabric:語言開發(fā):python-->agentless
  • chef:語言開發(fā):ruby-->國內(nèi)應用很少
  • cfengine
  • func

解釋說明:
主控端:
被控端:代理(安裝agent客戶端/代理程序), 無代理(利用SSH服務(wù))
(1)agentless(無客戶端/無代理)
同時因為SSH是每臺Linux主機系統(tǒng)必裝的軟件泌霍,所以Ansible無需在遠程主機端安裝任何額外進程儒搭,即可實現(xiàn)Agentless(無客戶端)梭域,進而助力其實現(xiàn)去中心化的思想,基于ssh性能也會略低一些,適合中小環(huán)境
(1.1)ansible也支持agent的方式袭景,即所謂的“pull”的模式浙滤,就是通過一個客戶端去拉取要執(zhí)行的任務(wù)

(2)agent(客戶端)
saltstack必須在客戶端安裝代理才可以控制被控端,雖然部署agent會麻煩,但是功能上也會更強大一些,性能也會高很多,適合大型環(huán)境

ansible發(fā)展史

  • ansible
  1. 創(chuàng)始人,michael DeHaan(cobbler與func的作者)
  2. 2012-03-09,發(fā)布0.0.1版本,被紅帽收購
  3. 2015-10-17,Redhat宣布收購

ansible軟件介紹

(1)Ansible是一個部署一群遠程主機的工具。這里“遠程主機(Remote Host)”是指任何可以通過SSH登錄的主機,所以它既可以是遠程虛擬機或物理機,也可以是本地主機沥寥。
Ansible通過SSH協(xié)議實現(xiàn)管理節(jié)點與遠程節(jié)點之間的通信。理論上來說柠座,只要能通過SSH登錄到遠程主機來完成的操作邑雅,都可以通過Ansible實現(xiàn)批量自動化操作。

(2)涉及命令管理操作:復制文件妈经,安裝服務(wù)淮野,啟動管理服務(wù)等等.

(3)利用ssh方式和ansible的區(qū)別
ssh秘鑰+腳本 簡單實用,看起來比較LOW吹泡,需要人工寫腳本骤星,類似inotify。
ansible有配置文件爆哑,可以多線程直接實現(xiàn)洞难。不需要寫腳本,類似sersync揭朝。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末队贱,一起剝皮案震驚了整個濱河市色冀,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌柱嫌,老刑警劉巖锋恬,帶你破解...
    沈念sama閱讀 219,539評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異编丘,居然都是意外死亡与学,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,594評論 3 396
  • 文/潘曉璐 我一進店門嘉抓,熙熙樓的掌柜王于貴愁眉苦臉地迎上來癣防,“玉大人,你說我怎么就攤上這事掌眠±俣ⅲ” “怎么了?”我有些...
    開封第一講書人閱讀 165,871評論 0 356
  • 文/不壞的土叔 我叫張陵蓝丙,是天一觀的道長级遭。 經(jīng)常有香客問我,道長渺尘,這世上最難降的妖魔是什么挫鸽? 我笑而不...
    開封第一講書人閱讀 58,963評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮鸥跟,結(jié)果婚禮上丢郊,老公的妹妹穿的比我還像新娘。我一直安慰自己医咨,他們只是感情好枫匾,可當我...
    茶點故事閱讀 67,984評論 6 393
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著拟淮,像睡著了一般干茉。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上很泊,一...
    開封第一講書人閱讀 51,763評論 1 307
  • 那天角虫,我揣著相機與錄音,去河邊找鬼委造。 笑死戳鹅,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的昏兆。 我是一名探鬼主播枫虏,決...
    沈念sama閱讀 40,468評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了模软?” 一聲冷哼從身側(cè)響起伟骨,我...
    開封第一講書人閱讀 39,357評論 0 276
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎燃异,沒想到半個月后携狭,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,850評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡回俐,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 38,002評論 3 338
  • 正文 我和宋清朗相戀三年逛腿,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片仅颇。...
    茶點故事閱讀 40,144評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡单默,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出忘瓦,到底是詐尸還是另有隱情搁廓,我是刑警寧澤,帶...
    沈念sama閱讀 35,823評論 5 346
  • 正文 年R本政府宣布耕皮,位于F島的核電站境蜕,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏凌停。R本人自食惡果不足惜粱年,卻給世界環(huán)境...
    茶點故事閱讀 41,483評論 3 331
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望罚拟。 院中可真熱鬧台诗,春花似錦、人聲如沸赐俗。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,026評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽秃励。三九已至氏仗,卻和暖如春吉捶,著一層夾襖步出監(jiān)牢的瞬間夺鲜,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,150評論 1 272
  • 我被黑心中介騙來泰國打工呐舔, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留币励,地道東北人。 一個月前我還...
    沈念sama閱讀 48,415評論 3 373
  • 正文 我出身青樓珊拼,卻偏偏與公主長得像食呻,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 45,092評論 2 355

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