本文共 2537 字,大约阅读时间需要 8 分钟。
CentOS7安装nginx角色
被控节点:CentOS7
控制节点:Ansible2.9cd /etc/ansible/roles
如果在ansible.cfg中更改了默认的角色目录,根据你自己角色目录进行更改
ansible-galaxy init nginx_install
tar zxvf nginx_install.tar.gz
vim /etc/ansible/hosts
ansible_ssh_host 填写被控主机地址
ansible_ssh_user 填写被控主机用户 ansible_ssh_pass 填写被控主机登录密码[CentOS]host_A ansible_ssh_host= [CentOS:vars]ansible_ssh_user= ansible_ssh_pass= ansible_ssh_port= 22
---- hosts: CentOS remote_user: root roles: - nginx_install
defaults
└─main.yml files └─nginx-1.12.0.tar.gz handlers meta tasks ├─free_ports.yml ├─install.yml └─main.yml templates tests └─test.yml vars主任务
main.yml
---# tasks file for nginx_install- include: install.yml- include: free_ports.yml
安装任务
install.yml
--- #安装依赖包任务 - name: install dependency packages yum: name: "{ { packages }}" state: present #创建临时文件夹任务 - name: create nginx folder file: path: "{ { temp_nginx_path }}" state: directory #解压缩安装包文件任务 - name: unzip nginx install package unarchive: src: "{ { nginx_install_file }}" dest: "{ { temp_nginx_path }}" #在安装之前配置nginx,拷贝配置文件模板任务 - name: configure nginx template: src: nginx.conf.j2 dest: "{ {pre_nginx_conf}}" #执行配置nginx文件任务 - name: configure nginx shell: ./configure chdir="{ { temp_nginx_install_path}}" #源码安装nginx任务 - name: make install shell: make & make install chdir="{ { temp_nginx_install_path}}" #启动nginx任务 - name: start the nginx shell: "{ {nginx_path}}"
开放端口任务
free_ports.yml.yml
--- #开放80端口任务 - name: firewalld free http port firewalld: port: 80/tcp permanent: yes state: enabled #开放443端口任务 - name: firewalld free https port firewalld: port: 443/tcp permanent: yes state: enabled #更改完防火墙配置,重启防火墙任务 - name: restart firewall service: name: firewalld state: restarted
---# defaults file for nginx_install#nginx版本nginx_version: 1.12.0#nginx安装压缩包nginx_install_file: nginx-{ { nginx_version}}.tar.gz#压缩包下载地址nginx_download_url: https://nginx.org/download/{ { nginx_install_file}}#依赖packages: - gcc-c++ - pcre - pcre-devel - zlib - zlib-devel - openssl - openssl-devel#临时文件路径temp_nginx_path: /etc/temp/nginx#临时安装路径temp_nginx_install_path: /etc/temp/nginx/nginx-{ { nginx_version}}#安装前配置文件pre_nginx_conf: /etc/temp/nginx/nginx-{ { nginx_version}}/conf/nginx.conf#nginx启动目录nginx_path: /usr/local/nginx/sbin/nginx
转载地址:http://iqugn.baihongyu.com/