Ansible学习笔记

Ansible
  1、安装:
    yum install -y ansible
  
  2、使用:
    cd /etc/ansible/
    vim hosts
    ansible all -m ping 
    ansible all -a "date"
    -f 并行默认5, -m 模块默认命令, -a 命令
     ansible all -m command -a "service httpd status"
     
  3、ansible-doc -l
     将本地文件批量上传到服务器
     ansible-doc -s copy
     ansible dbservers -m copy -a "src=/root/tmp_test_20180207.txt dest=/tmp/"   #-f强制可替换已存在文件
     报错: "msg": "Aborting, target uses selinux but python bindings (libselinux-python) aren't installed!"
     ansible dbservers -m command -a "rpm -q |grep libselinux-python" 
     ansible dbservers -m command -a "yum install -y libselinux-python" 
     再次执行成功
     ansible dbservers -m command -a "getenforce"   #是enforce,需要关闭selinux
     ansible dbservers -m command -a "ls -l /tmp/tmp_test_20180207.txt" 

  4、ansible all -m cron -a 'name="custom job" minute=*/5 hour=* day=* month=* weekday=* job="/usr/sbin/ntpdate 210.72.145.44"'
  
  5、开机自动启动:
      ansible all -a "chkconfig --list iptables"
      ansible all -a "service iptables status"
      
  6、YAML
             [root@db10 ~]# cat test.yaml 
        - hosts: all
          remote_user: root
          tasks: 
           - name: add a group
             group: gid=1000 name=testgroup system=no
           - name: excute a command
             command: /bin/date
  7、上传并执行脚本的两条语句
      ansible all -m copy -a "src=/root/test.sh dest=/tmp/ owner=root group=root mode=0755"
      ansible all  -m shell -a "sh /tmp/test.sh"  ######脚本中的命令一定要写全路径
      
      -m 常用模块 command  copy  shell service cron  file      blockinfile  
      
  8、查看启动的端口:
      ansible all   -a "ss -tnl"

 

posted on 2018-02-09 11:42  星期六男爵  阅读(106)  评论(0编辑  收藏  举报

导航