离线安装痛苦啊~~~~
1.两台物理机服务器分别开两台windows和1台linux虚拟机
windows作为应用服务器,linux作为转发服务器装配nginx和keepalived
2.nginx安装
因为我这需要负载的主要是tcp请求,所以nginx版本选择1.20.2(1.9版本以上都自带stream,随意选择)
切机开linux虚拟机的时候要选择装载ssh!!!否则没有ssh链接真的难受,鄙人最终选择重装系统。
2.1下载nginx
下载地址
tar文件上传到linux服务器上
2.2安装
解压,记得进入到上传目录
tar -zkvf nginx-1.20.2
切换nginx目录
cd nginx-1.20.2
因为要用tcp,需要下载一个tcp的文件
添加tcp模块
patch -p1 < ../nginx_tcp_proxy_module-master/tcp.patch
检查环境,创建安装文件
./configure --with-stream --add-module=../nginx_tcp_proxy_module-master/
安装,最好管理员安装
sudo make && sudo make install
正常情况下这个时候你的/usr/local文件夹下有一个nginx目录了
安装失败的话可能是缺少环境,大概率是openssl、zlib、pcre这三个,具体看报错信息下载安装就好了
2.3nginx配置
在/usr/local/nginx/conf下编辑nginx.config文件,建议送过ssh工具通过文本打开修改,直接修改太坑了。
命令行修改
直接通过命令行修改
vim nginx.config
完成后通过:wq保存退出即可。
配置如下
#user nobody;
worker_processes 1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
}
#添加的tcp负载配置
stream {
upstream pf1{
server 192.168.40.149:8096 weight=1 max_fails=3 fail_timeout=30s;
server 192.168.40.150:8096 weight=1 max_fails=3 fail_timeout=30s;
}
server {
listen 8096;
proxy_pass pf1; #要和上面保持一直
}
}
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_byt