nginx部署+反向代理
#!/bin/bash
#function: Centos7一键安装nginux
#author:999vip 20211117
touch /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '1c #!/bin/bash' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '2c #description : start realserver ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
echo 请输入VIP地址
read abc
sed -i '3c SNS_VIP='$abc' #定义了一个VIP变量,必须跟真是服务在一个网段 ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '4c /etc/rc.d/init.d/functions ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '5c case "$1" in ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '6c start) ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '7c echo " start LVS of REALServer" ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '8c /sbin/ifconfig lo:0 $SNS_VIP broadcast $SNS_VIP netmask 255.255.255.255 up #增加一个本地路由 lo:0 ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '9c echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '10c echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '11c echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '12c echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '13c ;; ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '14c stop) ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '15c /sbin/ifconfig lo:0 down ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '16c echo "close LVS Directorserver" ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '17c echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '18c echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '19c echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '20c echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '21c ;; ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '22c *) ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '23c echo "Usage: $0 {start|stop}" ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '24c exit 1 ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '25c esac ' /etc/init.d/realserver
chmod 777 /etc/init.d/realserver
service realserver start
love=$(ifconfig ens33|grep "inet "|awk '{print $2}')
yum -y install gcc gcc-c++ autoconf automake libtool make openssl openssl-devel pcre pcre-devel #安装nginx所需环境
cd /usr/local/src/ #切换到安装目录
wget http://nginx.org/download/nginx-1.8.1.tar.gz #下载nginx到当前目录
tar -zxvf nginx-1.8.1.tar.gz #解压nginx安装包
cd nginx-1.8.1 #进入解压后目录
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre #编译文件
make && make install #编译安装
cd /usr/local/nginx #进入nginx安装目录
sed -i '14s/nginx/BDQN/' /usr/local/nginx/html/index.html #方便测试区分将网页中nginx改为BDQN
/usr/local/nginx/sbin/nginx #启动nginx服务
echo nginx部署完成,请测试web页面 #屏幕输出内容提醒用户
echo 接下来将部署反向代理,请确认是否继续 #屏幕输出内容提醒用户
read a
echo 请输入第一台tomcat服务器IP地址
read b
echo 请输入第二台tomcat服务器IP地址,如果没有请重复第一台IP
read c
sed -i '18 s/^/upstream backend{server '$b':8080;server '$c':8080;} n/' /usr/local/nginx/conf/nginx.conf
sed -i '45 s/^/ n/' /usr/local/nginx/conf/nginx.conf
sed -i '45c proxy_pass http://backend;' /usr/local/nginx/conf/nginx.conf
/usr/local/nginx/sbin/nginx -s reload
/usr/local/nginx/sbin/nginx -s reopen
echo 反向部署代理完成,请访问$love测试
#function: Centos7一键安装nginux
#author:999vip 20211117
touch /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '1c #!/bin/bash' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '2c #description : start realserver ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
echo 请输入VIP地址
read abc
sed -i '3c SNS_VIP='$abc' #定义了一个VIP变量,必须跟真是服务在一个网段 ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '4c /etc/rc.d/init.d/functions ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '5c case "$1" in ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '6c start) ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '7c echo " start LVS of REALServer" ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '8c /sbin/ifconfig lo:0 $SNS_VIP broadcast $SNS_VIP netmask 255.255.255.255 up #增加一个本地路由 lo:0 ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '9c echo "1" >/proc/sys/net/ipv4/conf/lo/arp_ignore ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '10c echo "2" >/proc/sys/net/ipv4/conf/lo/arp_announce ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '11c echo "1" >/proc/sys/net/ipv4/conf/all/arp_ignore ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '12c echo "2" >/proc/sys/net/ipv4/conf/all/arp_announce ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '13c ;; ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '14c stop) ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '15c /sbin/ifconfig lo:0 down ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '16c echo "close LVS Directorserver" ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '17c echo "0" >/proc/sys/net/ipv4/conf/lo/arp_ignore ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '18c echo "0" >/proc/sys/net/ipv4/conf/lo/arp_announce ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '19c echo "0" >/proc/sys/net/ipv4/conf/all/arp_ignore ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '20c echo "0" >/proc/sys/net/ipv4/conf/all/arp_announce ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '21c ;; ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '22c *) ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '23c echo "Usage: $0 {start|stop}" ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '24c exit 1 ' /etc/init.d/realserver
echo "999vip" >> /etc/init.d/realserver
sed -i '25c esac ' /etc/init.d/realserver
chmod 777 /etc/init.d/realserver
service realserver start
love=$(ifconfig ens33|grep "inet "|awk '{print $2}')
yum -y install gcc gcc-c++ autoconf automake libtool make openssl openssl-devel pcre pcre-devel #安装nginx所需环境
cd /usr/local/src/ #切换到安装目录
wget http://nginx.org/download/nginx-1.8.1.tar.gz #下载nginx到当前目录
tar -zxvf nginx-1.8.1.tar.gz #解压nginx安装包
cd nginx-1.8.1 #进入解压后目录
./configure --prefix=/usr/local/nginx --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --with-pcre #编译文件
make && make install #编译安装
cd /usr/local/nginx #进入nginx安装目录
sed -i '14s/nginx/BDQN/' /usr/local/nginx/html/index.html #方便测试区分将网页中nginx改为BDQN
/usr/local/nginx/sbin/nginx #启动nginx服务
echo nginx部署完成,请测试web页面 #屏幕输出内容提醒用户
echo 接下来将部署反向代理,请确认是否继续 #屏幕输出内容提醒用户
read a
echo 请输入第一台tomcat服务器IP地址
read b
echo 请输入第二台tomcat服务器IP地址,如果没有请重复第一台IP
read c
sed -i '18 s/^/upstream backend{server '$b':8080;server '$c':8080;} n/' /usr/local/nginx/conf/nginx.conf
sed -i '45 s/^/ n/' /usr/local/nginx/conf/nginx.conf
sed -i '45c proxy_pass http://backend;' /usr/local/nginx/conf/nginx.conf
/usr/local/nginx/sbin/nginx -s reload
/usr/local/nginx/sbin/nginx -s reopen
echo 反向部署代理完成,请访问$love测试
上一技术:if语句chkvsftp.sh
下一技术:centos7tomcat一键部署