服务器端

#!/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. tomcat 7.0 最大连接数和线程设置

    部署项目时需要根据服务器配置调整连接数 <Connector port="8080" protocol="HTTP/1.1"URIEncoding=&qu ...

  2. 禁用selinux

    查看selinux状态: [root@VM000000518 upload]# getenforce Enforcing 禁用: [root@VM000000518 upload]# setenfor ...

  3. Pair Programming 2

    学生-社团匹配程序 项目流程: 1. 分析讨论 2. 分工合作 3. 代码规范 4. 编码实现 5. 模块结合 6. 测试修改 7. 数据样例 8. 心得体会 9. GitHub链接 结对队友:陈文举 ...

  4. EasyUI设置选中复选框

    //设置选中 $('#isBind').prop('checked', true); //获取是否选中 var isChecked = $('#isBind').prop('checked'); if ...

  5. 自己定义控件-DragButton

    版权声明:本文为博主原创文章.欢迎转载,转载请注明博主和原文链接. https://blog.csdn.net/u014077888/article/details/28097273 一.描写叙述 可 ...

  6. Jolt的是使用

    1:简单入门例子 其中1为输入数据,其中2为spec,也就是输出json的格式规范,3为输出数据.重点关注4和5即可: 其中4是rating.quality.value的表示,rating.quali ...

  7. 帝国CMS 列表模板页面 list.var 内容截取

    每天学习一点点 编程PDF电子书免费下载: http://www.shitanlife.com/code list.var 中没有好的办法,只能用程序代码来实现.将整个HTML以一个变量来拼接.如下: ...

  8. linux(centos 7)下安装elasticsearch - head插件(端口占用,防火墙关闭)

    本文章来自网络仅供个人学习记录之用 一:安装Git(如果未安装) 1, yum install git 2, git --version #查看版本 二:安装node(如果未安装) node安装 三: ...

  9. 2、JUC--CAS算法

     CAS (Compare-And-Swap) 是一种硬件对并发的支持,针对多处理器操作而设计的处理器中的一种特殊指令,用于管理对共享数据的并发访问. CAS 是一种无锁的非阻塞算法的实现. C ...

  10. 2017-2018-2 20155314《网络对抗技术》Exp6 信息搜集与漏洞扫描

    2017-2018-2 20155314<网络对抗技术>Exp6 信息搜集与漏洞扫描 目录 实验目标 实验内容 实验环境 基础问题回答 预备知识 实验步骤 1 信息搜集 1.1 外围信息搜 ...