架構(gòu)源于實踐(Ansible配置搭建)

只有非常努力选泻,才能看起來毫不費力

本文是原創(chuàng)持續(xù)連載發(fā)布苇本,這篇主要講解Ansible的搭建及其一些基本的使用命,親手搭建Ansible環(huán)境摧冀,因為并沒有實戰(zhàn)經(jīng)驗倍踪,所以本文對于Jenkins+Ansible自動化持續(xù)部署沒有做講解(不敢誤人子弟),但偶爾會對Ansible在自動化持續(xù)部署中所起的作用可講解一二索昂。如有文中有書寫或部署問題建车,請留言指導(dǎo)修正,互相交流椒惨,共同進步缤至,本人QQ:417213902。

一康谆、Ansible 環(huán)境搭建

1领斥、Ansible介紹及作用

1.1介紹

Ansible是一種集成IT系統(tǒng)的配置管理, 應(yīng)用部署, 執(zhí)行特定任務(wù)的開源平臺,它基于Python語言實現(xiàn)沃暗,部署只需在主控端部署環(huán)境, 被控端無需安裝代理工具戒突,只需打開SSH,讓主控端通過SSH秘鑰認(rèn)證對其進行所有的管理監(jiān)控操作描睦,相對適合部署到數(shù)量比較大且對系統(tǒng)軟件安裝要求比較嚴(yán)格的集群中。

1.2主要作用

  • 配置管理 -playbook
    將大量命令行配置集成到一起形成一個可定制的多主機配置管理部署工具导而,它通過YAML格式定義, 可以實現(xiàn)向多臺主機的分發(fā)應(yīng)用部署忱叭;
  • 應(yīng)用部署
    一般都是結(jié)合Jenkins配套使用

2、Ansible搭建

說明: 這一步只是為了提供更多韵丑、便捷的yum源的軟件。

  • 第二步虚缎,安裝Ansible
    # yum install ansible -y
    說明:需要python環(huán)境撵彻,初次安裝需要一點時間钓株,默認(rèn)安裝目錄在/etc/ansible 下
  • 第三步,在ansible中配置組
    # cd /etc/ansible
    # cp hosts hosts.bak
    # cat /dev/null > ansible
    #vi hosts
[deployServer] #組名稱陌僵,可根據(jù)需求定義
192.168.1.110
192.168.1.112
  • 第四步轴合, 配置服務(wù)器間的秘鑰認(rèn)證
    目的是Ansible宿主服務(wù)和應(yīng)用服務(wù)器間通信時不需要再次輸入密碼
    ⑴ 在Ansible服務(wù)器上生成密鑰對,使用ssh-keygen -t rsa命令
    # cd ~
    # ssh-keygen -t rsa 直接回車
    # cd ~/.ssh/
    # ll
    image.png

    出現(xiàn)id_rsa 和 id_rsa.pub 這兩個文件表示成功
    image.png

    ⑵把生成的 id_rsa.pub 文件復(fù)制到應(yīng)用服務(wù)器上
    # scp id_rsa.pub root@192.168.1.110:~/.ssh/
    需要輸入110服務(wù)器的root密碼
    文件復(fù)制成功
    把公鑰復(fù)制到authorized_keys里
    ⑶驗證是否成功
    # ssh root@192.168.1.110
    應(yīng)該是無秘自動登錄碗短,表示成功受葛,否則請重新檢查配置步驟

到目前配置為止,已經(jīng)Ansible基本配置已經(jīng)完成

  • 第五步偎谁,測試
    重啟deployServer組所有SSH服務(wù)
    # ansible deployServer -m service -a "name=sshd state=restarted"


    image.png

出現(xiàn)以上表示成功总滩,若失敗,請檢查
1巡雨、防火墻是否已經(jīng)關(guān)閉
2闰渔、sshd服務(wù)是否已經(jīng)打開
3、秘鑰認(rèn)證是否成功

3铐望、Ansible常用命令

  • 遠程命令模塊
    command: 執(zhí)行遠程主機SHELL命令:
    # ansible deployServer -m command -a "free -m"


    image.png
  • 遠程執(zhí)行本地SHELL腳本(類似scp+shell)
    # echo "date" > ~/test.sh
    # ansible deployServer -m script -a "~/test.sh"


    image.png
  • copy模塊
    實現(xiàn)主控端向目標(biāo)主機拷貝文件, 類似scp功能
    # ansible deployServer -m copy -a "src=~/test.sh dest=/tmp/ owner=root group=root mode=0755"

  • stat模塊
    獲取遠程文件狀態(tài)信息, 包括atime, ctime, mtime, md5, uid, gid等信息
    # ansible deployServer -m stat -a "path=/etc/sysctl.conf"

  • get_url模塊
    實現(xiàn)在遠程主機下載指定URL到本地
    # ansible deployServer -m get_url -a "url=http://www.baidu.com dest=/tmp/index.html mode=0400 force=yes"

  • cron模塊
    遠程主機crontab配置
    # ansible deployServer -m cron -a "name='check dir' hour='5,2' job='ls -alh > /dev/null'"

  • service模塊
    遠程主機系統(tǒng)服務(wù)管理
    # ansible deployServer -m service -a "name=crond state=stopped"
    # ansible deployServer -m service -a "name=crond state=restarted"
    # ansible deployServer -m service -a "name=crond state=reloaded"

  • user服務(wù)模塊
    遠程主機系統(tǒng)用戶管理
    添加用戶:
    # ansible deployServer -m user -a "name=deploy comment='test'"
    刪除用戶:
    # ansible deployServer -m user -a "name=deploy state=absent remove=yes"

