lnmp和负载均衡

image.png
image.png
image.png

php 服务部署,yum


image.png
image.png

nginx和php请求处理的原理


image.png
image.png

url和uri都传入的参数


image.png
image.png

php变量定义和意义


image.png

php+mysql


image.png
image.png
image.png
image.png
image.png

403错误,首页文件找不到


image.png

部署搭建网站页面,wordpress


image.png

问题


image.png

413文件过大问题


image.png

图片存储问题


image.png

nfs,/etc/exports


image.png

修改nfs权限


image.png

默认存储服务器无法存储数据


image.png

集群,负载均衡,反向代理,正向代理


image.png

准备负载均衡的环境


image.png

lnmp架构和数据库服务建立关系


image.png

502错误,一般都是后端服务挂了,
检查nginx代理的tomcat后者php等服务是否都挂了


image.png

image.png
image.png

优化和遇到问题


image.png
image.png

负载均衡部署:
配置机器,sed修改网卡信息,修改主机名


image.png

nginx的yum源


image.png

image.png

尝试一下
cp /etc/nginx/nginx.conf{,.bak}
grep -Ev '^$|#' nginx.conf.bak > nginx.conf

image.png
image.png

nginx -t


image.png
image.png

实现负载功能测试
搭建集群测试环境


image.png

研究一下这个语句


image.png

访问www.oldboy.com出现
bbs 10.0.0.7
修改每个真实web服务器nginx主配置文件,读取的顺序,和端口

image.png

抓包分析,反向代理的过程


image.png

匹配终端,如chrome,iphone,android


image.png
image.png

排错步骤


image.png

curl命令直接解析到某个地址,不用改/etc/hosts


image.png
image.png
image.png

upstream模块参数详细说明


image.png
image.png
image.png

sed操作第19行


image.png

image.png

session,kookie,缓存服务器redis,memcached的作用


image.png

根据ip_hash的值访问web服务器,只要源地址ip不变,就会一直访问到同一个web服务,保持住session


image.png

但nginx识别的是公网ip,就相当于一个公司的出口ip固定的,
内网出去都映射成同一个公网ip
就相当于一个公司的所有访问都到某一台web服务器,造成服务访问不均衡


image.png

fair


image.png
image.png

19行加#


image.png

20行去掉#


image.png

两行一起替换


image.png

lb.conf,负载均衡服务器上
代理几个相同端口,不同域名的网站


image.png

真实web服务器上
cat conf.d/*


image.png

通过宿主机浏览器访问,抓包分析
宿主机ip是.1,nginx代理地址是.5


image.png
image.png

在nginx代理服务器上配置
主要意思是代理服务器将请求头里,代理的upstream配置的uri改写成用户请求的url信息
proxy_set_header Host host; proxy_set_header设置请求头信息,将Host改写成host
Host 代理服务器上upstream配置的uri名字也就是oldboy
$host 客户端请求的url信息,也就是后端真实服务器配置的server_name名字,即,www.oldboy.com

image.png
image.png

记录真实ip访问信息
请求头里没有记录真实ip请求信息,需要配置一个


image.png

在代理服务器上配置,配置客户端请求的真实IP
proxy_set_header X-Forward-For $remote_addr;


image.png

改成加ed


image.png

再次抓包分析,nginx转给后端web时,看到X-Forward-For 地址


image.png

配置前和配置后的ip地址对比


image.png

如果某台服务器异常,让nginx代理不向这台服务器转发


image.png

在nginx代理服务器上配置,每个server都需要配置
这里以www.oldoby.com为例,实际都需要配置

image.png

image.png

思维导图


image.png
image.png
image.png
image.png
image.png
image.png
image.png
image.png

总结


image.png

企业架构


image.png

规划


image.png

10.0.0.7 web01
10.0.0.8 web02
10.0.0.9 web03


image.png

在nginx代理服务LB上配置


image.png
image.png

web02配置


image.png
image.png
image.png

image.png
image.png

根据用户终端(谷歌浏览器,android,iphone等)匹配不同的服务

早期,是通过不同的域名来区分的,
手机是wap
电脑是www


image.png

现在是通过nginx,匹配不同的user_agent,来做到分发


image.png

搭建web服务器环境


image.png

nginx反代lb端


image.png
image.png
image.png

高可用、


image.png
image.png
image.png
image.png

高可用软件keepalived


image.png

image.png

keepalived部署


image.png
image.png

image.png
image.png
image.png
image.png
image.png
image.png

keepalived配置文件


image.png
image.png

出问题对比配置文件
最好加上掩码
10.0.0.3/24


image.png

408看完,该409了

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容