服务器端

#!/bin/bash

function nginx_install(){
if [[ -f /usr/sbin/nginx ]]; then
echo 'Nginx has been installed.'
exit
else
flag1=3
while [[ $flag1 -gt 0 ]]; do
yum install epel-release -y && yum install nginx -y
if [[ $? -ne 0 ]]; then
((flag1--))
else
echo 'Nginx has been installed.'
exit
fi
done
echo 'Nginx install failed.'
fi
systemctl start nginx
} function nginx_balancer(){
msg1='upstream myapp1 { server 192.168.60.129; server 192.168.60.130; server 192.168.60.131; }'
msg2='proxy_pass http://myapp1;'
sed -ri "/^http/a $msg1" /etc/nginx/nginx.conf
sed -ri "/^ *location \/ \{$/a $msg2" /etc/nginx/nginx.conf
systemctl reload nginx
} function nfs_install(){
rpm -qa |grep rpcbind >> /dev/null
if [[ $? -eq 0 ]]; then
echo 'RPCbind has been installed'
else
flag2=3
while [[ $flag2 -gt 0 ]]; do
yum install rpcbind -y
if [[ $? -ne 0 ]]; then
((flag2--))
else
echo 'RPCbind has been installed.'
exit
fi
done
echo 'RPCbind install failed.'
fi
rpm -qa |grep nfs-utils >> /dev/null
if [[ $? -eq 0 ]]; then
echo 'nfs-utils has been installed'
else
flag3=3
while [[ $flag3 -gt 0 ]]; do
yum install nfs-utils -y
if [[ $? -ne 0 ]]; then
((flag3--))
else
echo 'nfs-utils has been installed.'
exit
fi
done
echo 'nfs-utils install failed.'
fi
} function nfs_server(){
mkdir /share
touch /share/index.html
echo '---NFS---Hello---' > /share/index.html
chmod -R o+w /share
echo '/share 192.168.60.0/24(rw,sync,fsid=0)' >> /etc/exports
systemctl start rpcbind.service && systemctl start nfs-server.service
if [[ $? -eq 0 ]]; then
echo 'NFS server running.'
fi
systemctl enable rpcbind.service && systemctl enable nfs-server.service
} nginx_install
nginx_balancer
nfs_install
nfs_server

  

客户端

#!/bin/bash

function nginx_install(){
if [[ -f /usr/sbin/nginx ]]; then
echo 'Nginx has been installed.'
exit
else
flag1=3
while [[ $flag1 -gt 0 ]]; do
yum install epel-release -y && yum install nginx -y
if [[ $? -ne 0 ]]; then
((flag1--))
else
echo 'Nginx has been installed.'
exit
fi
done
echo 'Nginx install failed.'
fi
systemctl start nginx
} function nfs_install(){
rpm -qa |grep rpcbind >> /dev/null
if [[ $? -eq 0 ]]; then
echo 'RPCbind has been installed'
else
flag2=3
while [[ $flag2 -gt 0 ]]; do
yum install rpcbind -y
if [[ $? -ne 0 ]]; then
((flag2--))
else
echo 'RPCbind has been installed.'
exit
fi
done
echo 'RPCbind install failed.'
fi
rpm -qa |grep nfs-utils >> /dev/null
if [[ $? -eq 0 ]]; then
echo 'nfs-utils has been installed'
else
flag3=3
while [[ $flag3 -gt 0 ]]; do
yum install nfs-utils -y
if [[ $? -ne 0 ]]; then
((flag3--))
else
echo 'nfs-utils has been installed.'
exit
fi
done
echo 'nfs-utils install failed.'
fi
} function nfs_client(){
systemctl start rpcbind.service && systemctl start nfs-server.service
systemctl enable rpcbind.service && systemctl enable nfs-server.service
mount -t nfs 192.168.60.128:/share /usr/share/nginx/html/
df |grep 192.168.60.128 >> /dev/null
if [[ $? -eq 0 ]]; then
echo 'NFS client running.'
fi
} nginx_install
nfs_install
nfs_client

  

