ansible介紹和服務器管理思考
舊的服務器管理,基本上就是用ssh登錄到服務器上面,進行一些操作。需要做的事情一般是:定期安全更新,新版本發布,新應用安裝等。 這樣有很多缺點:人工操作引發錯誤,服務器狀態無法跟蹤,人工操作繁瑣耗時等。
我覺得好的服務器管理方式應該是這樣的:
- 能夠定義服務器的功能,通過寫程序或者配置的方式說明服務器到底是怎么樣的
- 通過這個定義,自動化地配置服務器
- 可以手動或者自動修改定義,更新整體的架構
- 整個過程不要引入太多的復雜度,更好地反映服務器管理的本質
以前我學習了一段時間的chef,整體架構偏復雜了。因為是server/agent架構,服務器上面要跑一個chef的監控程序, 這樣對于大規模的服務器來說是性能更好,但是對于大多數小公司來說,沒有agent的模式就足夠用了。執行速度上也偏慢。
現在重新學習了解了ansible,覺得在復雜度和易用性上面平衡得很好。主要有幾點:
- 和host服務器的通訊采用ssh的方式,host不需要安裝額外的軟件,除了python-simplejson
- module插件是傳輸一個python文件到host執行,參數命令行傳入,簡潔快速
- 整體架構上面盡量減少了復雜度,概念上只有playbook – role – module,我覺得足夠滿足抽象了
用ansible這種服務器配置管理工具,我可以做到以下事情:
- 設置KX上網/下載服務器,需要的時候可以快速創建
- 定義公司的服務器架構,進行歸一化配置,自動更新
- 遇到性能瓶頸或者需要更新服務器的時候,快速創建應用服務器
以后小規模的服務器管理,就變得很簡單了。
來自:http://blog.linjunhalida.com/blog/ansible/
本文由用戶 MarBeltran 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!