沒有具體的實踐冈涧,不做任何評價,從現(xiàn)在自己的了解程度上來看蝌以,還是比較簡單的炕舵,知識夠用就好,需要深入的小伙伴們跟畅,可以自行查詢官方學(xué)習(xí)手冊咽筋,內(nèi)容還是比較全的署恍。通過這幾天的學(xué)習(xí)弓熏,在自動化持續(xù)發(fā)布中倒庵,Ansible其實就是充當(dāng)著腳本執(zhí)行的功能剧包,其實感覺如果采用上一篇文章中的插件也是可以實現(xiàn)旅赢,好吧域仇!YY結(jié)束糊探,有什么問題括享,留言板部翘、留言板硝训,大家一起學(xué)習(xí),討論新思,進步=蚜骸!夹囚!
下一篇終于可以開始解決單點問題纵刘,自動化部署目前就這樣了,后期有什么新的想法再補充荸哟。
2017-11-14 23:42:00

參考文檔 :
國內(nèi)最專業(yè)的Ansible中文官方學(xué)習(xí)手冊
http://www.ansible.com.cn/docs/playbooks_intro.html#about-playbooks
一路向北的博客
http://www.showerlee.com/archives/1649

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末假哎,一起剝皮案震驚了整個濱河市瞬捕,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌舵抹,老刑警劉巖肪虎,帶你破解...
    沈念sama閱讀 219,366評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異掏父,居然都是意外死亡笋轨,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,521評論 3 395
  • 文/潘曉璐 我一進店門赊淑,熙熙樓的掌柜王于貴愁眉苦臉地迎上來爵政,“玉大人,你說我怎么就攤上這事陶缺〖匦” “怎么了?”我有些...
    開封第一講書人閱讀 165,689評論 0 356
  • 文/不壞的土叔 我叫張陵饱岸,是天一觀的道長掺出。 經(jīng)常有香客問我,道長苫费,這世上最難降的妖魔是什么汤锨? 我笑而不...
    開封第一講書人閱讀 58,925評論 1 295
  • 正文 為了忘掉前任,我火速辦了婚禮百框,結(jié)果婚禮上闲礼,老公的妹妹穿的比我還像新娘。我一直安慰自己铐维,他們只是感情好柬泽,可當(dāng)我...
    茶點故事閱讀 67,942評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著嫁蛇,像睡著了一般锨并。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上睬棚,一...
    開封第一講書人閱讀 51,727評論 1 305
  • 那天第煮,我揣著相機與錄音,去河邊找鬼抑党。 笑死包警,一個胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的新荤。 我是一名探鬼主播,決...
    沈念sama閱讀 40,447評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼台汇,長吁一口氣:“原來是場噩夢啊……” “哼苛骨!你這毒婦竟也來了篱瞎?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,349評論 0 276
  • 序言:老撾萬榮一對情侶失蹤痒芝,失蹤者是張志新(化名)和其女友劉穎俐筋,沒想到半個月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體严衬,經(jīng)...
    沈念sama閱讀 45,820評論 1 317
  • 正文 獨居荒郊野嶺守林人離奇死亡澄者,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,990評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了请琳。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片粱挡。...
    茶點故事閱讀 40,127評論 1 351
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖俄精,靈堂內(nèi)的尸體忽然破棺而出询筏,到底是詐尸還是另有隱情,我是刑警寧澤竖慧,帶...
    沈念sama閱讀 35,812評論 5 346
  • 正文 年R本政府宣布嫌套,位于F島的核電站,受9級特大地震影響圾旨,放射性物質(zhì)發(fā)生泄漏踱讨。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 41,471評論 3 331
  • 文/蒙蒙 一砍的、第九天 我趴在偏房一處隱蔽的房頂上張望痹筛。 院中可真熱鬧,春花似錦挨约、人聲如沸味混。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,017評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽翁锡。三九已至,卻和暖如春夕土,著一層夾襖步出監(jiān)牢的瞬間馆衔,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,142評論 1 272
  • 我被黑心中介騙來泰國打工怨绣, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留角溃,地道東北人。 一個月前我還...
    沈念sama閱讀 48,388評論 3 373
  • 正文 我出身青樓篮撑,卻偏偏與公主長得像减细,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子赢笨,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 45,066評論 2 355

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

  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理未蝌,服務(wù)發(fā)現(xiàn)驮吱,斷路器,智...
    卡卡羅2017閱讀 134,667評論 18 139
  • ###### Ansible總結(jié) ##### 運維工作: 系統(tǒng)安裝(物理機萧吠、虛擬機)-->程序包安裝左冬、配置、服務(wù)啟...
    二郎5閱讀 2,031評論 0 4
  • ansible 系統(tǒng)架構(gòu) ansible簡介ansible是新出現(xiàn)的自動化運維工具纸型,ansible是一個配置管理和...
    運維阿文閱讀 9,601評論 1 52
  • 一.ansible (1) ansible: ansible是一款新出現(xiàn)的自動化運維系統(tǒng)拇砰,基于python開發(fā)并集...
    楠人幫閱讀 1,943評論 0 8
  • 本文主要內(nèi)容均收集于網(wǎng)絡(luò)上的博文資料,僅以此文作為學(xué)習(xí)總結(jié)狰腌。BTW除破,目前Ansible對python3的支持還不是...
    qiuyi943閱讀 18,249評論 1 15