首页 > 其他 > 详细

Ansible权威指南笔记_第3章 Ansible Ad-Hoc命令集

时间:2020-05-07 13:55:05      阅读:60      评论:0      收藏:0      [点我收藏+]

## 第3章 Ansible Ad-Hoc命令集

临时命令

Ad-Hoc命令集介绍

```bash
-v,--verbose:输出更详细的执行过程信息,--vvv可得到执行过程所有信息。
-f NUM,--forks=NUM:并发线程数,默认5个线程
--private-key=PRIVATE_KEY_FILE:指定密钥文件
-M
-k
-K
-o
-t
-T
-B NUM,--background=NUM:后台执行命令,超NUM秒后中止正在执行的任务
-P NUM,--poll=NUM:定期返回后台任务进度。
-c CONNECTION,--connection=CONNECTION:指定连接方式,可用选项paramiko(SSH),ssh,local,local方式常用于crontab和kickstarts。
-l ~SUBSET,--limit=SUBSET:指定运行主,
-l ~REGEX,--limit=REGEX:指定运行主机
--list-hosts:列出符合条件的主机列表,不执行任何命令
#情景
ansible proxy -f 5 -m ping #检查proxy组所有主机是否存活。
ansible proxy -s -m command - a ‘hostname‘ -vvv
ansible web --list
time ansible 10.21.40.61 -B 5 -P 2 -T 2 -m command -a ‘sleep 20‘ -u root
```

ansible-doc

```bash
--version:显示工具版本号
-h,--help
-M MODULE_PATH,--module-path=MODULE_PATH:指定ansible模块的加载模块
-l,--list:
-s,--snippet:
-v:

```

Ad-Hoc配置管理:配置proxy和webservers实践

```bash
# 情景
ansible 10.5.40.159 -i hosts -m yum -a ‘name=vim state=present‘
ansible 10.5.40.159 -i hosts -m service -a "name=ntpd state=started enabled=yes"
#yum 其他2种安装(网络和本地指定版本)
ansible 10.5.40.159 -i hosts -m yum -a ‘name=http://nginx.org/..//..e16.ngx.noarch.rpm state=present‘
ansible 10.5.40.159 -i hosts -m yum -a ‘name=/usr/local/..//..e16.ngx.noarch.rpm state=present‘
#实例配置管理webservers
##1)Nginx、php安装命令如下
ansible app -m yum -a "name=nginx state=present"
ansible app -m yum -a "name=php state=present"
##2)安装Mysql-python和python-setuptools
ansible app -m yum -a "name=MySQL-python state=present"
ansible app -m yum -a "name=python-setuptools state=present"
##3)django 安装命令如下
ansible app -m pip -a "name=django state=present"
##4)检查Django是否安装正常
ansible app -m command -a "python -c ‘import django; print django.get_version()‘"
```

Ad-Hoc配置后端:配置NoSQL与database servers实践

```BASH
步骤1:添加yum源,vim编辑/etc/yum.repo.d/mariadb.repo添加内容如下
步骤2:安装MariaDB-server,
ansible db -m yum -a “name=MariaDB-server state=present”
步骤3:安装MariaDB-client,
ansible db -m yum -a “name=MariaDB-client state=present”
步骤4:开启防火墙3306访问权限。
ansible db -m command -a "iptables -A INPUT -S 192.168.37.0/24 -p tcp -m tcp --dport 3306 -j ACCEPT"
```

Ad-Hoc特定主机变更

```
1)--limit:通过limit参数限定主机做变更
ansible app -m command -a "service ntpd status" --limit "192..168.37.158"
2)指定ip:
ansible 192.168.37.58 -m command -a "service ntpd status"
3)用“:”作分隔符,指定多台机器做变更
ansible "192.168.37.58:192.168.37.158" -m command -a "service ntpd status"
4)通过“*”泛匹配,更灵活地针对多台主机做变更
ansible 192.168.37.* -m command -a "service ntpd status"

```

Ad-Hoc用户与组管理

```bash
#ansible系统用户模块有如下两个
## Linux系统用户管理:user
## windows用户管理:win_user
### 新增用户
ansible db -m user -a "name=dba shell=/bin/bash groups=admins,dbagroup append=yes home=/home/dba/ state=present"
### 修改用户
ansible db -muser -a "name=dba groups=dbagroup append=no"
### 修改用户属性
ansible db -m user -a "name=dba state=absent remove=yes"
### 变更用户密码
ansible db -m user -a "name=tom shell=/bin/bash password=to46pW3GOukvA update_password=always"#密文
#Windows用户管理
ansible windows -m win_user -a "name=stanley passwd=magedu@123 group=Administrators"
#account_disabled,account_locked.groups,name,password_expired,user_cannot_change_password

```

应用层管理

```bash
#新增mysql用户
ansible db -m mysql_user -a ‘login_host=localhost login_password=magedu login_user=root name=stanley password=magedu@bj priv=zabbix.*:ALL state=present‘

```

Ansible权威指南笔记_第3章 Ansible Ad-Hoc命令集

原文:https://www.cnblogs.com/landerhu/p/12842234.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!