Ansible(一):Ansible安裝及測試
摘要
本文主要內容是介紹Ansible的安裝及測試,文章內容主要摘自Ansible的文件。
背景
公司近期開發分散式採集伺服器,儘管當前測試僅由三臺伺服器組成,但是規劃中會有近百臺伺服器一起工作。這就需要有一種方法或者工具可以批量管理整個叢集,舉個最簡單的例子,例如軟體升級,當你需要更新某一個jar包時,你肯定不願意一臺伺服器一臺伺服器地複製檔案、重啟相應的程序,你希望你可以在一臺伺服器上進行一些操作,使其他所有的伺服器都生效。
對於Ansible的介紹此處就不再贅述了,以下為本文主要內容
Ansible 安裝
安裝要求
ansible 安裝要求很簡單
1、為叢集中的每個節點安裝SSH,最好配置可以免輸入密碼互聯
2、在控制伺服器(通過此臺電腦控制整個伺服器叢集)上安裝python2.6或2.7 ,linux 系統預安裝python 只需要檢查一下python的版本是不是2.6或2.7,如果是就OK,如果不是就需要安裝一下。
從原始碼安裝
1、獲取原始碼(這一步真的很慢)
$git clone git://github.com/ansible/ansible.git --recursive
$cd ./ansible
(沒有git?通過命令 yum install git 或者apt-get install git 安裝)
2、我放棄了,第一步太慢了,有興趣的朋友去自已看文件繼續接下來的步驟吧。
通過pip安裝
從原始碼安裝我放棄了,還好ansible為我們提供了通過pip安裝的方法
1、安裝pip
$easy_install pip
2、安裝ansible
$ pip install ansible
簡單測試
在完成安裝後我們可以執行一個簡單命令檢視ansible是否可以正常工作。
1、建立hosts檔案
$mkdir -p /etc/ansible #建立配置目錄
$vi /etc/ansible/hosts #編輯主機列表檔案,在檔案中輸入需要管理的主機IP地址
192.168.0.202
192.168.0.203
192.168.0.205
#儲存推出
執行ping 命令
$ansible all -m ping
正確結果
trouble shotting
1、錯誤:AttributeError: ‘module’ object has no attribute ‘HAVE_DECL_MPZ_POWM_SEC’
解決方法:
執行命令
$rpm -qa | grep python-crypto
將查到的結果全部刪除(
$rpm -e --nodeps <查到的包名>
2、錯誤: src/MD2.c:31:20: 錯誤:Python.h:沒有那個檔案或目錄
這是因為沒有安裝包python-devel
執行以下命令解決
$yum install python-devel
3、錯誤:
在首次執行ping命令時有可能會出現上述錯誤,但再次執行就不會出現該錯誤。建議更新ssh
$ yum install openssh-server#安裝最新server
$service sshd restart #重啟服務
4、
yum install libselinux-python