在CentOS 7上使用Ansible安装Nginx

一、准备工作

  1. 安装Ansible (如果尚未安装):
    在Ansible控制节点(通常是你的本地机器或CI/CD服务器)上安装Ansible。

    sudo yum install epel-release
    sudo yum install ansible
    
  2. 设置Inventory:
    编辑或创建Ansible的inventory文件,列出你想在其上安装Nginx的所有CentOS 7目标主机。

    # inventory.ini
    [webservers]
    server1.example.com
    server2.example.com
    
    [webservers:vars]
    ansible_python_interpreter=/usr/bin/python3  # 如果系统默认不是Python 3
    

二、编写Playbook

  1. 创建Playbook:
    创建一个Ansible playbook,用来安装Nginx及其依赖项。

    # nginx_install.yml
    ---
    - name: Install Nginx on CentOS 7
      hosts: webservers
      become: yes
    
      tasks:
        - name: Install EPEL repository if not present
          package:
            name: epel-release
            state: present
    
        - name: Install necessary dependencies
          package:
            name:
              - gcc
              - gcc-c++
              - make
              - pcre-devel
              - zlib-devel
              - openssl-devel
            state: present
    
        - name: Add the Nginx repository
          yum_repository:
            name: nginx
            description: Nginx Repository
            baseurl: https://nginx.org/packages/centos/$releasever/$basearch/
            gpgcheck: no  # 或者提供GPG key来验证包签名
    
        - name: Install Nginx
          package:
            name: nginx
            state: latest
    
        - name: Start and enable Nginx service
          service:
            name: nginx
            state: started
            enabled: yes
    

三、执行Playbook

  1. 运行Playbook:
    使用ansible-playbook命令运行编写的playbook。

    ansible-playbook nginx_install.yml
    

四、注意点

  • 上述playbook中,首先添加EPEL仓库,因为Nginx的官方仓库并不一定包含在CentOS的基础仓库中。
  • Nginx的官方仓库URL应根据实际版本进行更新。
  • 若使用的是CentOS Stream,对应的Nginx仓库URL也会不同。
  • 如果已存在Nginx官方仓库或其他可用的包含Nginx的第三方仓库,可以跳过添加仓库的部分。
  • 如果目标主机对SSH访问有限制,需确保Ansible可以通过密钥对无密码登录或者已配置了适当的SSH凭证。

以上步骤适用于通过Ansible从官方或第三方仓库安装Nginx的情况。如果您希望从源码编译安装Nginx,那么playbook将包括下载源码、编译和安装的相关任务。

相关推荐

  1. CentOS 7使用Ansible安装Nginx

    2024-03-20 08:14:03       44 阅读
  2. CentOS 7快速安装配置Nginx

    2024-03-20 08:14:03       36 阅读
  3. CentOS 7 编译安装 Nginx 1.18

    2024-03-20 08:14:03       41 阅读
  4. centos7安装ansible的方法

    2024-03-20 08:14:03       34 阅读
  5. CentOS 7 安装 Nginx

    2024-03-20 08:14:03       59 阅读
  6. CentOS 7 安装 Nginx

    2024-03-20 08:14:03       50 阅读
  7. Centos 7 安装Nginx

    2024-03-20 08:14:03       57 阅读
  8. centos7安装nginx

    2024-03-20 08:14:03       44 阅读
  9. centos7 安装 nginx

    2024-03-20 08:14:03       30 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-03-20 08:14:03       94 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-03-20 08:14:03       101 阅读
  3. 在Django里面运行非项目文件

    2024-03-20 08:14:03       82 阅读
  4. Python语言-面向对象

    2024-03-20 08:14:03       91 阅读

热门阅读

  1. 策略模式在项目中实际应用

    2024-03-20 08:14:03       43 阅读
  2. C++系统设计题目

    2024-03-20 08:14:03       38 阅读
  3. 简述JVM

    简述JVM

    2024-03-20 08:14:03      32 阅读
  4. 每日一题-spring中的设计模式

    2024-03-20 08:14:03       37 阅读
  5. react hook: useRef

    2024-03-20 08:14:03       43 阅读
  6. ref&reactive vue3

    2024-03-20 08:14:03       36 阅读