redhat(11)-Ansible(1)-临时命令-单一PLAYBOOK的实现

功能:1.临时命令: 对受控机运行单条命令。
           2.playbook:单一任务的多机实现。
           
1.临时命令
2.单一playbook

 


1.临时命令
   
   临时命令实现的前提是ansible环境已经部署好了。参看前篇.主要是ansible.cfg和inventory文件。
   1.1 查看配置

ansible all  --list-hosts            #查看默认路径下的主机名
ansible all  -i files --list-hosts   #-i files 指定配置文件
ansible group -i webs --list-hosts   #group -i 列举组为webs的主机名  ungroup为非组

  1.2临时命令示例
   
a.模块 :ansible-doc -l  查看所有模块

ansible localhost -m  user     -a  'name=u1 uid=4000 state=present' 
#       受控主机名     用户     参数  u1用户存在

   b.command命令:-a参数无单引号

ansible servera   -m command  -a  /usr/bin/hostname -o 
#                                 查看主机名         -o以单行格式输出

1.3 受控主机用户sudo权限设置 
      become用前 要设置被控机用户的sudo权限。
     
用户设置为sudo配置。比如user1要有sudo权限,且无需密码身份验证
     创建一个文件名为user1的文件,放在 /etc/sudoers.d/文件夹下 ,
     内容如下:     

user1 ALL=(ALL) NOPASSWD: ALL

 

ansible serverb -m copy -a 'content="managed by ansible" dest=/etc/motd' -u user1 --become
#                           添加的内容                    被更改文件               权限

2. 单一playbook
   关键字 name,hosts,tasks(name下面一行为“模块”或“命令”,之后是参数)
       2.1 编写site.yml示例
       

---
- name: Install and start Apache HTTPD
  hosts: web
  tasks:
    - name: httpd package is present  #此处缩进4个空格
      yum:
        name: httpd
        state: present
    - name: correct index.html is present
      copy:
        src: /home/student/files/index/html
        dest: /var/www/html/index.html
    - name: httpd is started
      service:
        name: httpd
        state: started
        enabled: true


   2.2 检查和运行site.yml文件
   

ansible-playbook  --syntax-check site.yml
ansible-playbook site.yml

2.3验证结果
 

curl serverc.lab.example.com
curl serverd.lab.example.com



 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值