linux---nginx服务nfs服务nginx反向代理三台web
一: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上修改的结果,其余两台都可以看到
|
三: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 [root@web02 ~]# mount -t nfs 192.168.152.134:/share [root@web03 ~]# mount -t nfs 192.168.152.134:/share [root@web01 ~]# echo "nfs ok" > |
# 浏览器访问进行验证

五:源码安装nginx,并按照作业一描述的那样去测试使用
#编译安装nginx
|
[root@nfs-server ~]# yum install gcc-* glibc-* openssl [root@nfs-server ~]# wget -q [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 [root@nfs-server nginx-1.10.3]# make && make |
# 配置nginx.conf
|
[root@nfs-server ~]# cat 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 nginx: configuration file /usr/local/nginx/nginx.conf [root@nfs-server ~]# /usr/local/nginx/nginx #启动nginx服务 [root@nfs-server ~]# echo 'goodbye oldboy' > |
#使用浏览器进行验证

linux---nginx服务nfs服务nginx反向代理三台web的更多相关文章
- Linux之nginx反向代理+三台web+nfs共享存储实现集群配置
作业四:nginx反向代理+三台web+nfs共享存储实现集群配置 在各个web服务器上挂载nfs [root@localhost nginx]# mount -t nfs 192.168.152.1 ...
- Linux之nginx反向代理三台web
作业三:nginx反向代理三台web 实现基于轮询的方式调度三台web,并验证结果 实现基于权重的方式调度三台web,并验证结果 实现基于hash的方式调用三台web,并验证结果 [root@loca ...
- nginx反向代理三台web
1.首先我们需要在服务器中三个不同名字,并将他们赋值 2.切换到nginx—conf 把三台机器的nginx的配置文件分别命名为web1.conf.web2.conf.web3.conf vim的赋 ...
- nginx反向代理三台web服务器,实现负载均衡
修改nginx.conf #在http和server之间加入这个模块 upstream guaji{ server 127.0.0.1:8080; server 127.0.0.2:8080; ser ...
- linux基础之nginx和nfs服务
第一部分: 一.nginx服务安装nginx包(源码安装)1.先cd /etc/yum.repos.d目录下2.yum install epel-release -y(安装扩展包)3.yum in ...
- 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 ...
- golang学习笔记9 beego nginx 部署 nginx 反向代理 golang web
golang学习笔记9 beego nginx 部署 nginx 反向代理 golang web Nginx 部署 - beego: 简约 & 强大并存的 Go 应用框架https://bee ...
- windows:nginx配置http、https反向代理
一.下载 Windows 版本的 nginx nnginx下载:http://nginx.org/en/download.html 推荐稳定版本.下载完成后,解压得到 nginx-1.14.0 ,我把 ...
- Nginx服务器部署 负载均衡 反向代理
Nginx服务器部署负载均衡反向代理 LVS Nginx HAProxy的优缺点 三种负载均衡器的优缺点说明如下: LVS的优点: 1.抗负载能力强.工作在第4层仅作分发之用,没有流量的产生,这个特点 ...
随机推荐
- python介绍和基础(待补充)
python的介绍 把命令放到一个文件中,文件还能执行,这样的语言叫shell脚本 写一个c语言程序,.c结尾的,gcc运行c语言程序,生成.out文件,然后执行.out文件 c语言是先编写代码,再编 ...
- 09 grep、正则表达式和sed
作业一:整理正则表达式博客 ^ 行首$ 行尾. 除了换行符以外的任意单个字符* 前导字符的零个或多个.* 所有字符[] 字符组内的任一字符[^] 对字符组内的每个字符取反(不匹配字符组内的每个字符)^ ...
- 《mysql必知必会》读书笔记--触发器及管理事务处理
触发器 触发器是MySQL响应DELETE,INSERT,UPDATE而自动执行的一条MySQL语句,其他语句不支持触发器. 创建触发器时,需要4个条件: 唯一的触发器名 触发器关联的表 触发器应该响 ...
- JVM年轻代(转)
本文转自:http://my.oschina.net/xishuixixia/blog/133850 1.为什么会有年轻代 我们先来屡屡,为什么需要把堆分代?不分代不能完成他所做的事情么?其实不分代完 ...
- Spring Boot @DeleteMapping
使用DELETE方式进行交互 说明:ResponseData为自定义返回体{String code, String msg, List<?> data} PollutionData 为 ...
- java中内部类的积累
放在一个类的内部的类我们就叫内部类. 二. 作用 1.内部类可以很好的实现隐藏 一般的非内部类,是不允许有 private 与protected权限的,但内部类可以 2.内部类拥有外围类的所有元素的访 ...
- 照着官网来安装openstack pike之environment设置
安装openstack前的准备环境: 两个centos7系统的环境:192.168.101.10 node1,192.168.101.11 node2 控制节点node1,计算节点node2 1.统一 ...
- 索引原理-btree索引与hash索引的区别
btree索引与hash索引的区别,之前不清楚,mark一下. Hash索引结构的特殊性,其检索效率非常高,索引的检索可以一次定位,不像B-Tree索引需要从根节点到枝节点,最后才能访问到页节点这样多 ...
- # 20145314《信息安全系统设计基础》期中复习总结 Part B
20145314<信息安全系统设计基础>期中复习总结 Part B 学习知识点内容总结 复习线索:http://group.cnblogs.com/topic/73069.html 本周的 ...
- 20145322《Java程序设计》第2次实验报告
20145322<Java程序设计>第2次实验报告 实验步骤与内容 一.实验内容 1.初步掌握单元测试和TDD 2.理解并掌握面向对象三要素:封装.继承.多态 3.初步掌握UML建模 4. ...