自動化運維工具Ansible 一 安裝部署

2021-08-10 22:05:30 字數 3238 閱讀 4730

1.環境:centos7,python 2.7(相容python2.6.6),兩台伺服器:192.168.1.94(被控機),192.168.1.115(主機)

2.安裝:(如不特殊說明,均在主機上安裝部署)

a.yum -y install python-devel

b..安裝pycrypto模組

wget

# tar xvzf pycrypto-2.6.1.tar.gz

# cd pycrypto-2.6.1

# python setup.py install

c.安裝yaml模組

wget

# tar xvzf yaml-0.1.5.tar.gz

# cd yaml-0.1.5

# ./configure --prefix=/usr/local

# make --jobs=`grep processor /proc/cpuinfo |wc -l`

# make install

d.安裝pyyaml模組

wget

# tar xvzf pyyaml-3.11.tar.gz

# cd pyyaml-3.11

# python setup.py install

e. 安裝markupsafe模組

wget

# tar xvzf markupsafe-0.9.3.tar.gz

# cd markupsafe-0.9.3

# python setup.py install

f.安裝jinja2模組

wget

# tar xvzf jinja2-2.7.3.tar.gz

# cd jinja2-2.7.3

# python setup.py install

g.安裝******json模組安裝

wget

# tar xvzf ******json-3.6.5.tar.gz

# cd ******json-3.6.5

# python setup.py install

h. 安裝ecdsa模組

wget

# tar xvzf ecdsa-0.11.tar.gz

# cd ecdsa-0.11

# python setup.py install

i. 安裝paramiko模組

wget

# tar xvzf paramiko-1.15.1.tar.gz

# cd paramiko-1.15.1

# python setup.py install

j. 安裝ansible

wget

# tar xvzf v1.7.2.tar.gz

# cd ansible-1.7.2

# python setup.py install

k. 安裝setuptools

wget

# tar xvzf setuptools-7.0.tar.gz

# cd setuptools-7.0

# python setup.py install

3、配置:

a.拷貝配置檔案

在安裝完成之後,配置檔案在安裝路徑之中,如下圖所示:

b.在ansible安裝目錄下,拷貝examples目錄下的拷貝ansible.cfg,hosts到/etc/ansible(新建)目錄下:

新建目錄:mkdir /etc/ansible

拷貝/usr/local/pythonasiable/ansible-1.7.2/examples目錄下的ansible.cfg與hosts到/etc/ansible目錄:   cp ansible.cfg hosts /etc/ansible/

c.配置hosts檔案

vi /etc/ansible/hosts 

在hosts檔案中新增此行被控機資訊:

d.ssh配置

ssh免密碼登入,因為需要通過ssh登入到各個節點進行操作,我用的是root使用者,

每台伺服器都生成公鑰,再合併到authorized_keys

(1)centos預設沒有啟動ssh無密登入,去掉vi /etc/ssh/sshd_config其中2行的注釋,

每台伺服器都要設定,(去除#號)

rsaauthentication yes

pubkeyauthentication yes

(2)輸入命令,ssh-keygen -t rsa,生成key,都不輸入密碼,一直回車,/root就會生成.ssh資料夾,每台伺服器都要設定,

(3)合併公鑰到authorized_keys檔案,在master伺服器,進入/root/.ssh目錄,通過ssh命令合併,

cat id_rsa.pub>> authorized_keys

ssh [email protected] cat ~/.ssh/id_rsa.pub>> authorized_keys

ssh [email protected] cat ~/.ssh/id_rsa.pub>> authorized_keys

(4)authorized_keys為儲存的id_rsa.pub、known_hosts  初次訪問時會在.ssh下生成

(5)完成,ssh [email protected] 、ssh [email protected] 就不需要輸入密碼了

15、初步進行測試

a..相關報錯

解決辦法:

ansible使用sshpass程式通過ssh登入到伺服器時使用的密碼。

出於安全原因,你應該ansible登入伺服器使用ssh金鑰,但對於新伺服器最初是簡單的登入密碼,ansible設定使用者和ssh金鑰,然後後續登入使用ssh金鑰。

sshpass,可以從源**安裝sshpass有以下步驟:

curl -o -l

tar xvzf sshpass-1.05.tar.gz

cd sshpass-1.05

./configure

make

make install

ansible 自動化運維工具

ansible 自動化運維工具 批量管理 python開發 無客戶端 基於ssh服務 22 安裝 1.ansible包在擴充套件源,epel release yum y install epel release yum repolist 2.安裝,ansible yum y install ansi...

自動化運維工具 ansible

ansible ansible 一 簡介和部署 ansible 二 主機清單管理 ansible 三 配置和命令集 ansible 四 常用模組 ansible 五 palybooks劇本 ansible 彙總 ansible 中文權威指南 本部落格 至 小左先森的部落格 ansible ansib...

ansible 自動化運維工具

ansible是新出現的自動化運維工具,基於python開發,集合了眾多運維工具 puppet cfengine chef func fabric 的優點,實現了批量系統配置 批量程式部署 批量執行命令等功能。ansible是基於模組工作的,本身沒有批量部署的能力。真正具有批量部署的是ansible...