步骤如下:
步骤一:安装Nginx
首先,确保在所有节点上安装了 Nginx。通过包管理器安装 Nginx。确保所有节点上的 Nginx 版本一致,以避免配置时的不一致性。
步骤二:配置负载均衡
-
创建负载均衡配置文件:在每个节点上创建一个负载均衡配置文件,例如
/etc/nginx/conf.d/load-balancer.conf
。 -
配置负载均衡算法:选择合适的负载均衡算法,如轮询、IP 哈希或最少连接数等。在配置文件中指定
upstream
块,并定义后端服务器列表和负载均衡算法。
upstream backend {
server backend1.example.com;
server backend2.example.com;
server backend3.example.com;
# 可以根据需要添加更多服务器
...
# 负载均衡算法
least_conn;
}
步骤三:配置反向代理
-
创建反向代理配置文件:在每个节点上创建一个反向代理配置文件,例如
/etc/nginx/conf.d/reverse-proxy.conf
。 -
配置反向代理规则:在配置文件中创建
server
块,指定监听端口和域名,并设置location
块来定义反向代理规则。
server {
listen 80;
server_name example.com;
location / {
proxy_pass http://backend;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
}
}
步骤四:重启Nginx服务
在每个节点上完成配置后,通过以下命令重启 Nginx 服务以使更改生效:
sudo systemctl restart nginx
步骤五:测试负载均衡
最后,使用负载测试工具如 Apache Benchmark(ab)或 wrk 来测试负载均衡效果。发送大量请求以确保负载均衡器正确分发流量给后端服务器。
步骤六:使用acme.sh签发SSL证书和配置自动续签
- 安装 acme.sh:在每个节点上安装 acme.sh。通过以下命令在 Linux 系统上安装 acme.sh:
curl https://get.acme.sh | sh
- 申请 SSL 证书:使用 acme.sh 申请 SSL 证书。运行以下命令:
acme.sh --issue -d example.com -d www.example.com --nginx
这将使用 Nginx 插件自动配置 Nginx 服务器以完成证书验证。
- 安装 SSL 证书:acme.sh 将自动获取证书并将其存储在
~/.acme.sh
目录中。用以下命令将证书安装到 Nginx 配置中:
acme.sh --install-cert -d example.com --key-file /path/to/private.key --fullchain-file /path/to/fullchain.cer --reloadcmd "sudo systemctl reload nginx"
确保将 /path/to/private.key
和 /path/to/fullchain.cer
替换为实际路径,并指定Nginx重新加载的命令。
- 配置自动续签:为了实现自动续签,可以设置一个定时任务来定期检查证书到期并自动续签。运行以下命令:
acme.sh --cron --home /root/.acme.sh
这将在每天的凌晨自动检查证书到期情况并自动续签。