【无标题】

部署web服务器

1、部署yum仓库
2、安装httpd
3、新建/www目录
4、在/www中新建index.html,内容为my name is guanbingjie
5、该web服务器的DocumentRoot为/www
5、实现在ansible中能够使用http://node1访问到该网页内容


[student@ansible ansible]$ cat guan.yml 
- name: create web service
  hosts: node1
  tasks:
    - name: mount mnt
      mount:
        src: /dev/cdrom
        path: /mnt
        fstype: iso9660
        state: mounted

    - name: yum_repo
      yum_repository:
        file: baseos
        name: aa
        description: aa
        baseurl: file:///mnt/BaseOS
        enabled: yes
        gpgcheck: no

    - name: yum_repo2
      yum_repository:
        file: appstream
        name: bb
        description: bb
        baseurl: file:///mnt/AppStream
        enabled: yes
        gpgcheck: no

    - name: install httpd
      yum:
        name: httpd
        state: present

    - name: create /www
      file:
        src: /var/www/html
        dest: /www
        state: link
        mode: 0775

    - name: create /www/index.html
      copy:
        content: "my name is guanbingjie\n"
        dest: /www/index.html

    - name: context
      file:
        path: /www/index.html
        setype: httpd_sys_content_t

    - name: httpd.conf
      replace:
        path: /etc/httpd/conf/httpd.conf
        regexp: 'DocumentRoot "/var/www/html"'
        replace: 'DocumentRoot "/www"'

    - name: httpd.conf2
      replace:
       path: /etc/httpd/conf/httpd.conf
       regexp: <Directory "/var/www">
       replace: <Directory "/www">

    - name: started httpd service
      service:
        name: httpd
        state: restarted
        enabled: yes
[student@ansible ansible]$ ansible-playbook guan.yml 

PLAY [create web service] ******************************************************

TASK [Gathering Facts] *********************************************************
ok: [node1]

TASK [mount mnt] ***************************************************************
ok: [node1]

TASK [yum_repo] ****************************************************************
changed: [node1]

TASK [yum_repo2] ***************************************************************
changed: [node1]

TASK [install httpd] ***********************************************************
ok: [node1]

TASK [create /www] *************************************************************
changed: [node1]

TASK [create /www/index.html] **************************************************
ok: [node1]

TASK [context] *****************************************************************
ok: [node1]

TASK [httpd.conf] **************************************************************
changed: [node1]

TASK [httpd.conf2] *************************************************************
changed: [node1]

TASK [started httpd service] ***************************************************
changed: [node1]

PLAY RECAP *********************************************************************
node1                      : ok=11   changed=6    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0 
在node1上查看
[root@node1 ~]# ss -antl
State    Recv-Q   Send-Q     Local Address:Port     Peer Address:Port  Process  
LISTEN   0        128              0.0.0.0:111           0.0.0.0:*                           
LISTEN   0        5              127.0.0.1:631           0.0.0.0:*              
LISTEN   0        128                 [::]:111              [::]:*              
LISTEN   0        128                    *:80                  *:*              
LISTEN   0        128                 [::]:22               [::]:* 
[student@ansible ansible]$ curl http://node1
my name is guanbingjie

二、使用notify…handlers

1、写一个剧本runtime.yml,只对node1操作
2、创建用户aa,该用户不能用于登录,家目录/www
3、在/www创建一个文件html
4、每次执行该剧本时,将系统的当前时间输入到html文件中。
5、如果html中的时间发生变化,那么创建/tmp/kk的文件

[student@ansible ansible]$ cat runtime.yml 
- name: create file
  hosts: node1
  tasks:
    - name: create user
      user:
        name: aa
        shell: /sbin/nologin
        home: /www

    - name: create html
      file:
        path: /www/html
        state: touch

    - name: date
      shell: date > /www/html
      notify:
        - kk

  handlers:
    - name: kk
      file:
        path: /tmp/kk
        state: touch

[student@ansible ansible]$ ansible-playbook runtime.yml 

PLAY [create file] *************************************************************

TASK [Gathering Facts] *********************************************************
ok: [node1]

TASK [create user] *************************************************************
changed: [node1]

TASK [create html] *************************************************************
changed: [node1]

TASK [date] ********************************************************************
changed: [node1]

RUNNING HANDLER [kk] ***********************************************************
changed: [node1]

PLAY RECAP *********************************************************************
node1                      : ok=5    changed=4    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值