shell脚本自动部署nignx反向代理及web服务器,共享存储

#!/bin/bash

systemctl status nginx
var=$?
if [ $var -eq 4 ]
    then
        yum install epel-release -y
        if [$? -ne 0 ]
            then
                echo "epel库安装失败,无可用nginx源"
        else
            yum install nginx -y
            if [ $? -eq 0 ]
                then
                    systemctl start nginx
                if [ $? -eq 0 ]
                    then echo "nginx start ok"
                else
                    echo "nginx start fail"
                fi
            else
                echo "nginx install fail"
            fi
        fi
elif [ $var -eq 3 ]
    then
        systemctl start nginx
    if [ $? -eq 0 ]
        then
            echo "nginx start ok"
    else
        echo "nginx start fail"
    fi
elif [ $var -eq 0 ]
   then
        echo "nginx is OK"
else
    echo
        "nginx can‘t be installed"
fi
echo "修改配置文件"
grep ‘upstream‘ /etc/nginx/nginx.conf
if(($? != 0))
    then
    sed -ri ‘/^http/a upstream pythonweb {‘ /etc/nginx/nginx.conf
    sed -ri ‘/^upst/a server 192.168.211.136 weight=3\;‘ /etc/nginx/nginx.conf
    sed -ri ‘/^server 192.168.211.136/a server 192.168.211.137\;‘ /etc/nginx/nginx.conf
    sed -ri ‘/^server 192.168.211.137/a server 192.168.211.138\;‘ /etc/nginx/nginx.conf
    sed -ri ‘/^server 192.168.211.138/a \}‘ /etc/nginx/nginx.conf
    sed -ri ‘/^(\ +)(location)(\ )(\/)/a proxy_pass http:\/\/pythonweb\;‘ /etc/nginx/nginx.conf
fi
echo "配置文件修改成功"
echo "重新加载nginx"
systemctl reload nginx
if(($?==0))
    then
    echo "HTTP load balancer is OK!"
else
    echo "Sorry!!"
fi
systemctl status nfs-server
var1=$?
if(($var1==4))
    then
    yum install rpcbind nfs-utils -y
    if(($?==0))
        then
        systemctl start rpcbind nfs-server
        if(($?==0))
            then
            echo "Congratulations!! nfs start OK!!"
        else
            echo "Sorry is Fail!!!"
        fi
    else
        echo"sorry install is Fail!!!"

    fi
elif(($var1==3))
    then
    echo "nfs-server未执行"
    systemctl  start rpcbind nfs-server
    if(($?==0))
        then
        echo "Congratulations!! nfs start OK!!!"
    else
        echo "sorry!!"
    fi
elif(($var1==0))
    then
    echo "OKOKOK!!!"
else
    echo "I am so sorry"
fi
echo "修改配置文件"
test -d /share
if [ $? != 0 ]
   then
       mkdir /share
       chmod -R 777 /share
fi
echo "/share 192.168.16.0/24(rw,sync,fsid=0)" > /etc/exports
echo "配置文件修改成功"
echo "重新加载nfs-server"
systemctl reload nfs-server
if(($?==0))
    then
        echo "NFS service is OK!"
else
    echo "Sorry!!"
fi
时间: 2024-08-30 03:46:20

shell脚本自动部署nignx反向代理及web服务器,共享存储的相关文章

Shell脚本自动部署(编译)LAMP平台

Shell脚本自动部署(编译)LAMP平台 LAMP是当下非常流行的一套Web架构,我们可以在GNU/Linux下通过其他人打包的程序包来进行安装; 但是在生产环境中,很多时候都需要我们自己定制安装AMP,编译安装LAMP有以下几个优点 根据生产环境灵活定制程序 优化编译参数,提高性能 解决不必要的软件依赖 友情提示:对编译安装有疑问的朋友, 查看我以前写的博客:教你使用rpm.yum.编译等方式安装软件 点击此处获得更好的阅读体验 为什么要用脚本进行部署? 在很多情况下部署LAMP平台并不止一

使用shell脚本自动部署(发布,重起)maven(java)项目

项目结构如下图 一:系统环境 本机:10.4.18.3 服务器: 10.4.18.4,用户名: web02 二:初始化服务器环境 在服务器上的家目录创建目录deploy,deploy/profile mkdir -p /home/web01/deploy mkdir -p /home/web02/deploy/profile 安装jdk export JAVA_HOME=/home/web02/jdk1.7.0_67 三:源代码(这里演示了一个自己写的http web服务器) com.lala.

Shell脚本 自动部署 SpringBoot 应用

公司项目使用了SpringBoot.开发的应用需要自动上传到服务器.虽然目前对热部署还没完全掌握.先使用shell简化一下部署吧. # 上传密钥 sshLoginKey=/f/MyFile/root.key # 项目在本机的目录 MyProject=/d/MyProject/comment # 远程主机上的路径 RemoteHost=[email protected] RemotePath=$RemoteHost:/data/ if [ -f "$sshLoginKey" -a -d

nginx反向代理后端web服务器记录客户端ip地址

nginx在做反向代理的时候,后端的nginx web服务器log中记录的地址都是反向代理服务器的地址,无法查看客户端访问的真实ip. 在反向代理服务器的nginx.conf配置文件中进行配置. location /bbs { proxy_pass http://192.168.214.131/bbs; proxy_set_header Host $host; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarde

CentOS7通过shell脚本自动部署oracle12c

由于经常需要部署oracle12c环境,我就将部署过程编写成shell脚本来,提高安装部署的效率,自动安装部署的脚本分为两部分,第一部分oracle_software.sh的作用是安装oracle软件环境:第二部分是listener_dbca.sh,作用是安装监听.配置oracle系统启停服务.配置数据库实例,临时表空间,数据表空间及授权.完成这两个脚本之后,最后的操作就是将待导入的dmp备份文件上传到服务器,操作expdp还原即可.脚本的内容具体如下:oracle数据库自动安装部署脚本: [[

linux-nginx服务nfs服务nginx反向代理三台web

一:nginx服务 1.二进制安装nginx包 [[email protected] ~]# systemctl disable firewalld  #关闭Firewalls自启动 Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service. [[ema

Shell脚本-自动化部署反向代理、WEB、nfs

部署nginx反向代理三个web服务,调度算法使用加权轮询(由于物理原因只开启两台服务器) AutoNginxNfsService.sh #/bin/bash systemctl status nginx if(($?==4)) then yum install -y nginx if(($?==0)) then #echo 'Yes!' systemctl start nginx if(($?==0)) then echo "Congratulations!! Nginx start OK!!

linux开发脚本自动部署及监控

开发脚本自动部署及监控 1.编写脚本自动部署反向代理.web.nfs: 要求: I.部署nginx反向代理三个web服务,调度算法使用加权轮询: #!/bin/sh ngxStatus=`ps aux | grep -v grep |grep -c nginx` function ngxProxyInstall() { if [ -e /usr/sbin/nginx ];then echo "nginx already installed" exit 110 else yum inst

Day11.开发脚本自动部署及监控

1.编写脚本自动部署反向代理.web.nfs:要求:I.部署nginx反向代理三个web服务,调度算法使用加权轮询: II.所有web服务使用共享存储nfs,保证所有web都对其有读写权限,保证数据一致性: 2.编写监控脚本,监控nginx,nfs存活状态,内存使用率检测,异常则发送报警邮件 准备发送邮件的工具: 监控脚本的编写: 继续编写刚才的脚本编写,加入邮件功能 3.编写计划任务,定时运行监控脚本,完成监控操作