一:nginx服务

1、二进制安装nginx包

[root@bogon ~]# systemctl disable firewalld        #关闭Firewalls自启动
  Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
  Removed symlink /etc/systemd/system/basic.target.wants/firewalld.service. [root@bogon ~]# systemctl stop firewalld #关闭firework [root@bogon ~]# yum install nginx -y #安装nginx服务  

2、作为web服务修改配置文件

[root@bogon ~]# egrep -v "^$|^#|#"  /etc/nginx/nginx.conf

user nginx;

worker_processes auto;

error_log /var/log/nginx/error.log;

pid /run/nginx.pid;

include /usr/share/nginx/modules/*.conf;

events {

worker_connections 1024;

}

http {

log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

'$status $body_bytes_sent "$http_referer" '

'"$http_user_agent" "$http_x_forwarded_for"';

access_log  /var/log/nginx/access.log  main;

sendfile            on;

tcp_nopush          on;

tcp_nodelay         on;

keepalive_timeout   65;

types_hash_max_size 2048;

include             /etc/nginx/mime.types;

default_type        application/octet-stream;

include /etc/nginx/conf.d/*.conf;

server {

listen       80 default_server;

listen       [::]:80 default_server;

server_name  _;

root         /usr/share/nginx/html;

include /etc/nginx/default.d/*.conf;

location / {

root /data/www/html;

index index.html;

}

error_page 404 /404.html;

location = /40x.html {

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

}

}

}

[root@bogon ~]# mkdir -p /data/www/html

[root@bogon ~]# echo "welcome oldgirl" > /data/www/html/index.html

3、让配置生效,验证配置

 

[root@bogon ~]# /usr/sbin/nginx -t   #检查配置是否正确

  nginx: the configuration file /etc/nginx/nginx.conf syntax is ok

  nginx: configuration file /etc/nginx/nginx.conf test is successful

[root@bogon ~]# systemctl start nginx  #启动nginx服务

[root@bogon ~]# systemctl status nginx #查看nginx启动状态

● nginx.service - The nginx HTTP and reverse proxy server

Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled)

Active: active (running) since Mon 2017-03-20 15:23:29 CST; 44s ago

Process: 3072 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS)

Process: 3069 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS)

Process: 3068 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS)

Main PID: 3075 (nginx)

CGroup: /system.slice/nginx.service

├─3075 nginx: master process /usr/sbin/nginx

└─3076 nginx: worker process

Mar 20 15:23:29 bogon systemd[1]: Starting The nginx HTTP and reverse proxy server...

Mar 20 15:23:29 bogon nginx[3069]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok

Mar 20 15:23:29 bogon nginx[3069]: nginx: configuration file /etc/nginx/nginx.conf test is successful

Mar 20 15:23:29 bogon systemd[1]: Failed to read PID from file /run/nginx.pid: Invalid argument

Mar 20 15:23:29 bogon systemd[1]: Started The nginx HTTP and reverse proxy server.

二:nfs服务

1、二进制安装nfs

1

[root@bogon ~]# yum install rpcbind nfs-utils -y  #NFS服务端和客户端都装。

2、作为共享存储挂载在三台web的网站根目录下

[root@nfs-server ~]# mkdir /share  #创建挂载目录

[root@nfs-server ~]# cat /etc/exports  #配置NFS SERVER

/share 192.168.152.0/24(rw,sync,fsid=0)

# 启动开机自启:

[root@nfs-server ~]# systemctl enable nfs-server.service

Created symlink from /etc/systemd/system/multi-user.target.wants/nfs-server.service to /usr/lib/systemd/system/nfs-server.service.

[root@nfs-server ~]# systemctl enable rpcbind.service

# 启动服务(必须先启动rpcbind服务):

[root@nfs-server ~]# systemctl start rpcbind.service

[root@nfs-server ~]# systemctl start nfs-server.service

# 确定NFS服务器启动成功:

[root@nfs-server ~]# rpcinfo

program version netid     address                service    owner

100000    4    tcp6      ::.0.111               portmapper superuser

100000    3    tcp6      ::.0.111               portmapper superuser

100000    4    udp6      ::.0.111               portmapper superuser

100000    3    udp6      ::.0.111               portmapper superuser

100000    4    tcp       0.0.0.0.0.111          portmapper superuser

100000    3    tcp       0.0.0.0.0.111          portmapper superuser

100000    2    tcp       0.0.0.0.0.111          portmapper superuser

100000    4    udp       0.0.0.0.0.111          portmapper superuser

100000    3    udp       0.0.0.0.0.111          portmapper superuser

100000    2    udp       0.0.0.0.0.111          portmapper superuser

100000    4    local     /var/run/rpcbind.sock  portmapper superuser

100000    3    local     /var/run/rpcbind.sock  portmapper superuser

100005    1    udp       0.0.0.0.78.80          mountd     superuser

100005    1    tcp       0.0.0.0.78.80          mountd     superuser

100005    1    udp6      ::.78.80               mountd     superuser

100005    1    tcp6      ::.78.80               mountd     superuser

100005    2    udp       0.0.0.0.78.80          mountd     superuser

100005    2    tcp       0.0.0.0.78.80          mountd     superuser

100024    1    udp       0.0.0.0.129.33         status     29

100005    2    udp6      ::.78.80               mountd     superuser

100024    1    tcp       0.0.0.0.171.119        status     29

100024    1    udp6      ::.206.85              status     29

100005    2    tcp6      ::.78.80               mountd     superuser

100005    3    udp       0.0.0.0.78.80          mountd     superuser

100024    1    tcp6      ::.207.20              status     29

100005    3    tcp       0.0.0.0.78.80          mountd     superuser

100005    3    udp6      ::.78.80               mountd     superuser

100005    3    tcp6      ::.78.80               mountd     superuser

100003    3    tcp       0.0.0.0.8.1            nfs        superuser

100003    4    tcp       0.0.0.0.8.1            nfs        superuser

100227    3    tcp       0.0.0.0.8.1            nfs_acl    superuser

100003    3    udp       0.0.0.0.8.1            nfs        superuser

100003    4    udp       0.0.0.0.8.1            nfs        superuser

100227    3    udp       0.0.0.0.8.1            nfs_acl    superuser

100003    3    tcp6      ::.8.1                 nfs        superuser

100003    4    tcp6      ::.8.1                 nfs        superuser

100227    3    tcp6      ::.8.1                 nfs_acl    superuser

100003    3    udp6      ::.8.1                 nfs        superuser

100003    4    udp6      ::.8.1                 nfs        superuser

100227    3    udp6      ::.8.1                 nfs_acl    superuser

100021    1    udp       0.0.0.0.220.240        nlockmgr   superuser

100021    3    udp       0.0.0.0.220.240        nlockmgr   superuser

100021    4    udp       0.0.0.0.220.240        nlockmgr   superuser

100021    1    tcp       0.0.0.0.156.92         nlockmgr   superuser

100021    3    tcp       0.0.0.0.156.92         nlockmgr   superuser

100021    4    tcp       0.0.0.0.156.92         nlockmgr   superuser

100021    1    udp6      ::.211.174             nlockmgr   superuser

100021    3    udp6      ::.211.174             nlockmgr   superuser

100021    4    udp6      ::.211.174             nlockmgr   superuser

100021    1    tcp6      ::.171.11              nlockmgr   superuser

100021    3    tcp6      ::.171.11              nlockmgr   superuser

100021    4    tcp6      ::.171.11              nlockmgr   superuser

[root@nfs-server ~]#

[root@nfs-server ~]# exportfs

/share          192.168.152.0/24

# 默认使用showmount -e 查看自己共享的服务,需要DNS能解析,不然容易报错。

# 此处添加HOSTS本地解析。

[root@nfs-server ~]# echo "192.168.152.134     nfs-server" >> /etc/hosts

[root@nfs-server ~]# showmount -e

Export list for nfs-server:

/share 192.168.152.0/24

# 客户端挂载:

[root@web01 ~]# mount -t nfs 192.168.152.134:/share /data/www/html/

[root@web02 ~]# mount -t nfs 192.168.152.134:/share /data/www/html/

[root@web03 ~]# mount -t nfs 192.168.152.134:/share /data/www/html/

[root@nfs-server ~]# showmount -a  #显示已经与客户端连接上的目录信息

All mount points on nfs-server:

192.168.152.135:/share

192.168.152.136:/share

192.168.152.137:/share

3、实现在任意一台web上修改的结果,其余两台都可以看到

 

# others用户添加w权限

[root@nfs-server ~]# chmod -R o+w /share/

[root@nfs-server ~]# ll -d /share/

drwxr-xrwx 2 root root 23 Mar 20 16:38 /share/

# 测试结果

[root@web01 ~]# echo "welcome luchuangao" > /data/www/html/test.html

[root@web02 ~]# cat /data/www/html/test.html

welcome luchuangao

[root@web03 ~]# cat /data/www/html/test.html

welcome luchuangao

三:nginx反向代理三台web

(1)
Nginx反向代理:实现基于轮询的方式
http {
    upstream  pythonweb{
       server 192.168.2.3:80;
       server 192.168.2.4:80;
       server 192.168.2.5:80;
    }
  server{
   location / {
     proxy_pass http://pythonweb;
   }
  }
[root@bogon ~]# systemctl reload nginx.service 
[root@bogon ~]# systemctl restart nginx.service 
(2)
Nginx反向代理:实现基于权重的方式
http {
    upstream  pythonweb{
       server 192.168.2.3:80  weight=3;
       server 192.168.2.4:80;
       server 192.168.2.5:80;
    }
  server{
   location / {
     proxy_pass http://pythonweb;
   }
  }
[root@bogon ~]# systemctl reload nginx.service 
[root@bogon ~]# systemctl restart nginx.service

(3)
Nginx反向代理:实现基于权重的方式
http {
    upstream  pythonweb{
       ip_hash;
       server 192.168.2.3:80;
       server 192.168.2.4:80;
       server 192.168.2.5:80;
    }
  server{
   location / {
     proxy_pass http://pythonweb;
   }
  }
[root@bogon ~]# systemctl reload nginx.service 
[root@bogon ~]# systemctl restart nginx.service

四:nginx反向代理+三台web+nfs共享存储实现集群配置

# 在各个web服务器上挂载nfs

[root@web01 ~]# mount -t nfs 192.168.152.134:/share
/data/www/html/

[root@web02 ~]# mount -t nfs 192.168.152.134:/share
/data/www/html/

[root@web03 ~]# mount -t nfs 192.168.152.134:/share
/data/www/html/

[root@web01 ~]# echo "nfs ok" >
/data/www/html/index.html

# 浏览器访问进行验证

五:源码安装nginx,并按照作业一描述的那样去测试使用

#编译安装nginx

[root@nfs-server ~]# yum install gcc-* glibc-* openssl
openssl-devel pcre pcre-devel zlib zlib-devel -y

[root@nfs-server ~]# wget -q
http://nginx.org/download/nginx-1.10.3.tar.gz

[root@nfs-server ~]# ls nginx-1.10.3.tar.gz

nginx-1.10.3.tar.gz

[root@nfs-server ~]# tar -xf nginx-1.10.3.tar.gz

[root@nfs-server ~]# cd nginx-1.10.3/

[root@nfs-server nginx-1.10.3]# ./configure
--sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf
--pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module

[root@nfs-server nginx-1.10.3]# make && make
install

# 配置nginx.conf

[root@nfs-server ~]# cat
/usr/local/nginx/nginx.conf|egrep -v "^$|^#|#"

worker_processes  1;

events {

worker_connections  1024;

}

http {

include       mime.types;

default_type  application/octet-stream;

sendfile        on;

keepalive_timeout  65;

server {

listen       80;

server_name  localhost;

location / {

root   /data/www/html;

index  index.html index.htm;

}

error_page   500 502 503 504  /50x.html;

location = /50x.html {

root   html;

}

}

}

# 验证

 

[root@nfs-server ~]# /usr/local/nginx/nginx -t

nginx: the configuration file
/usr/local/nginx/nginx.conf syntax is ok

nginx: configuration file /usr/local/nginx/nginx.conf
test is successful

[root@nfs-server ~]# /usr/local/nginx/nginx  #启动nginx服务

[root@nfs-server ~]# echo 'goodbye oldboy' >
/data/www/html/index.html

#使用浏览器进行验证

linux---nginx服务nfs服务nginx反向代理三台web的更多相关文章

  1. Linux之nginx反向代理+三台web+nfs共享存储实现集群配置

    作业四:nginx反向代理+三台web+nfs共享存储实现集群配置 在各个web服务器上挂载nfs [root@localhost nginx]# mount -t nfs 192.168.152.1 ...

  2. Linux之nginx反向代理三台web

    作业三:nginx反向代理三台web 实现基于轮询的方式调度三台web,并验证结果 实现基于权重的方式调度三台web,并验证结果 实现基于hash的方式调用三台web,并验证结果 [root@loca ...

  3. nginx反向代理三台web

    1.首先我们需要在服务器中三个不同名字,并将他们赋值 2.切换到nginx—conf  把三台机器的nginx的配置文件分别命名为web1.conf.web2.conf.web3.conf vim的赋 ...

  4. nginx反向代理三台web服务器,实现负载均衡

    修改nginx.conf #在http和server之间加入这个模块 upstream guaji{ server 127.0.0.1:8080; server 127.0.0.2:8080; ser ...

  5. linux基础之nginx和nfs服务

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

  6. Centos 7 上使用nginx为Node.js配置反向代理时错误:(13: Permission denied) while connecting to upstream

    错误来源:Centos 7 上使用nginx为Node.js配置反向代理时产生(13: Permission denied) while connecting to upstream的错误 nginx ...

  7. golang学习笔记9 beego nginx 部署 nginx 反向代理 golang web

    golang学习笔记9 beego nginx 部署 nginx 反向代理 golang web Nginx 部署 - beego: 简约 & 强大并存的 Go 应用框架https://bee ...

  8. windows:nginx配置http、https反向代理

    一.下载 Windows 版本的 nginx nnginx下载:http://nginx.org/en/download.html 推荐稳定版本.下载完成后,解压得到 nginx-1.14.0 ,我把 ...

  9. Nginx服务器部署 负载均衡 反向代理

    Nginx服务器部署负载均衡反向代理 LVS Nginx HAProxy的优缺点 三种负载均衡器的优缺点说明如下: LVS的优点: 1.抗负载能力强.工作在第4层仅作分发之用,没有流量的产生,这个特点 ...

随机推荐

  1. 聚类之k-means

    1.介绍 k-means算法以k为参数(所期望的簇的个数),把n个对象分成k个簇(单层划分),用质心(数据点的平均值)定义簇的原型.使得簇内具有较高的相似度,而簇间的相似度较低. 通过聚类,我们能够发 ...

  2. Python 开发面试总结

    网络基础 如何确定发送过来的数据的完整性(有无中间人攻击)? 散列值校验(MD5.SHA-1).数字签名(PGP),需要用户亲自校验,若是散列值或数字签名本身被篡改,用户是无法判断出来的. HTTPS ...

  3. maven install jdk版本自动降为1.7

    开发过程中遇到了一个奇怪的现象. IDEA中所有的设置都改成了1.8,但是在执行maven install时却自动降为1.7,报错提示: [ERROR] Failed to execute goal ...

  4. 【java】使用Builder模式,轻松应对动态繁杂的方法参数

    背景:在咱编写的图片处理模块里,针对加载这个方法,参数很多,如: /** * 加载图片,经过内存.磁盘.两层缓存如果还没找到,则走http访问网络资源 * @param url 地址 * @param ...

  5. Glide Picasso和Fresco的对比

    比较Picasso.Glide 和 Fresco 三种图片加载库 比较 Picasso 与 Glide 总体来说二者极为相似,有着近乎相同的 API 的使用风格,但 Glide 在缓存策略和加载 gi ...

  6. javascript对象继承

    一.实例化和继承的区别 构造函数.原型和实例的关系:每 个构造函数都有一个原型对象,原型对象都包含一个指向构造函数的指针,而实例都包含一个指向原型 对象的内部指针. 类(Class)和实例(Insta ...

  7. python、pip、whl安装和使用

    1 python的安装 首先,从python的官方网站 www.python.org下载需要的python版本,地址是这个: http://www.python.org/ftp/python/2.7. ...

  8. [pixhawk笔记]11-Windows下PX4代码查看

    由于项目需要做基于Simulink的PX4二次开发,在Windows下面做,所以需要在Windows下查看PX4的代码,故写该文档,记录环境安装和配置过程.按照该网页安装工具链:Windows Ins ...

  9. 屏幕变黑白-winhotkey

    下载了个windows hot key 的工具想看快捷键冲突 结果安装好之后屏幕变黑白了,变成辅助模式了.而且鼠标移动到哪都加蓝色框框  如果这个时候你带上耳机就能听到在朗读,这应该也是一种辅助模式 ...

  10. 20145314郑凯杰 《Java程序设计》第9周学习总结 积极主动敲代码

    20145314郑凯杰 <Java程序设计>第9周学习总结 教材学习内容总结 第十六章 ①JDBC(Java DataBase Connectivity) 即java数据库连接,是一种用于 ...