Ansible使用原因及安裝方式

Ansible 使用原因及安裝方式

爲什麼要選擇使用ansible

當你的公司沒有太多資金而決定把性能過剩服務器進行虛擬化,將一臺真實服務器變爲多臺虛擬機的時候;當你的公司因業務需求需要擴充服務器的時候;當你重複配置、安裝相同的軟件到其他服務器的時候…
你會發現,咦?我是不是有哪臺服務器忘記配置了,另一臺的服務是要怎麼安裝來的?我的安裝文檔的呢?咦?怎麼這不是一類操作系統的呢?爲什麼安裝的操作系統當時沒有統一呢?你的服務器運維工作越來越雜亂,直到天天加班,而這個時候,你就需要ansible。

舉個例子,你會選擇ansible的

  • 一臺服務器(簡單)
	# 以centos操作系統爲例,當你需要安裝某個個軟件的時候,例如gcc
	yum install gcc -y
	# 或者當你需要高版本gcc的時候,你需要下載源碼及其依賴包然後
	cd gccXX.x
	./configure --prefix=/path/to/gcc && make && make install
	
  • 多臺操作系統相同的服務器(一般)
	# centos操作系統爲例 hosts文件內分別爲 node1,node2,node3,其中操作節點爲 manager
	# 你可能很快可以想到,使用ssh互信,當然只需要做manager 到 node[1-3]的單向ssh憑證即可,再聰明點,你覺得寫個腳本,像這樣:
	cat gcc_install_nodes.sh
	#!/bin/bash
	nodelist=$1
	for node in $nodelist
	do
		# 後臺執行,然後日誌保存到${node}.log
		ssh $node "yum install gcc -y" &>${node}.log &
	done
	wait
	echo "install gcc is done,and you need to look at nodes.log in this dir"
	# 執行,然後等待結果
	./gcc_install_nodes.sh "node1 node2 node3"
  • N+ 臺操作系統類型各異的服務器(困難)
	# 你想我咋地,還真寫嗎?老累了,還不確定能不能跑,這就是ansible爲什麼會出現的原因
	# 能寫出來,但老闆可能不會給你那麼多時間調試你心愛的腳本的。

有了ansible,你不需要再也for循環;有了ansible,你可以爲多臺不同操作系統的服務器安裝相同的軟件,有了ansible,格式化的結果範圍更容易讓你判斷出操作中出現的問題…
也就是說,你可以偷懶了(嗯,就是你可以有時間學習其他知識了)

快速安裝ansible

點擊centos鏡像即可有對應的指導下載指定yum源

	# 安裝 ansible
	yum install ansible -y

以centos爲例: pip 安裝

	# -i 指定臨時鏡像源
	pip install -i https://mirrors.aliyun.com/pypi/simple ansible
	# 永久修改爲本地鏡像方法如下:
	vim ~/.pip/pip.conf

修改如下:
[global]
index-url = https://mirrors.aliyun.com/pypi/simple/
[install]
trusted-host=mirrors.aliyun.com

  • 離線安裝二進制包方式
    若爲centos,現在有線環境下去rpm search找到對應版本的rpm進行下載安裝,或者使用yum install/reinstall ansible --downloadonly --downloaddir=/path命令即可將指定安裝包下載到指定目錄下面,然後拷貝到離線服務器,使用rpm -ivh *.rpm即可安裝,若缺少依賴,按照同樣的方式下載對應版本的rpm包即可

  • 離線方式 python

	# 創建python虛擬環境或者在一個純淨無軟件包安裝的python環境
	pip install ansible
	pip freeze > ansible_request.txt
	pip download -r ansible_request.txt -d /pathdir
	# 在離線服務器上安裝
	pip install --no-index --find-links=packages -r ansible_request.txt 
	cd ansible_src
	python setup.py build
	python setup.py install
	# 或者
	pip install ansible_src.zip

若缺少對應的python依賴包,可去Pypi下載即可。


以上內容僅個人理解,如有不對之處,請指正修改。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章