我是靠谱客的博主 年轻唇彩,最近开发中收集的这篇文章主要介绍Ansible实战:Playbook编写,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

题目要求:

一、创建剧本 config_nginx.yml,完成以下功能:
1、安装nginx
2、提供默认主页
3、启动并开机自启服务

步骤:

  1. 创建 config_nginx.yml 文件
[root@student day2]# touch config_nginx.yml
  1. 按要求编写脚本
---
- hosts: all
  tasks: 
    - name: 1. install nginx
      yum: 
        name: nginx

    - name: 2. default page
      copy:
        content: 'This is my default page!n '
        dest: /var/www/html/index.html

    - name: 3. config services
      service: 
        name: nginx
        state: started
        enabled: yes

    - name: 4. firewalld
      firewalld:
        service: http
        permanent: yes
        immediate: yes
        state: enabled
  1. 对脚本进行语法检查或空运行
# 语法检查
[root@student day2]# ansible-playbook config_nginx.yml --syntax-check
# 空运行
[root@student day2]# ansible-playbook config_nginx.yml -C

PLAY [all] ************************************************************************

TASK [Gathering Facts] ************************************************************
ok: [student]
ok: [node3]
ok: [node1]
ok: [node2]

TASK [1. install nginx] ***********************************************************
ok: [node3]
ok: [node1]
ok: [node2]
ok: [student]

TASK [2. default page] ************************************************************
ok: [node3]
ok: [node1]
ok: [node2]
ok: [student]

TASK [3. config services] *********************************************************
ok: [node3]
ok: [node2]
ok: [node1]
ok: [student]

TASK [4. firewalld] ***************************************************************
ok: [node3]
ok: [node2]
ok: [node1]
ok: [student]

PLAY RECAP ************************************************************************
node1                      : ok=5    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
node2                      : ok=5    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
node3                      : ok=5    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
student                    : ok=5    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0
  1. 运行脚本
[root@student day2]# ansible-playbook config_nginx.yml

PLAY [all] ************************************************************************

TASK [Gathering Facts] ************************************************************
ok: [student]
ok: [node1]
ok: [node2]
ok: [node3]

TASK [1. install nginx] ***********************************************************
ok: [node1]
ok: [node2]
ok: [node3]
ok: [student]

TASK [2. default page] ************************************************************
ok: [node1]
ok: [node3]
ok: [node2]
ok: [student]

TASK [3. config services] *********************************************************
ok: [node1]
ok: [node3]
ok: [node2]
ok: [student]

TASK [4. firewalld] ***************************************************************
changed: [node2]
changed: [node1]
changed: [node3]
changed: [student]

PLAY RECAP ************************************************************************
node1                      : ok=5    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
node2                      : ok=5    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
node3                      : ok=5    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   
student                    : ok=5    changed=1    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0

二、创建一个名为packages.yml的剧本
1、在 dev,prod 和 test 主机组中安装 php 和 mariadb 软件包
2、在 dev 主机组中安装 Development Tools 包组
3、升级 dev 主机组中主机的所有软件包

步骤:

  1. 创建 packages.yml 文件
[root@student day2]# touch packages.yml
  1. 按要求编写脚本
---
- name: 1. #在 dev,prod 和 test 主机组中安装 php 和 mariadb 软件包
  hosts: dev,prod,test
  tasks:
    - name: 1.1 install php
      yum:
        name: php
    - name: 1.2 install mariadb
      yum:
        name: mariadb

- name: 2. #在 dev 主机组中安装 Development Tools 包组
  hosts: dev
  tasks:
    - name: install Development Tools
      yum:
        name: "@Development Tools"
        state: present

- name: 3. #升级 dev 主机组中主机的所有软件包
  hosts: dev
  tasks:
    - name: upgrade dev all software
      yum:
        name: "*"
        state: latest

最后

以上就是年轻唇彩为你收集整理的Ansible实战:Playbook编写的全部内容,希望文章能够帮你解决Ansible实战:Playbook编写所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(38)

评论列表共有 0 条评论

立即
投稿
返回
顶部