RHCE作业---- ansible(二)

RHCE作业---- ansible(二)

  • 1、给受管主机部署yum仓库
  • 2、给web主机组写一个playbook,该playbook有两个play,第一个play可以保证在web主机组上安装httpd和php,确保web主机组的/var/www/html/目录下面有一个文件为index.php
  • 3、在受控节点上添加一个普通用户xiaohong,配置当前控制节点的用户可以免密登录xiaohong用户,并且xiaohong可以sudo。

1、给受管主机部署yum仓库

仓库1

Name: base
​ Description: baseos
​ Base url: https://mirrors.163.com/centos-vault/8.5.2111/BaseOS/x86_64/os/

​ 需要验证软件包 GPG 签名
​ GPG key 在 /etc/pki/rpm-gpg/RPM-GPG-KEY-*
​ 启用此软件仓库

仓库 2

Name: app
Description: appstream
Base url: https://mirrors.163.com/centos-vault/8.5.2111/AppStream/x86_64/os/

需要验证软件包 GPG 签名
GPG key 在: /etc/pki/rpm-gpg/RPM-GPG-KEY-*
启用此软件仓库

检查你自己的linux系统版本,并选择相应版本仓库。
部署成功后在受管主机上安装vsftpd软件包

1)首先确保该工作路径下存在ansible.conf和inventory文件并且配置正确
2)然后vim 一个 .yml 的文件
[admin@master test1]$ vim 1-create-yum.yml
---
- name: play1
  hosts: all
  tasks:
    - name: create base
      yum_repository:
        name: base
        description: baseos
        baseurl: https://mirrors.aliyun.com/centos-vault/8.2.2004/BaseOS/x86_64/os/
        gpgcheck: yes
    - name: create appstream
      yum_repository:
        name: app
        description: appstream
        baseurl: https://mirrors.aliyun.com/centos-vault/8.2.2004/AppStream/x86_64/os/
        gpgcheck: yes
    - name: install vsftpd
      yum:
        name: vsftpd
        state: latest

2、给web主机组写一个playbook,该playbook有两个play,第一个play可以保证在web主机组上安装httpd和php,确保web主机组的/var/www/html/目录下面有一个文件为index.php

$ cat /var/www/html/index.php
<?php
phpinfo();

其中该playbook里面的第二个play用于测试该web主机组的web服务能否被成功访问index.php内容

1)首先去配置文件里面去设置web组

master
node01

[web]
master
node01

2)然后去配置一个.yml文件

---
- name: play1
  hosts: web
  tasks:
    - name: install httpd
      yum:
        name:
          - httpd
          - php
        state: latest
    - name: create index
      copy:
        content: "\nphpinfo();\n"
        dest: /var/www/html/index.php
    - name: delete index.html
      file:
        path: /var/www/html/index.html
        state: absent
    - name: add a firewalld rule
      firewalld:
        service: http
        permanent: true
        state: enabled
        immediate: true
    - name: restart httpd
      service:
        name: httpd
        state: restarted

- name: play2
  hosts: master
  tasks:
    - name: ceshi master
      uri:
        url: http://master

3、在受控节点上添加一个普通用户xiaohong,配置当前控制节点的用户可以免密登录xiaohong用户,并且xiaohong可以sudo。

1)在控制节点上配置.yml文件

[admin@master test1]$ vim 3-useradd.yml
---
- name: play1
  hosts: node01
  tasks:
    - name: useradd xiaohong
      user:
        name: xiaohong
        state: present

    - name: xiaohong sudoers
      lineinfile:
        line: "xiaohong ALL=(ALL) NOPASSWD:ALL"
        path: /etc/sudoers
    - authorized_key:
        state: present
        user: xiaohong
        key: "{{ lookup('file', '/home/admin/.ssh/id_rsa.pub') }}"

2)结果验证
RHCE作业---- ansible(二)_第1张图片

你可能感兴趣的:(RHCE,linux,运维,服务器)