博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
ansible剧本编写
阅读量:2337 次
发布时间:2019-05-10

本文共 2694 字,大约阅读时间需要 8 分钟。

剧本的编写方法

    剧本的作用: 可以一键化完成多个任务
    自动化部署rsync服务:
    服务端的操作
    第一个历程安装软件:
    ansible 172.16.1.41 -m yum -a "name=rsync state=installed"
    
    第二个历程编写文件:
    ansible 172.16.1.41 -m copy -a "src=/xxx/rsyncd.conf dest=/etc/"
    
    第三个历程创建用户
    ansible 172.16.1.41 -m user -a "name=rsync create_home=no shell=/sbin/nologin"
    
    第四个历程创建目录
    ansible 172.16.1.41 -m file -a "dest=/backup state=directory owner=rsync group=rsync"
    
    第五个历程创建密码文件
    ansible 172.16.1.41 -m copy -a "content='rsync_backup:test123' dest=/etc/rsync.password mode=600"
    
    第六个历程启动服务
    ansible 172.16.1.41 -m service -a "name=rsyncd state=started enabled=yes"
    
    客户端的操作:
    第一个历程: 创建密码文件
    ansible 客户端地址 -m copy -a "content='rsync_backup:test123' dest=/etc/rsync.password mode=600"
    
    剧本的做成部分:
    演员信息:    hosts
    干的事情:    tasks
    
    演员信息: 男二号
    干的事情: 看着
    
    剧本编写规范: pyyaml -- 三点要求
    1. 合理的信息缩进  两个空格表示一个缩进关系
       标题一
         标题二
           标题三
    PS: 在ansible中一定不能用tab进行缩进
 
    2. 冒号的使用方法
       hosts: 172.16.1.41
       tasks:
       yum: name=xx
    PS: 使用冒号时后面要有空格信息
        以冒号结尾,冒号信息出现在注释说明中,后面不需要加上空格
        
    3. 短横线应用 -(列表功能)
       - 张三
         男
           - 打游戏
           - 运动
              
       - 李四
         女
           学习
              湖南
       - 王五
         男
           运动
              深圳
    PS: 使用短横线构成列表信息,短横线后面需要有空格  
       
    开始编写剧本
    mkdir /etc/ansible/ansible-playbook
    vim rsync_server.ymal
    说明: 剧本文件扩展名尽量写为yaml
    1. 方便识别文件是一个剧本文件
    2. 文件编写时会有颜色提示    
- hosts: 172.16.1.41
  tasks:
    yum: name=rsync state=installed
    copy: src=/tmp/rsyncd.conf dest=/etc/
    
    如何执行剧本:
    第一个步骤: 检查剧本的语法格式
    ansible-playbook --syntax-check  rsync_server.yaml
    第二个步骤: 模拟执行剧本
    ansible-playbook -C rsync_server.yaml
    第三个步骤: 直接执行剧本   
    ansible-playbook rsync_server.yaml  

注:默认执行剧本的时候调用的主机清单是/etc/ansible/hosts文件,也可以指定识别主机清单,可以在主机清单中编写该服务的指定服务器

 ansible-playbook -i /etc/ansible/hosts_sersync rsync_server.yaml

完整剧本    

cat rsync_server.yaml 

- hosts: rsync_server  tasks:    - name: 01-install rsync        yum: name=rsync state=installed    - name: 02-push conf file          copy: src=/etc/ansible/server_file/rsync_server/rsyncd.conf dest=/etc/    - name: 03-create user      user: name=rsync create_home=no shell=/sbin/nologin      #shell: useradd rsync -M -s /sbin/nologin     - name: 04-create backup dir      file: path=/backup state=directory owner=rsync group=rsync    - name: 05-create password file      copy: content=rsync_backup:oldboy123 dest=/etc/rsync.password mode=600    - name: 06-start rsync server      service: name=rsyncd state=started enabled=yes- hosts: rsync_clients  tasks:    - name: 01-install rsync      yum: name=rsync state=installed    - name: 02-create password file      copy: content=oldboy123 dest=/etc/rsync.password mode=600    - name: 03-create test file      file: dest=/tmp/test.txt  state=touch    - name: 04-check test      shell: rsync -avz /tmp/test.txt rsync_backup@172.16.1.41::backup --password-file=/etc/rsync.password

剧本编写常见错误:

    01. 剧本语法规范是否符合(空格 冒号 短横线)
    02. 剧本中模块使用是否正确
    03. 剧本中一个name标识下面只能写一个模块任务信息
    04. 剧本中尽量不要大量使用shell模块

转载地址:http://chepb.baihongyu.com/

你可能感兴趣的文章
Longest Consecutive Sequence
查看>>
Surrounded Regions
查看>>
Palindrome Partitioning
查看>>
Palindrome Partitioning II
查看>>
Clone Graph
查看>>
Gas Station
查看>>
Candy
查看>>
Single Number
查看>>
SetForeGroundWindow
查看>>
判断程序执行用户和活动用户是否一致
查看>>
Com引起计数
查看>>
IHTMLDocument2 IE浏览器编程
查看>>
C/C++中指针和引用之相关问题研究
查看>>
一些AIX问题,自动logout
查看>>
AIX操作系统及HACMP群集系统安装步骤
查看>>
AIX资源监控与调制工具
查看>>
aix里面怎么查看实际的磁盘空间
查看>>
银行AIX日常维护内容
查看>>
AIX 安全命令
查看>>
AIX故障定位
查看>>