Ansible Tower系列 二(安裝 Tower)【轉】


文檔:http://docs.ansible.com/ansible-tower/

安裝前檢查


  1. python版本為2.6
  2. 保持網絡暢通
  3. 內存預留充足
  4. 安裝用戶為root

軟件下載


下載地址:http://releases.ansible.com/ansible-tower/setup/
含有包文件的版本:http://releases.ansible.com/ansible-tower/setup-bundle/

wget http://releases.ansible.com/ansible-tower/setup-bundle/ansible-tower-setup-bundle-latest.el6.tar.gz tar zxf ansible-tower-setup-bundle-latest.el6.tar.gz cd ansible-tower-setup-bundle-3.0.3-1.el6/

部署


設置主機信息

sed -i "s#password=''#password='admin'#g" inventory sed -i "s#host=''#host='127.0.0.1'#g" inventory sed -i "s#port=''#port='5432'#g" inventory

修改yum源

sed -i 's#dl.fedoraproject.org/pub#mirrors.ustc.edu.cn#g' roles/packages_el/defaults/main.yml sed -i 's/#baseurl=/baseurl=/g' roles/packages_el/files/epel-6.repo sed -i 's/mirrorlist=/#mirrorlist=/g' roles/packages_el/files/epel-6.repo sed -i 's#download.fedoraproject.org/pub#mirrors.ustc.edu.cn#g' roles/packages_el/files/epel-6.repo yum -y install centos-release-scl-rh centos-release-scl sed -i 's#mirror.centos.org#centos.ustc.edu.cn#g' /etc/yum.repos.d/CentOS-SCLo-scl.repo sed -i 's#mirror.centos.org#centos.ustc.edu.cn#g' /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo yum -y install supervisor `

安裝ansible

./setup.sh


TASK [awx_install : Migrate the Tower database schema (may take awhile when upgrading).] ***
這一步會出現錯誤,提示信息是數據庫連接不上

啟動postgresql

service postgresql-9.4 initdb service postgresql-9.4 start

創建用戶

su - postgres
psql
CREATE ROLE awx CREATEDB PASSWORD 'admin' LOGIN; \q sed -i 's#peer#md5#g' /var/lib/pgsql/9.4/data/pg_hba.conf sed -i 's#ident#md5#g' /var/lib/pgsql/9.4/data/pg_hba.conf service postgresql-9.4 restart

測試awx用戶連接,輸入密碼連接,並創建數據庫

psql -U awx -d postgres -h 127.0.0.1 create database awx; \q

再次./setup.sh進行安裝tower

Web配置


訪問web頁面

https://192.168.77.128/#/


Paste_Image.png

用戶名/密碼為admin admin

導入license
沒有的話,點擊REQUEST LICENSE,去官方申請免費試用。


Paste_Image.png

提交license后,就進入了DASHBOARD頁面啦


Paste_Image.png

Tower無限hosts的License修改


僅供實驗測試使用,切勿挪作他用。

下載反編譯工具: http://sourceforge.net/projects/easypythondecompiler/

反編譯task_engine.pyc文件

find / -name task_engine.pyc
/var/lib/awx/venv/tower/lib/python2.7/site-packages/awx/main/task_engine.pyc

Paste_Image.png

反編譯后的文件為task_engine.pyc_dis,文件重命名為task_engine.py

修改內容

89行和186行代碼
available_instances = int(self.attributes['instance_count']) 為
available_instances = 10000


Paste_Image.png

Paste_Image.png

247行代碼,把相應的功能由False改為True(這步未實施


Paste_Image.png

刪除task_engine.pyc task_engine.pyo 重啟tower

rm -f  /var/lib/awx/venv/tower/lib/python2.7/site-packages/awx/main/task_engine.py* ansible-tower-service restart

查看license信息


Paste_Image.png

安裝時遇到的錯誤


fatal: [localhost]: FAILED! => {"changed": false, "failed": true, "msg": "This machine does not have sufficient RAM to run Ansible Tower."}

解決:機器內存不足,增加內存

fatal: [localhost]: FAILED! => {"changed": false, "failed": true, "msg": "no service or tool found for: supervisord"}

解決:yum -y install supervisor

出現Is the server running on host \"localhost\" (127.0.0.1) and accepting\n\tTCP/IP connections on port 5432?

是postgresql服務沒啟動

service postgresql-9.4 initdb service postgresql-9.4 start # 創建用戶 su - postgres psql CREATE ROLE awx CREATEDB PASSWORD 'admin' LOGIN; \q exit sed -i 's#peer#md5#g' /var/lib/pgsql/9.4/data/pg_hba.conf sed -i 's#ident#md5#g' /var/lib/pgsql/9.4/data/pg_hba.conf service postgresql-9.4 restart # 測試awx用戶連接,輸入密碼連接,並創建數據庫 psql -U awx -d postgres -h 127.0.0.1 create database awx; \q

 參考

centos6.5安裝自動化工具ansible和圖形化工具tower - xiaoxiaozhou - 51CTO技術博客

http://xiaoxiaozhou.blog.51cto.com/4681537/1888754

 

ansible&Tower無限hosts的License修改方法 - Tower應用 - 51CTO技術博客

http://tower.blog.51cto.com/3711105/1701339/


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM