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服务的更多相关文章

  1. Windows下Nginx+Web.py+FastCGI服务搭建

    在搭建之前,有必要了解下什么是fastcgi,但鉴于我自己也不大了解,这里就不搬门弄斧了,请参考各种百科和官网资料. 1.资源下载 python下载地址:戳这里webpy下载地址:戳这里flup下载地 ...

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

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

  3. linux---nginx服务nfs服务nginx反向代理三台web

    一:nginx服务 1.二进制安装nginx包 [root@bogon ~]# systemctl disable firewalld #关闭Firewalls自启动 Removed symlink ...

  4. 07 nginx反向代理和nfs服务

    作业一:nginx服务二进制安装nginx包 作为web服务修改配置文件 让配置生效,验证配置 作业二:nfs服务二进制安装nfs作为共享存储挂载在三台web的网站根目录下实现,在任意一台web上修改 ...

  5. day10 nfs服务,nginx负载均衡,定时任务

    ==================nginx 负载均衡==================== 实现nginx负载均衡的效果,并运用nfs服务共享目录,使所有nginx服务拥有共同的http目录 n ...

  6. nginx nfs服务

    一.nginx服务 1.二进制安装nginx包 [root@bogon ~]# ls /etc/yum.repos.d/ [root@bogon ~]# cd /etc/yum.repos.d/ [r ...

  7. 2-4、nginx特性及基础概念-nginx web服务配置详解

    Nginx Nginx:engine X 调用了libevent:高性能的网络库 epoll():基于事件驱动event的网络库文件 Nginx的特性: 模块化设计.较好扩展性(不支持模块动态装卸载, ...

  8. Linux实战教学笔记37:企业级Nginx Web服务优化实战(上)

    一,Nginx基本安全优化 1.1 调整参数隐藏Nginx软件版本号信息 一般来说,软件的漏洞都和版本有关,这个很像汽车的缺陷,同一批次的要有问题就都有问题,别的批次可能就都是好的.因此,我们应尽量隐 ...

  9. linux基础之nginx和nfs服务

      第一部分: 一.nginx服务安装nginx包(源码安装)1.先cd /etc/yum.repos.d目录下2.yum install epel-release -y(安装扩展包)3.yum in ...

随机推荐

  1. BZOJ2668:[CQOI2012]交换棋子——题解

    http://www.lydsy.com/JudgeOnline/problem.php?id=2668 https://www.luogu.org/problemnew/show/P3159#sub ...

  2. Linux之SSL安全套接字20160704

    使用SSL前,先有 基本的TCP套接字连接.见demo代码 SSL_library_init();//在使用OpenSSL 之前,必须进行相应的协议初始化工作 OpenSSL_add_all_algo ...

  3. shell中的数值运算

    By francis_hao    Oct 2,2017   本文摘录自bash的man手册.   算数运算相关的形式 形式 含义 ((expression)) expression按照下面描述的算术 ...

  4. maven根据不同的运行环境,打包不同的配置文件(转载)

    使用maven管理项目中的依赖,非常的方便.同时利用maven内置的各种插件,在命令行模式下完成打包.部署等操作,可方便后期的持续集成使用. 但是每一个maven工程(比如web项目),开发人员在开发 ...

  5. linux 命令后台运行(转载)

    原文连接:https://www.cnblogs.com/lwm-1988/archive/2011/08/20/2147299.html 有两种方式: 1. command & : 后台运行 ...

  6. java nio buffer读取数据乱码问题

    public static void main(String[] args) throws IOException { String charsetName = "GBK"; St ...

  7. (转)python编码问题

    时不时总是会碰到令人头疼的编码问题,这里推荐一篇决定好文,需反复诵读之: http://www.cnblogs.com/huxi/archive/2010/12/05/1897271.html . . ...

  8. Tomcat设置开启时自动访问某个servlet类存在的问题

    <servlet> <servlet-name>****</servlet-name> <servlet-class>****</servlet- ...

  9. Lucene4.6至 Lucene6.6的每个迭代对API的改动

    由于项目需求,需要将Lucene4.6升级到Lucene6.6,因此我对这之间的所有重要的API改动做了搜集:特别重要的改变加粗显示. Lucene4.7改动: LUCENE-5405: Make S ...

  10. vue 表格阻止父元素冒泡事件

    思路如下:1.给复选框定义一个类型,type="selection" 2.在点击函数中就可以使用判断条件来进行复选框的阻止冒泡.rowDetailShow(row, event, ...