nginx是一个高性能的HTTP和反向代理web服务器,同时也提供了IMAP/POP3/SMTP服务。
*********7层负载均衡***************
使用nginx
真机ip 172.25.254.14 /172.25.14.250
准备server1,server2,server3
需要从网络或者仓库李安装nginx,这里从服务器李找到压缩包,复制到自己真机里,
文章图片
?
server1里:安装lftp,lftp 172.25.254.14
寻找/pub/docs/lamp 解压复制好nginx-1.20.1版本的压缩包
文章图片
?
文章图片
?
文章图片
?
可以查看到nginx-1.20.1已建立好,在这个目录下安装脚本,将脚本保存到/usr/local/nginx
根据提示将缺少的软件逐一安装,再次运行,直到不再报错
【nginx|Linux企业运维--nginx】
文章图片
?
make把nginx配置文件复制到/usr/local/nginx下
文章图片
?
make install安装配置文件
文章图片
?
用一个软链接把nginx 链接到/usr/local/bin
ln -s /usr/local/nginx/sbin/nginx/usr/local/bin
文章图片
?
用 which nginx看到他的路径
文章图片
?
开启nginx
******************************
nginx -t查看语法是否正确
nginx -s reload 重启
nginx -s stop停止
******************************
进入配置文件nginx.conf修改
文章图片
?
文章图片
?
文章图片
?
文章图片
?
nginx -t
nginx -s reload
在/etc/security/limits.conf 编辑nginx
文章图片
?
在server1里用ulimit -a查看 open files
文章图片
?
建立新用户 nginx,切换进去ulimit -a对比与server1的open files
文章图片
?
开启server2,server3的httpd
在真机需要地址解析 vim /etc/hosts
172.25.14.1 testwww.westos.org
这样就可以在真机里查看了
for i in {1..10} ;
do curl www.westos.org ;
done -----循环10次
解析均衡,,,若关掉server2或server3的httpd,,,,则只会出现其中一个
文章图片
?
备用机server1里
echo server1 > /var/www/html/index.html
如果server2和server都关掉httpd,则我们需要server1这个备用机
需要修改server1的端口改为8080
文章图片
?
继续在nginx.conf编辑添加server1的ip
文章图片
?
for i in {1..10} ;
do curl www.westos.org ;
done继续查看是否只有server1
文章图片
?
*****sticky********
stick是基于cookie的一种负载均衡解决方案,通过分发和识别cookie,使来自同一客户端的请求落在同一台服务器上!
从服务器下载 sticky-module-ng压缩包到server1
解压
文章图片
?
cd objs/
ll nginx
du -h nginx ----查看nginx信息
文章图片
cd到nginx-1.20.1
make clean----清理文件
文章图片
编辑vi auto/cc/gcc C语言文件
文章图片
关掉debug下一行
编辑vi src/core/nginx.h
文章图片
看到nginx所占内存比以前小得多
文章图片
这时 安装配置参数
文章图片
make--------把nginx配置文件复制到/usr/local/nginx下
为防止出错可以把原先的nginx文件备份一遍
cd /usr/local/nginx/sbin---在sbin下复制原先的nginx
mv nginx nginx.old
在objs下cp新的nginx到sbin
cp nginx /usr/local/nginx/sbin/
vi nginx.conf
文章图片
nginx -sstop---先停掉nginx
nginx------再开启
curl localhost -I
文章图片
******平滑升级----不中断***********
下载nginx新版本1.20.2
文章图片
先编辑原版本文件:
把/usr/local/nginx/sbin原先的nginx改为.new
删除这个.new
把原先.old改为nginx
文章图片
先查看当前版本号显示1.20.1
文章图片
结束编辑原文件
解压新版本并安装
文章图片
cd nginx-1.20.2
make解析
cd /usr/local/nginx/sbin
\cp -f nginx /usr/local/nginx/sbin/ -----把新生成nginx复制到sbin下
ps ax | grep nginx ----查看当前nginx服务
文章图片
kill -USR2 8778----升级程序
kill -WINCH 8778----关闭原先进程
ps ax | grep nginx
curl -I localhost 再查看版本号
文章图片
恢复:
cd /usr/local/nginx/
cd sbin/
cp nginx nginx.new----把nginx复制变成new
\cp -f nginx.old nginx----把old变成nginx
kill -HUP 8778------把原先进程恢复
kill-WINCH 8860-----把新版本进程关闭
文章图片
ps ax | grep nginx
nginx -s stop
nginx
curl -I localhost查看版本号,变为原先的版本号
文章图片
推荐阅读
- 运维|docker学习笔记3—使用Dockerfile与docker build命令创建一个nginx服务器镜像,并使用浏览器进行访问...
- nginx|Linux企业运维--nginx高速缓存-
- 运维|运维笔记-nginx详解
- Linux|linux 安装jdk11
- linux之秘钥登录
- Linux Vi Word操作
- Linux vi搜索命令
- Linux vi缩写
- Linux vi文字缓冲区