一、安装ansible并测试


1、查看系统版本:

[root@ansible-server etc]# lsb_release -a

LSB Version: :base-4.0-amd64:base-4.0-noarch:core-4.0-amd64:core-4.0-noarch:graphics-4.0-amd64:graphics-4.0-noarch:printing-4.0-amd64:printing-4.0-noarch

distributor ID: CentOS

Description: CentOS release 6.5 (Final)

Release: 6.5

Codename: Final


2、安装ansible配置yum配置

163源

[root@ansible-server yum.repos.d]# vi CentOS-Base.repo

[163base]

name=CentOS-$releasever - Base - 163.com

baseurl=http://mirrors.163.com/centos/$releasever/os/$basearch/

#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os

gpgcheck=1

gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6


#released updates

[163updates]

name=CentOS-$releasever - Updates - 163.com

baseurl=http://mirrors.163.com/centos/$releasever/updates/$basearch/

#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates

#additional packages that may be useful

[163extras]

name=CentOS-$releasever - Extras - 163.com

baseurl=http://mirrors.163.com/centos/$releasever/extras/$basearch/

#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras

gpgkey=http://mirror.centos.org/centos/RPM-GPG-KEY-CentOS-6


epel源

[root@ansible-server yum.repos.d]# cat epel.repo

[epel]

name=CentOS-$releasever - epel

baseurl=https://mirrors.tuna.tsinghua.edu.cn/epel/6/x86_64/

gpgcheck=0


3、安装ansible

[root@ansible-server ~]# yum install ansible


4、ansible安装后测试

测试机器作为被控制端为suse11的虚拟机


查看配置文件

[root@ansible-server ~]# cd /etc/ansible/

[root@ansible-server ansible]# ls

ansible.cfg hosts roles


配置ansible hosts文件

[root@ansible-server ansible]# vi hosts

[slave]

192.168.1.210 ansible_ssh_user=root ansible_ssh_port=22 ansible_ssh_pass=suse


说明:

上面分别是被控制端IP地址、登陆用户名、ssh协议端口以及登陆密码


PING测试:

[root@ansible-server ansible]# ansible slave -m ping


paramiko: The authenticity of host '192.168.1.210' can't be established.

The ssh-rsa key fingerprint is 3eddc40386a9465452b12910a61a3c65.

Are you sure you want to continue connecting (yes/no)?

yes

