主页 > 软件开发  > 

云计算架构学习之Ansible-playbook实战、Ansible-流程控制、Ansible-字典循环-rol

云计算架构学习之Ansible-playbook实战、Ansible-流程控制、Ansible-字典循环-rol
一、Ansible-playbook实战 1.Ansible-playbook安装软件

```bash #编写yml [root@ansible ansible]# cat wget.yml - hosts: backup   tasks:     - name: Install wget       yum:         name: wget         state: present          #检查playbook的语法 [root@ansible ansible]# ansible-playbook  --syntax-check wget.yml playbook: wget.yml

#执行playbook [root@ansible ansible]# ansible-playbook wget.yml

2.Playbook重构backup服务

```bash 1.定义主机清单 [root@ansible ansible]# cat /etc/ansible/hosts nfs ansible_ssh_host=10.0.0.31 backup ansible_ssh_host=10.0.0.41

2.写playbook重构 [root@ansible ansible]# cat backup.yml - hosts: backup   tasks:     - name: Install Rsync Server       yum:         name: rsync         state: present

    - name: Configure Rsync Server       copy:         src: rsyncd.conf         dest: /etc/rsyncd.conf

    - name: Create Group       group:         name:         gid: 666

    - name: Create User       user:         name:         uid: 666         group:         shell: /sbin/nologin         create_home: false           - name: Configure passwd file       copy:         content: rsync_backup:123456         dest: /etc/rsync.passwd         mode: 0600

    - name: Create Dir /backup       file:         path: /backup         state: directory         owner:         group:

    - name: Start Rsync Server       systemd:         name: rsyncd         state: started         enabled: yes

3.playbook重构nfs服务

```bash 1.定义主机清单 [root@ansible ansible]# cat /etc/ansible/hosts nfs ansible_ssh_host=10.0.0.31 backup ansible_ssh_host=10.0.0.41

2.打通免秘钥 [root@ansible ~]# ssh-copy-id 10.0.0.31 3.写playbook [root@ansible ansible]# cat nfs.yml - hosts: nfs   tasks:     - name: Install NFS Server       yum:         name: nfs-utils         state: present

    - name: Configure nfs Server       copy:         src: exports         dest: /etc/

    - name: Create Group       group:         name:         gid: 666

    - name: Create User       user:         name:         uid: 666         group:         shell: /sbin/nologin         create_home: false

    - name: Create /data/wp       file:         path: /data/wp         state: directory         owner:         group:

    - name: Start NFS Server       systemd:         name: nfs         state: started         enabled: yes

客户端挂载: [root@ansible ansible]# cat web.yml - hosts: web01   tasks:     - name: Install nfs-utils       yum:         name: nfs-utils         state: present

    - name: mount nfs /data/wp-->wordpress       mount:         src: 172.16.1.31:/data/wp         path: /code/wordpress/wp-content/uploads/         state: mounted         fstype: nfs

```

4.Playbook重构nginx-php(250218更新)

5.Playbook重构mariadb

6.整合playbook文件

二、Ansible-流程控制 1.vars变量定义方法

2.vars变量定义方法

3.变量注册

4.when判断语法格式

5.when判断案例

6.handlers模块

7.nfs服务重构

三、Ansible-字典循环-roles角色 1.字典循环

2.tasks任务整合到一个文件

3.jinja2的循环和判断语法

4.rsync使用jinja2模版重构

5.Roles角色重新编排rsync

6.Roele角色重新编排nfs

标签:

云计算架构学习之Ansible-playbook实战、Ansible-流程控制、Ansible-字典循环-rol由讯客互联软件开发栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“云计算架构学习之Ansible-playbook实战、Ansible-流程控制、Ansible-字典循环-rol