Nginx web proxy NFS服务
1.nginx web 安装 配置
#systemctl stop firewalld
#systemctl disabled firewalld
#wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
#yum install nginx -y
#echo "welcome to china" >/usr/share/nginx/html/index.html
#systemctl start nginx.service
#curl 192.168.16.95
welcome to china
2.nginx proxy
proxy 192.168.16.95
web01 192.168.16.186
web02 192.168.16.187 #web01操作
[root@web01 ~]# yum install nginx -y
[root@web01 ~]# echo "welcome to web01" >/usr/share/nginx/html/index.html
[root@web01 ~]# systemctl start nginx.service
[root@web01 ~]# curl 192.168.16.186
welcome to web01 #web02操作
[root@web02 ~]# systemctl stop firewalld
[root@web02 ~]# echo "welcome to web02" >/usr/share/nginx/html/index.html
[root@web02 ~]# systemctl start nginx.service
[root@web02 ~]# curl 192.168.16.187
welcome to web02 #proxy 操作
[root@proxy ~]# vim /etc/nginx/nginx.conf
http {
upstream web {
server 192.168.16.186;
server 192.168.16.187;
} server {
listen 80; location / {
proxy_pass http://web;
}
}
}
[root@proxy ~]# systemctl reload nginx.service #其它服务器curl
bogon:~ centos$ curl 192.168.16.95
welcome to web01
bogon:~ centos$ curl 192.168.16.95
welcome to web02
2.nginx 调度 轮询 权重 hash
#轮询
http {
upstream myapp1 {
server srv1.example.com;
server srv2.example.com;
server srv3.example.com;
} server {
listen 80; location / {
proxy_pass http://myapp1;
}
}
} #权重
http {
upstream myapp1 {
server srv1.example.com weight=3;
server srv2.example.com;
server srv3.example.com;
}
server {
listen 80; location / {
proxy_pass http://myapp1;
}
}
} #hash http {
upstream myapp1 {
ip_hash;
server srv1.example.com;
server srv2.example.com;
server srv3.example.com;
}
server {
listen 80; location / {
proxy_pass http://myapp1;
}
}
}
4.nfs服务
#环境准备
nfs服务端 192.168.16.95
web01 192.168.16.186
web02 192.168.16.187 #nfs服务端
[root@proxy ~]# cat /etc/exports
/share 192.168.16.0/24(rw,sync,fsid=0)
[root@proxy ~]# mkdir /share
[root@proxy ~]# chmod o+w /share
[root@proxy ~]# cat /etc/exports
/share 192.168.16.0/24(rw,sync,fsid=0)
[root@proxy ~]# mkdir /share
[root@proxy ~]# chmod o+w /share
[root@proxy ~]# systemctl start rpcbind.service
[root@proxy ~]# systemctl start nfs-server.service
[root@proxy ~]# echo "192.168.16.95 proxy" >>/etc/hosts
[root@proxy ~]# exportfs
/share 192.168.16.0/24
[root@proxy ~]# showmount -e
Export list for proxy:
/share 192.168.16.187/24,192.168.16.186/24 #web01 操作
[root@bogon ~]# yum install rpcbind nfs-utils -y
[root@web01 ~]# systemctl start rpcbind.service
[root@web01 ~]# systemctl start nfs-server.service
[root@web01 ~]# showmount -e 192.168.16.95
Export list for 192.168.16.95:
/share 192.168.16.187/24,192.168.16.186/24
[root@web01 ~]# mount -t nfs 192.168.16.95:/share /usr/share/nginx/html/
[root@web01 ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/cl-root 18G 4.6G 13G 26% /
devtmpfs 473M 0 473M 0% /dev
tmpfs 489M 0 489M 0% /dev/shm
tmpfs 489M 7.1M 482M 2% /run
tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/sda1 509M 169M 341M 34% /boot
tmpfs 98M 0 98M 0% /run/user/0
192.168.16.95:/share 18G 5.0G 13G 29% /usr/share/nginx/html #web02 操作
[root@bogon ~]# yum install rpcbind nfs-utils -y
[root@web02 ~]# systemctl start rpcbind.service
[root@web02 ~]# systemctl start nfs-server.service
[root@web02 ~]# showmount -e 192.168.16.95
Export list for 192.168.16.95:
/share 192.168.16.187/24,192.168.16.186/24
[root@web01 ~]# mount -t nfs 192.168.16.95:/share /usr/share/nginx/html/
[root@web02 ~]# mount -t nfs 192.168.16.95:/share /usr/share/nginx/html/
[root@web02 ~]# df -h
文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/cl-root 18G 4.6G 13G 26% /
devtmpfs 473M 0 473M 0% /dev
tmpfs 489M 0 489M 0% /dev/shm
tmpfs 489M 7.1M 482M 2% /run
tmpfs 489M 0 489M 0% /sys/fs/cgroup
/dev/sda1 509M 169M 341M 34% /boot
tmpfs 98M 0 98M 0% /run/user/0
192.168.16.95:/share 18G 5.0G 13G 29% /usr/share/nginx/html #proxy创建文件 web01 web02 查看
[root@proxy share]# echo "Nginx" >/share/index.html [root@web01 html]# cat /usr/share/nginx/html/index.html
Nginx [root@web02 ~]# cat /usr/share/nginx/html/index.html
Nginx
5.nginx反向代理+两台web+nfs共享存储实现集群配置
#在实验2和3的基础上 #在浏览器上访问proxy 192.168.16.95 #在web01上查看
[root@web01 html]# tail -f /var/log/nginx/access.log
192.168.16.95 - - [20/Mar/2017:17:10:21 +0800] "GET / HTTP/1.0" 304 0 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36" "-" #在web02上查看
[root@web02 html]# tail -f /var/log/nginx/access.log
192.168.16.95 - - [20/Mar/2017:17:10:17 +0800] "GET / HTTP/1.0" 200 6 "-" "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_3) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/56.0.2924.87 Safari/537.36" "-" #浏览器访问proxy,后端的两台nginx会轮询得到nfs服务器的文件
6. 源码安装nginx
[root@web01 html]#yum remove nginx
[root@web01 html]#useradd -s /sbin/nologin -M www
[root@web01 html]#yum -y install pcre pcre-devel openssl openssl-devel
[root@web01 html]#wget http://nginx.org/download/nginx-1.10.3.tar.gz
[root@web01 ~]# tar xf nginx-1.10.3.tar.gz
[root@web01 nginx-1.10.3]# cd nginx-1.10.3/
[root@web01 nginx-1.10.3]#./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_ssl_module --with-http_stub_status_module --with-file-aio --with-stream
[root@web01]#make && make install
[root@web01~]#/usr/local/nginx/sbin/nginx -t
[root@web01~]#nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
[root@web01~]#nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful
[root@web01 ~]# echo "Hello Word" > /usr/local/nginx/html/index.html
[root@web01 ~]# /usr/local/nginx/sbin/nginx
[root@web01 ~]# curl 192.168.16.186
Hello Word
Nginx web proxy NFS服务的更多相关文章
- Windows下Nginx+Web.py+FastCGI服务搭建
在搭建之前,有必要了解下什么是fastcgi,但鉴于我自己也不大了解,这里就不搬门弄斧了,请参考各种百科和官网资料. 1.资源下载 python下载地址:戳这里webpy下载地址:戳这里flup下载地 ...
- Linux基础-----------nginx安装和nginx web、nginx反向代理、nfs 服务
作业一:nginx服务1)二进制安装nginx包 yum install epel-release -y 先安装epel-release 再查看yum源中已经安装上了epel相关文件 中间省去了一些安 ...
- linux---nginx服务nfs服务nginx反向代理三台web
一:nginx服务 1.二进制安装nginx包 [root@bogon ~]# systemctl disable firewalld #关闭Firewalls自启动 Removed symlink ...
- 07 nginx反向代理和nfs服务
作业一:nginx服务二进制安装nginx包 作为web服务修改配置文件 让配置生效,验证配置 作业二:nfs服务二进制安装nfs作为共享存储挂载在三台web的网站根目录下实现,在任意一台web上修改 ...
- day10 nfs服务,nginx负载均衡,定时任务
==================nginx 负载均衡==================== 实现nginx负载均衡的效果,并运用nfs服务共享目录,使所有nginx服务拥有共同的http目录 n ...
- nginx nfs服务
一.nginx服务 1.二进制安装nginx包 [root@bogon ~]# ls /etc/yum.repos.d/ [root@bogon ~]# cd /etc/yum.repos.d/ [r ...
- 2-4、nginx特性及基础概念-nginx web服务配置详解
Nginx Nginx:engine X 调用了libevent:高性能的网络库 epoll():基于事件驱动event的网络库文件 Nginx的特性: 模块化设计.较好扩展性(不支持模块动态装卸载, ...
- Linux实战教学笔记37:企业级Nginx Web服务优化实战(上)
一,Nginx基本安全优化 1.1 调整参数隐藏Nginx软件版本号信息 一般来说,软件的漏洞都和版本有关,这个很像汽车的缺陷,同一批次的要有问题就都有问题,别的批次可能就都是好的.因此,我们应尽量隐 ...
- linux基础之nginx和nfs服务
第一部分: 一.nginx服务安装nginx包(源码安装)1.先cd /etc/yum.repos.d目录下2.yum install epel-release -y(安装扩展包)3.yum in ...
随机推荐
- BZOJ1877:[SDOI2009]晨跑——题解
http://www.lydsy.com/JudgeOnline/problem.php?id=1877 https://www.luogu.org/problemnew/show/P2153 Ela ...
- UVA.12096 The SetStack Computer ( 好题 栈 STL混合应用)
UVA.12096 The SetStack Computer ( 好题 栈 STL混合应用) 题意分析 绝对的好题. 先说做完此题的收获: 1.对数据结构又有了宏观的上的认识; 2.熟悉了常用STL ...
- SRM16 B-2(DP)
老鼠和洞按坐标排序 f[i][j]表示前i个洞进j只老鼠的最短距离 比赛的时候强行分三类去推式子,推是推出来了,也看出来是可以用三个单调队列去优化的,但是太繁琐了,要我敲我真没办法T^T 赛后经 on ...
- JavaScript SandBox沙箱设计模式
沙箱模式常见于YUI3 core,它是一种采用同一构造器(Constructor)生成彼此独立且互不干扰(self-contained)的实例对象,而从避免污染全局对象的方法. 命名空间 JavaSc ...
- ACE线程管理机制-并发控制
ACE有若干可用于并发控制的类.这些类可划分为以下范畴: ACE Lock类属 ACE Guard类属 ACE Condition类属 ACE Synchronization类 由于篇幅较长,我分别写 ...
- Shell脚本循环读取文件中的每一行
1.使用for循环 for line in `cat filename` do echo $line done 2.使用for循环 for line in $(cat filename) do ech ...
- jQuery中 $.extend 和 $.fn.extend 作用及区别
jQuery为开发插件提拱了两个方法,分别是: 1. jQuery.fn.extend(); 2. jQuery.extend(); 虽然 javascript没有明确的类的概念,但是可以构建类似类的 ...
- jquery动画切换引擎插件 Velocity.js 学习01
一.Velocity.js介绍 Velocity是一个jQuery插件,重新实现了$.animate() 来产生更高的性能(速度也比CSS动画库更快),而包括新的功能,以提高动画工作流程. Veloc ...
- JS把内容动态插入到DIV
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DT ...
- MS SQL 启用标识插入
解决MSSQL字段为标识不能插入办法http://www.veryhuo.com 2009-09-21 Liehuo.Net 投递稿件 我有话说当 IDENTITY_INSERT 设置为 OFF 时, ...