192.168.1.210 | SUCCESS => {

"changed": false,

"ping": "pong"


第一次登陆还需要手动输入“yes”添加信任,如果避免这一步的话也可以,需要配置ansible的配置文件ansible.cfg


hosts文件再添加一台机器

192.168.1.210 ansible_ssh_user=root ansible_ssh_port=22 ansible_ssh_pass=suse

192.168.1.211 ansible_ssh_user=root ansible_ssh_port=22 ansible_ssh_pass=suse


修改配置文件,打开host_key_checking这一行的注释

[root@ansible-server ansible]# vi ansible.cfg

#host_key_checking = False

host_key_checking = False


测试如下所示

[root@ansible-server ansible]# ansible 192.168.1.211 -m ping

192.168.1.211 | SUCCESS => {

第一次登陆不需要手动输入


二、安装tower

1、资源下载


https://www.ansible.com/license

此链接下载免费控制10个机器的授权,需要填写邮箱等信息,授权文件会发到你的邮箱,安装tower后登陆到web界面添加授权文件就可以开始你的tower之旅了


https://www.ansible.com/tower-trial

此链接是下载免费测试的tower安装引导文件,叫做安装引导文件是我自己想出的名字,因为安装tower是由一大堆的ansible-playbook文件组合到一块去取网络资源安装的


2、解压缩tower引导文件[root@ansible-server ~]# cd /home/ansible/

ansible-tower-setup-latest.tar.gz


[root@ansible-server ansible]# tar zxf ansible-tower-setup-latest.tar.gz

[root@ansible-server ansible]# cd ansible-tower-setup-3.0.3/

[root@ansible-server ansible-tower-setup-3.0.3]# ls

ansible.cfg group_vars inventory README.md roles

backup.yml install.yml licenses restore.yml setup.sh


3、配置安装tower的yum源以centos系统默认的yum源替代163的yum源

[base]

name=CentOS-$releasever - Base

mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os

#baseurl=http://mirror.centos.org/centos/$releasever/os/$basearch/

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6


[updates]

name=CentOS-$releasever - Updates

mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates

#baseurl=http://mirror.centos.org/centos/$releasever/updates/$basearch/

[extras]

name=CentOS-$releasever - Extras

mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras

#baseurl=http://mirror.centos.org/centos/$releasever/extras/$basearch/

gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6


epel源不变


4、部署tower

解压缩软件包

tar -zxfansible-tower-setup-latest.tar.gz


设置主机信息

[root@ansible-server ansible-tower-setup-3.0.3]# ll

total 64

-rw-rw-r--. 1 1004 1004 203 Oct 31 21:58 ansible.cfg

-rw-rw-r--. 1 1004 1004 128 Oct 31 21:58 backup.yml

drwxrwxr-x. 2 1004 1004 4096 Oct 31 21:58 group_vars

-rw-rw-r--. 1 1004 1004 4781 Oct 31 21:58 install.yml

-rw-rw-r--. 1 1004 1004 194 Oct 31 21:58 inventory

-rw-r--r--. 1 root root 194 Dec 26 21:24 inventory.bak

drwxrwxr-x. 2 1004 1004 12288 Oct 31 21:58 licenses

-rw-rw-r--. 1 1004 1004 2510 Oct 31 21:58 README.md

-rw-rw-r--. 1 1004 1004 233 Oct 31 21:58 restore.yml

drwxrwxr-x. 18 1004 1004 4096 Oct 31 21:58 roles

-rwxrwxr-x. 1 1004 1004 9461 Oct 31 21:58 setup.sh


[root@ansible-server ansible-tower-setup-3.0.3]# sed -i "s#password=''#password='admin'#g" inventory

[root@ansible-server ansible-tower-setup-3.0.3]# sed -i "s#host=''#host='127.0.0.1'#g" inventory

[root@ansible-server ansible-tower-setup-3.0.3]# sed -i "s#port=''#port='5432'#g" inventory


配置软件源

[root@ansible-serveransible-tower-setup-3.0.3]# sed -i 's#dl.fedoraproject.org/pub#mirrors.ustc.edu.cn#g' roles/packages_el/defaults/main.yml

[root@ansible-server ansible-tower-setup-3.0.3]# sed -i 's/#baseurl=/baseurl=/g' roles/packages_el/files/epel-6.repo

[root@ansible-server ansible-tower-setup-3.0.3]# sed -i 's/mirrorlist=/#mirrorlist=/g' roles/packages_el/files/epel-6.repo

[root@ansible-server ansible-tower-setup-3.0.3]# sed -i 's#download.fedoraproject.org/pub#mirrors.ustc.edu.cn#g' roles/packages_el/files/epel-6.repo

[root@ansible-server ansible-tower-setup-3.0.3]# yum -y install centos-release-scl-rh centos-release-scl


[root@ansible-server ansible-tower-setup-3.0.3]# sed -i 's#mirror.centos.org#centos.ustc.edu.cn#g' /etc/yum.repos.d/CentOS-SCLo-scl.repo

[root@ansible-server ansible-tower-setup-3.0.3]# sed -i 's#mirror.centos.org#centos.ustc.edu.cn#g' /etc/yum.repos.d/CentOS-SCLo-scl-rh.repo


[root@ansible-server ansible-tower-setup-3.0.3]# yum -y install supervisor


安装tower

为了防止出现内存过小的报错,修改preflight的tasks文件

[root@ansible-server ansible-tower-setup-3.0.3]# vi roles/preflight/tasks/main.yml

修改下面一行

minimum_var_space: 10000000000

把参数修改到尽量小

minimum_var_space: 100000000


default目录下也是同理

[root@ansible-server ansible-tower-setup-3.0.3]# vi roles/preflight/defaults/main.yml

修改下面一行

minimum_var_space: 10000000000

把参数修改到尽量小

[root@ansible-server ansible-tower-setup-3.0.3]#./setup.sh


如果出现preflight安装的错误,删除roles/preflight/tasks/main.yml文件再尝试

当然也可能因为网络的原因出现timeout的错误,不过没关系再次尝试


如果网络没有问题的话还回出现类似于下面所示的报错:

TASK [awx_install : Migrate the Tower database schema (may take awhile when upgrading).] ***

提示数据库连接不上,解决办法:

启动postgresql

#service postgresql-9.4 initdb

#service postgresql-9.4 start

#chkconfig postgresql-9.4 on


创建用户

# su - postgres

-bash-4.1$ psql

psql (8.4.20)

Type "help" for help.

postgres=# \password postgres;

Enter new password:

Enter it again:

postgres=# CREATE ROLE awx CREATEDB PASSWORD 'admin' LOGIN;

CREATE ROLE

postgres-# \q


[root@ansible-server ~]# sed -i 's#peer#md5#g' /var/lib/pgsql/data/pg_hba.conf

[root@ansible-server ~]# sed -i 's#ident#md5#g' /var/lib/pgsql/data/pg_hba.conf


[root@ansible-server ~]# service postgresql-9.4restart

Stopping postgresql service: [ OK ]

Starting postgresql service: [ OK ]


测试awx用户连接,输入密码连接,并创建数据库

[root@ansible-server pgsql]# psql -U awx -d postgres -h 127.0.0.1

Password for user awx:

Type "help" for help.


postgres=> create database awx;

CREATE DATABASE

postgres=> \q


再次执行安装过程

[root@ansible-server ansible-tower-setup-3.0.3]# ./setup.sh

最后出现安装成功的提示说明tower安装完成


三、导入licenses

安装完成后就可以通过https://IP/#来访问你的tower界面了,这里的IP是安装tower的服务器IP

访问如下图所示:

wKiom1hryJaSdTsFAACpbOEP_Z0153.png-wh_50


接下来导入我们申请的license

wKioL1hryQbyAa0fAADgNHmneic477.png-wh_50


wKiom1hryR_wS6byAAC00jI9rvA430.png-wh_50


提交后就可以进入tower的管理页面了

wKioL1hryVmCqO-BAAC5hGWwOPg853.png-wh_50


参考文档:

http://www.jianshu.com/p/1c6aa6ceeca6

centos6.5安装自动化工具ansible和图形化工具tower的更多相关文章

  1. osx – 无法创建目录/ var / teamsserver

    OpenSSH_6.2p2,OSSLShim0.9.8r8Dec2011debug1:Readingconfigurationdata/etc/ssh_configdebug1:/etc/ssh_configline20:Applyingoptionsfor*debug1:Connectingto1.2.3.4[1.2.3.4]portPORT.debug1:Connectionestablished.Couldnotcreatedirectory‘/var/teamsserver/.ssh’.debug

  2. ios – Xcode Server 4.0 git从构建触发脚本推送

    我为一个托管在github上的项目安装了一个XcodeBot.我按照步骤和设置机器人来使用我现有的SSH密钥.验证成功,项目结算和建立.然后,我在预触发器操作中添加了一个shell脚本,它增加了plist中的版本,将其标记,并将该更改提交到github.但是当我尝试从shell脚本执行gitpush时,我得到:–推送到git@github.com:spex-app/spex-ios.git权限被拒

  3. xcode – 为什么Jenkins在我的Mac上运行不会连接到本地的git repo?

    我正在尝试使用Jenkins实现自动化构建,用于我的iOS项目.我添加了Git插件,但是一旦我尝试将git的URL放在项目的git配置中,它会在下面的屏幕截图中显示错误.这里Jenkins不能从repo克隆到其工作空间.解决方法在大多数情况下,gitbarerepo有扩展名.git我的意思是(其他)/test1看起来不正确,我认为应该是(其他)/test1.git在我的mac上有同样的错误.

  4. 哪些Xcode项目文件可以从我的git repo中排除?

    我正在开发一个iOS项目,并使用git进行版本控制.我正在与另一位开发人员合作.我应该保留哪些Xcode项目文件在repo中,哪些可以排除,这样不会对其他开发者产生负面影响?这里有一些非代码文件,git告诉我已被修改或添加…

  5. ios – Xcode上传错误:无法打开ssh会话. (16)

    注意:我们终于上传了该应用程序,但是我们并没有真正解决这个问题,所以如果有人可以分享一些有关这个问题的宝贵意见或经验,我将不胜感激.我也检查了以下2个类似的问题,但这些没有帮助:>Erroruploadingiosapplicationtoitunesconnect“failedtoopensshsession(16)”>AppStoresubmission/distributionerror“f

  6. Xcode 4:使用Git repo commit版本在每个构建上更新CFBundleVersion

    我正在将Xcode4与Git结合使用,并希望在每个版本的Info.plist中增加CFBundLeversion.密钥CFBundLeversion的值应更新为我对Git存储库的最后一次提交的数量.我发现thatpython脚本运行良好,但遗憾的是它没有更新我的Xcode项目中的Info.plist–它只是更新了“BUILT_PRODUCTS_DIR”中的Info.plist.有没有人知道如何让Xcode4获取最新提交的版本并将该信息放入项目的Info.plist中?

  7. swift详解之二十--------在xcode中使用git管理源代码,将代码提交到github

    在xcode中使用git管理源代码,将代码提交到github本文记录一下如何在Xcode中使用Git作为源代码控制工具,以及如何将本地的Git仓库和远程Github上的仓库集成起来,虽然这章节和swift没有关系,但我还是放在这里。对详细的git操作可以看在Xcode中使用Git进行源码控制讲得很详细,很好。将xcode与github链接起来。

  8. 使用OSC生成SSH

    在很多项目开始前,大家可能都愿意把项目或者自己封装的代码放到github上,但是有一点蛋疼的就是如果要在github上新建私有的项目是要收费的,所以我选择了OSC,这个不仅可以吧github的项目转接到OSC上,而且OSC还可新建私有的项目。好了,牛逼不吹了,开始下面部署SSH的步骤。第一步访问git.oschina.net,注册自己的账号第二步访问如下界面第三步打开终端第四步查看公钥第五步第六步如果你看到了这个WelcometoGit@OSC,yourname!标识,就说明成功了。

  9. 如何使用“repo”克隆最小的android源码?

    我可以使用“repo”工具克隆Android源代码.但是,我想要做的是以比没有11GB足迹的更小的方式克隆源代码.它似乎下载了与每个Android设备和每个先前版本相关的内容.我试过想通过检查这样的特定分支来减少这个:然而,最终发生的事情是,我仍然只涉及一个特定的快照(可理解).但有没有办法限制克隆的数量?

  10. android – Gradle自定义存储库和依赖项解析

    我正在开发的项目需要scribe-java和crashlytics库.这两个库都可以从自定义存储库中获得.build.gradle看起来像:使用这样的设置存储库解决方案在构建过程中变得混乱,以至于gradle尝试从不适当的存储库中解析工件:它试图从scribe存储库中检索crashlytics文件.解决方法按声明的顺序搜索存储库,直到找到依赖关系.如果在scribe存储库中搜索crashlytics库,则意味着在crashlytics存储库中找不到它.

随机推荐

  1. 在airgapped(离线)CentOS 6系统上安装yum软件包

    我有一个CentOS6系统,出于安全考虑,它已经被空气泄漏.它可能从未连接到互联网,如果有,它很长时间没有更新.我想将所有.rpm软件包放在一个驱动器上,这样它们就可以脱机安装而无需查询互联网.但是,我在测试VM上遇到的问题是,即使指定了本地路径,yum仍然会挂起并尝试从在线存储库进行更新.另外,有没有办法使用yum-utils/yumdownloader轻松获取该包的所有依赖项和所有依赖项?目前

  2. centos – 命名在日志旋转后停止记录到rsyslog

    CentOS6.2,绑定9.7.3,rsyslog4.6.2我最近设置了一个服务器,我注意到在日志轮换后,named已停止记录到/var/log/messages.我认为这很奇怪,因为所有日志记录都是通过rsyslog进行的,并且named不会直接写入日志文件.这更奇怪,因为我在更新区域文件后命名了HUPed,但它仍然没有记录.在我停止并重新启动命名后,记录恢复.这里发生了什么?

  3. centos – 显示错误的磁盘大小

    对于其中一个磁盘,Df-h在我的服务器上显示错误的空白区域:Cpanel表明它只有34GB免费,但还有更多.几分钟前,我删除了超过80GB的日志文件.所以,我确信它完全错了.fdisk-l/dev/sda2也显示错误:如果没有格式化,我该怎么做才能解决这个问题?并且打开文件描述符就是它需要使用才能做到这一点.所以…使用“lsof”并查找已删除的文件.重新启动写入日志文件的服务,你很可能会看到空间可用.

  4. 如何在centos 6.9上安装docker-ce 17?

    我目前正在尝试在centOS6.9服务器上安装docker-ce17,但是,当运行yuminstalldocker-ce时,我收到以下错误:如果我用跳过的标志运行它我仍然得到相同的消息,有没有人知道这方面的方法?

  5. centos – 闲置工作站的异常负载平均值

    我有一个新的工作站,具有不寻常的高负载平均值.机器规格是:>至强cpu>256GB的RAM>4x512GBSSD连接到LSI2108RAID控制器我从livecd安装了CentOS6.564位,配置了分区,网络,用户/组,并安装了一些软件,如开发工具和MATLAB.在启动几分钟后,工作站负载平均值的值介于0.5到0.9之间.但它没有做任何事情.因此我无法理解为什么负载平均值如此之高.你能帮我诊断一下这个问题吗?

  6. centos – Cryptsetup luks – 检查内核是否支持aes-xts-plain64密码

    我在CentOS5上使用cryptsetupluks加密加密了一堆硬盘.一切都很好,直到我将系统升级到CentOS6.现在我再也无法安装磁盘了.使用我的关键短语装载:我收到此错误:在/var/log/messages中:有关如何装载的任何想法?找到解决方案问题是驱动器使用大约512个字符长的交互式关键短语加密.出于某种原因,CentOS6中的新内核模块在由旧版本创建时无法正确读取512个字符的加密密钥.似乎只会影响内核或cryptsetup的不同版本,因为在同一系统上创建和打开时,512字符的密钥将起作用

  7. centos – 大量ssh登录尝试

    22个我今天登录CentOS盒找到以下内容这是过去3天内的11次登录尝试.WTF?请注意,这是我从我的提供商处获得的全新IP,该盒子是全新的.我还没有发布任何关于此框的内容.为什么我会进行如此大量的登录尝试?是某种IP/端口扫描?基本上有4名匪徒,其中2名来自中国,1名来自香港,1名来自Verizon.这只发生在SSH上.HTTP上没有问题.我应该将罪魁祸首子网路由吗?你们有什么建议?

  8. centos – kswap使用100%的CPU,即使有100GB的RAM也可用

    >Linux内核是否应该足够智能,只需从内存中清除旧缓存页而不是启动kswap?

  9. centos – Azure将VM从A2 / 3调整为DS2 v2

    我正在尝试调整前一段时间创建的几个AzureVM,从基本的A3和标准A3到标准的DS2v2.我似乎没有能力调整到这个大小的VM.必须从头开始重建服务器会有点痛苦.如果它有所不同我在VM中运行CentOS,每个都有一个带有应用程序和操作系统的磁盘.任何人都可以告诉我是否可以在不删除磁盘的情况下删除VM,创建新VM然后将磁盘附加到新VM?

  10. centos – 广泛使用RAM时服务器计算速度减慢

    我在非常具体的情况下遇到服务器速度下降的问题.事实是:>1)我使用计算应用WRF>2)我使用双XeonE5-2620v3和128GBRAM(NUMA架构–可能与问题有关!

返回
顶部