服务器端

#!/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. char/varchar/nvarchar的区别

    原文:https://blog.csdn.net/w516162189/article/details/78914035 我们在设计数据库的时候,需要根据需求场景选择合适的字段类型,对数据的执行效率有 ...

  2. CSS网页菜单

    <%@ Control Language="C#" AutoEventWireup="true" CodeFile="WebUserContro ...

  3. mysqlreport工具

    进行MySQL的配置优化,首先必须找出MySQL的性能瓶颈所在:而SHOW STATUS输出的报告正是用来计算性能瓶颈的参考数据.mysqlreport不像SHOW STATUS那样简单的罗列数据,而 ...

  4. 减少MySQL主从延迟的神器--并行复制大揭密

    1. 简介 MySQL 5.6引入了基于schema的并行复制,即如果binlog events操作的是不同schema的对象,不是DDL,且操作的对象没有对其他schema的foreign key关 ...

  5. V4L2 driver -整体架构

    我的uvc开源地址:gitee-uvc 字符设备驱动程序核心:V4L2本身就是一个字符设备,具有字符设备所有的特性,暴露接口给用户空间. V4L2 驱动核心:主要是构建一个内核中标准视频设备驱动的框架 ...

  6. Solr全文检索

    1.Solr的安装 .环境要求 jdk1.+tomcat8+solr5.5.0 .将以上的软件包上传到服务器 . 安装tomcat8(解压文件) tar -zxvf apache-tomcat-.ta ...

  7. 通信原理之OSI七层参考模型(一)

    1.什么是计算机网络 谈计算机通信原理当然离不开计算机网络,那么什么是计算机网络.官方定义:计算机网络是由两台或两台以上的计算机通过网络设备连接起来所组成的一个系统,在这个系统中计算机与计算机之间可以 ...

  8. JavaScript中数组的增删改查以及应用方式

    数组的增加方法 1.push()方法向数组中末尾添加一个元素,原数组改变 var arr=[1,2,3,4]; var arr1=arr.push(6); console.log(arr);//打印出 ...

  9. 使用CefSharp跳转页面不弹出页面:

    using CefSharp; using CefSharp.Wpf; namespace Common.Control { internal class CefSharpOpenPageSelf : ...

  10. 2019年京东Java研发岗社招面经(面试经历+真题总结+经验分享)!

    本篇先以日历形式回顾秋招之路,方便各位参考某厂的处理进度:然后是总结归纳春秋招Java面试题库:最后做个总结还有展望,开始新的征程~ 面试经历京东面试真题面试经验分享1.面试经历 2018年的冬季特别 ...