前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >ansible-playbook源代码批量部署nginx

ansible-playbook源代码批量部署nginx

作者头像
kevinfaith
发布2020-01-21 10:33:32
9190
发布2020-01-21 10:33:32
举报
文章被收录于专栏:kevin-blogkevin-blogkevin-blog
简介

家里的服务器新开了两台虚拟机,想做nginx负载均衡的实验,但是要重新安装各种服务,就很麻烦,正好最近学了ansible-playbook,就想试着写一下一键部署脚本

代码

具体的安装方式我前几篇博客已经说了 话不都说,上代码

vi installnginx.yml
- hosts: test2
  remote_user: root
  tasks:    #这后面千万不要加空格,不知道被哪家的教程坑了,我拍错了一个多小时
  - name: mkdir nginx
    file: path=/home/nginx state=directory
  - name: copynginx package
    copy: src=./nginx-1.12.0.tar.gz  dest=/home/nginx-1.12.0.tar.gz  ##拉取nginx解压吧
    tags: cppkg
  - name: tar-nginx
    shell: cd /home;tar -zxf nginx-1.12.0.tar.gz  ##解压nginx包
  - name: installpakger
    yum: name={{ item }} state=latest    ##安装依赖包
    with_items:
      - openssl-devel
      - pcre-devel
      - zlib-devel
      - gcc
      - gcc-c++
  - name: installnginx
    shell: cd /home/nginx-1.12.0;./configure --prefix=/home/nginx --user=nginx --group=nginx --with-http_ssl_module --with-http_stub_status_module --with-http_gzip_static_module --with-http_realip_module  --with-pcre;make&& make install      ####编译安装
  - name: copyshell
    copy: src=./create_users.sh dest=/home/create_users.sh  ##拉取创建用户的shell脚本
  - name: createuser nginx
    shell: /bin/bash /home/create_users.sh
    tags: addnginx
    notify: start nginx servic
    handler:
  - name: start nginx service
    shell: /home/nginx/sbin/nginx


创建用户脚本
vi create_users.sh
#!/bin/bash
ab=sudo cat /etc/passwd |grep nginx |wc -c
查找系统中有没有nginx用户
if [ $ab==0 ]; then
        sudo groupadd nginx
        sudo useradd -g nginx -s /sbin/nologin nginx
fi

创建主机清单

➜  vi hosts
[test2]
192.168.30.105  ansible_ssh_user=root
192.168.30.107  ansible_ssh_user=root

➜  ansible ansible -i ./hosts test2 --list
  hosts (2):
    192.168.30.105
    192.168.30.107

#然后下载nginx源代码包
   ➜ wget http://mirrors.sohu.com/nginx/nginx-1.12.0.tar.gz
#执行
ansible-playbook -i ./hosts 2.yml

等待一会就好了

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-03-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 简介
  • 代码
相关产品与服务
负载均衡
负载均衡(Cloud Load Balancer,CLB)提供安全快捷的流量分发服务,访问流量经由 CLB 可以自动分配到云中的多台后端服务器上,扩展系统的服务能力并消除单点故障。负载均衡支持亿级连接和千万级并发,可轻松应对大流量访问,满足业务需求。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档