打不开公式编辑器(公式编辑器用不了)
543
2022-05-30
欢迎访问我的GitHub
这里分类和汇总了欣宸的全部原创(含配套源码):https://github.com/zq2599/blog_demos
关于ansible
ansible是常用的开源配置管理工具,简单易用,可以高效的帮助我们对服务器进行远程操作,下图来自ansible官网,可见一台安装了ansible的机器可以远程控制亚马逊的EC2、S3服务器:
官方文档:https://docs.ansible.com
环境
操作系统:CentOS Linux release 7.7.1908
ansible版本:2.4.2.0
本次实战用到两台机器,信息如下:
安装
root账号登录ansible机器,一行命令安装:
yum install -y ansible
查看版本:
[root@ansible playbooks]# ansible --version ansible 2.4.2.0 config file = /root/playbooks/ansible.cfg configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules'] ansible python module location = /usr/lib/python2.7/site-packages/ansible executable location = /usr/bin/ansible python version = 2.7.5 (default, Aug 7 2019, 00:51:29) [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)]
安装成功,接下来开始体验;
配置机器信息
root
账号登录ansible机器,创建文件夹
playbooks
;
playbooks
目录下创建名为hosts的文件,内容如下,
cdh-group
是群组名,该群组内有一个机器配置信息,包含名称、IP地址,SSH端口,SSH账号密码等:
[cdh-group] cdh002 ansible_host=192.168.133.162 ansible_port=22 ansible_user=root ansible_password=888888
playbooks
目录下创建名为
ansible.cfg
的文件,内容如下,这是个ansible的配置文件,执行ansible命令时用到,这里面指定了主机信息在hosts文件中查找:
[defaults] inventory = ~/playbooks/hosts host_key_checking = False
体验
root账号登录ansible机器,执行命令ansible cdh002 -m command -a “free -m”,如下所示,成功的输出了cdh002的内存信息:
[root@centos7 playbooks]# ansible cdh002 -m command -a "free -m" cdh002 | SUCCESS | rc=0 >> total used free shared buff/cache available Mem: 15866 9047 3674 21 3145 6500 Swap: 2047 0 2047
上述命令中,
-m command
是指使用command模块,
-a "free -m"
是要在test机器上执行的命令;
也可以省略
-m command
:
[root@centos7 playbooks]# ansible cdh002 -a "free -m" cdh002 | SUCCESS | rc=0 >> total used free shared buff/cache available Mem: 15866 9066 3648 21 3151 6480 Swap: 2047 0 2047
playbook实战
直接执行ansible命令虽然操作简单,但是不适合复杂的远程操作,这时候用脚本来配置和执行更合适,接下来编写一个脚本文件,再用ansible执行这个脚本文件,达到给cdh002机器安装应用
redhat-lsb
的目标;
在
/root/playbooks
文件夹下创建文件
test_install.yml
,内容如下:
- name: test cdh-group hosts: cdh-group gather_facts: True tasks: - debug: var=ansible_distribution - name: install redhat-lsb yum: name=redhat-lsb state=present
执行命令
ansible-playbook test_install.yml
,控制台信息如下,表示执行成功(changed=0表示本次实际上没有安装,因为该应用已经存在了):
验证
redhat-lsb
应用是否已在cdh002机器安装成功,如下图,操作系统信息成功输出,表示redhat-lsb安装成功:
更多命令
ansible支持丰富的命令,参考官方文档:https://docs.ansible.com/ansible/latest/modules/modules_by_category.html
至此,ansible2.4版本安装和体验都完成了,如果您想尝试ansible,希望本文能给您一些参考
欢迎关注华为云博客:程序员欣宸
学习路上,你不孤单,欣宸原创一路相伴…
DevOps
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。