說在之前
在進(jìn)行Ansible系列之前,想說說為什么突然想重新梳理Ansible。在運(yùn)維的工作歷程中,經(jīng)歷過自己手寫批量化工具,嘗試過Puppet,到后來接觸Ansible,之前的工作最多使用adhoc較多,很多工作要么封裝平臺(tái)化,要么現(xiàn)寫adhoc,或者腳本化安裝軟件之類的,也都是又重頭再來走一遍,可能過程的一些優(yōu)化點(diǎn)隨手就改了,最終部署完畢也就交付了。下次部署又會(huì)重復(fù)之前的工作。造成時(shí)間浪費(fèi),也不運(yùn)維化(能偷懶就偷懶節(jié)約時(shí)間看點(diǎn)別的東西不香么,比如學(xué)習(xí)下最火的Golang)
嘮叨這么多,其實(shí)是最近在新的工作崗位感受到了ansible-playbook帶來的巨大甜頭,過程中也出現(xiàn)忘記一些ansible基礎(chǔ)的東西,基于此,故重新梳理下系列文章
系列文章計(jì)劃:
一、基礎(chǔ)篇
基礎(chǔ)篇主要是補(bǔ)充下ansible的基本知識(shí)及常規(guī)用法及其周邊,主要有:
1、Ansible 的安裝、配置和基本使用
2、Ansible 常見模塊的使用
3、Ansible Inventory的合理化配置
4、擴(kuò)展: Yaml 和 Ini 在 Ansible 和 Python的使用
二、提高篇
主要介紹ansible的一些高級(jí)特性,比如角色的 handler,變量的定制化等,主要有:
1、Ansible playbook 入門
2、Ansible Role tasks 使用
3、Ansible Role templates 使用
4、Ansible Role handlers 使用
5、Ansible 中變量的定制化
6、Ansible 中的提交控制
三、實(shí)戰(zhàn)篇
主要是分享實(shí)際工作中整理的一些playbook,很多甚至可以拿來即用,提升工作效率。主要有:
1、Ansible playbook 實(shí)現(xiàn)類堡壘機(jī)功能
2、Ansible playbook 部署MySQL
3、Ansible playbook 部署Gitlab倉(cāng)庫(kù)(外置MySQL)
4、Ansible playbook 實(shí)現(xiàn)NGINX配置中心
四、擴(kuò)展
1、Python封裝的 Ansible API 接口Demo
2、實(shí)際場(chǎng)景演練:《CMDB創(chuàng)建主機(jī)之后堡壘機(jī)及內(nèi)部DNS更新》