发表于 2018-7-29 14:11:52

rhel7 ansible 自动化部署示例

---###起始行  
- name: Copy yum repo file   -->拷贝文件,放置在files目录中
  
copy: src=docker.repo dest=/etc/yum.repos.d/docker.repo
  

  
- name: Copy docker images -->拷贝目录
  
copy: src=images/ dest=/tmp/images/
  

  
- name: Copy container config files -->批量拷贝
  
   copy: src={{ item.src }} dest={{ item.dest }}
  
   with_items:
  
      - src: config/jobservice/
  
          dest: /apps/conf/harbor/jobservice/
  
      - src: config/ui/{{ use_by }}/ -->引用全局变量
  
          dest: /apps/conf/harbor/ui/
  
      - src: config/nginx/
  
          dest: /apps/conf/harbor/nginx/
  

  
- name: Import docker images-->批量执行命令
  
command: docker load -i {{ item }}
  
    with_items:
  
      - /tmp/images/golang.tar
  
      - /tmp/images/deploy_log.tar
  
      - /tmp/images/deploy_jobservice.tar
  
      - file: path=/var/log/harbor_jobservice_audit.log state=touch mode="u=rw,g=r,o=r"-->创建文件
  

  
- lineinfile: dest=/etc/resolv.conf line="nameserver 192.168.209.254"-->增加目标主机resolv.conf 的nameserver解析
  

  
- lineinfile: dest=/etc/resolv.conf state=absent regexp="10.199.129.21" -->删除10.199.129.21域名解析
  

  
- lineinfile: dest=/apps/conf/harbor/ui/env regexp='^HA_PROXY_ADDR=' line='HA_PROXY_ADDR={{ domain_name }}'   -->引用全局变量替换内容
  

  
- replace: dest=/apps/conf/harbor/nginx/nginx.conf regexp='(.*upstream registry.*{.*\n.*)server.*' replace='\1server {{ registry_url}};' -->替换upstream registry后一行内容
  

  
- lineinfile: dest=/apps/conf/harbor/registry/config.ymlregexp='(.*rootdirectory:)' line='\1 {{ rootdirectory }}' backrefs=yes -->引用并替换内容
  

  
- name: Delete restart file -->删除文件
  
file: path=~/restart_docker.sh state=absent
  

  
- name: Yum makecache-->执行linux命令
  
command: yum makecache
  

  
- name: Install docker-->安装软件
  
yum: name=docker state=latest
  

  
- name: Update docker config file-->使用模板替换文件
  
template: src=docker.j2 dest=/etc/sysconfig/docker
  

  
- name: Enable docker service   -->启动服务
  
service: name=docker enabled=yes state=started
页: [1]
查看完整版本: rhel7 ansible 自动化部署示例