编写脚本自动部署反向代理、web、nfs的更多相关文章

  1. 脚本自动部署及监控 web

    1.编写脚本自动部署反向代理.web.nfs: I.部署nginx反向代理两个web服务,调度算法使用加权轮询 II.所有web服务使用共享存储nfs,保证所有web都对其有读写权限,保证数据一致性: ...

  2. shell脚本安装部署反向代理 监控进程 计划任务

    1.编写脚本自动部署反向代理.web.nfs: 要求: I.部署nginx反向代理三个web服务,调度算法使用加权轮询: 反向代理服务器脚本配置脚本 #!/bin/bash #安装eple和nginx ...

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

    部署nginx反向代理三个web服务,调度算法使用加权轮询(由于物理原因只开启两台服务器) AutoNginxNfsService.sh #/bin/bash systemctl status ngi ...

  4. linux基础 -nginx和nfs代理 开发脚本自动部署及监控

    开发脚本自动部署及监控 1.编写脚本自动部署反向代理.web.nfs: (1).部署nginx反向代理三个web服务,调度算法使用加权轮询:  (2).所有web服务使用共享存储nfs,保证所有web ...

  5. 010-- 开发脚本自动部署nginx_web和nfs及监控内存

    1.编写脚本自动部署反向代理.web.nfs: #!/bin/bash #检测安装nginx function detection_nginx(){ if [ -f /etc/nginx/nginx. ...

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

    linux开发脚本自动部署及监控 开发脚本自动部署及监控一.编写脚本自动部署反向代理.web.nfs:要求:1.部署nginx反向代理三个web服务,调度算法使用加权轮询: #!/bin/sh ngx ...

  7. Linux基础-----------nginx安装和nginx web、nginx反向代理、nfs 服务

    作业一:nginx服务1)二进制安装nginx包 yum install epel-release -y 先安装epel-release 再查看yum源中已经安装上了epel相关文件 中间省去了一些安 ...

  8. shell脚本自动部署及监控

    一.shell脚本部署nginx反向代理和三个web服务 1 对反向代理服务器进行配置 #!/bin/bash #修改用户交互页面 用户输入参数执行相应的参数 #安装epel扩展包和nginx fun ...

  9. 利用Nginx实现反向代理web服务器

    一.Nginx简介 Nginx是一个很强大的高性能Web服务器和反向代理服务器,它具有很多非常优越的特性: 可以高并发连接 内存消耗少 成本低廉 配置文件非常简单 支持Rewrite重写 内置的健康检 ...

随机推荐

  1. Linux-lvm逻辑卷管理和提示丢失pv物理卷

    问题描述: 有次在使用lvm扩容的时候,整错了,导致显示如下情况 提示缺少一个pv导致无法继续,pvdisplay的时候查看到unknown 使用pvs查看找到pvname的unknown对应群组ce ...

  2. 4.2Python数据类型(2)之布尔类型

    返回总目录 目录: 1.布尔类型的概念和分类: 2.布尔类型的本质 3.布尔类型的应用 (一)布尔类型的概念和分类: (1)概念: 布尔类型(bool)就是用于判断真假的数据类型 (2)分类: Pyt ...

  3. 【HTTP缓存】浏览器缓存理论知识

    时间:2016-12-12 17:51:30 作者: zhongxia 零.前言 这里主要写的是理论,具体实践的比较少,后期写一个实践教程,内容基本都是从参考文章里面抄过来的[看完文章,顺便写做下笔记 ...

  4. bootstrap-datepicker default value

    $('.selectDate').datepicker({ format : "yyyy/mm/dd", autoclose : true, startDate : new Dat ...

  5. el-table复选框分页记忆

    el-table 结合 el-pagination 实现分页后默认是没有复选框记忆功能的,对于这样的需求,无奈又只能硬着头皮上,试了网上的一些方法,没奏效,便自己上了. 简单的用法如下: <te ...

  6. Luogu P4705 玩游戏

    题目描述 Alice 和 Bob 又在玩游戏. 对于一次游戏,首先 Alice 获得一个长度为 ​ 的序列 ​,Bob 获得一个长度为 ​ 的序列 bb.之后他们各从自己的序列里随机取出一个数,分别设 ...

  7. VC++界面编程之--仿Facebook透明登录窗体

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/renstarone/article/details/27642765 1. 开发工具:VC++ DU ...

  8. UVA127-"Accordian" Patience(模拟)

    Problem UVA127-"Accordian" Patience Accept:3260  Submit:16060 Time Limit: 3000 mSec Proble ...

  9. [Jsoi2015]染色问题

    题目 看到这个限制条件有点多,我们就一直容斥好了 先容斥颜色,我们枚举至少不用\(i\)种颜色 再容斥列,我们枚举至少不用\(j\)列 最后容斥行,枚举至少不用\(k\)行 容斥系数显然是\((-1) ...

  10. js中typeof与instanceof用法小记

    今天写JS代码,遇到动态生成多个名称相同的input复选按钮 需要判断其是否是数组,用到了if (typeof(document.MapCheckMgr.checkid)!="undefin ...