Nginx 与 HAProxy 安装与配置总结
【摘要】 nginx如果显示没有安装包的话 可以按照扩展包或者配置网络源我这里配置阿里源来提供参考(前提是可以上网)第一台nginx网站关闭防火墙 selinuxcd /etc/yum.repos.d/wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo wget -O /etc...
nginx
如果显示没有安装包的话 可以按照扩展包或者配置网络源
我这里配置阿里源来提供参考(前提是可以上网)
第一台nginx网站
关闭防火墙 selinux
cd /etc/yum.repos.d/
wget -O /etc/yum.repos.d/CentOS-Base.repo https://mirrors.aliyun.com/repo/Centos-7.repo
wget -O /etc/yum.repos.d/epel.repo https://mirrors.aliyun.com/repo/epel-7.repo
yum clean all
yum install -y nginx
[root@localhost yum.repos.d]# echo "server1 192.168.192.111" > /usr/share/nginx/html/index.html
[root@localhost yum.repos.d]# systemctl start nginx
[root@localhost yum.repos.d]# curl 127.0.0.1
server1 192.168.192.111
第二台nginx网站
关闭防火墙 selinux
第二台也是同样的步骤
yum install -y nginx
[root@localhost yum.repos.d]# echo "server2 192.168.192.112" > /usr/share/nginx/html/index.html
[root@localhost yum.repos.d]# systemctl start nginx
[root@localhost yum.repos.d]# curl 127.0.0.1
server2 192.168.192.112
haproxy
关闭防火墙 selinux
安装所需组件
yum groupinstall -y 'Development Tools' pcre-devel zlib-devel
官网地址:官网地址点击
上传所需安装包解压安装
ls
haproxy-2.9.9.tar.gz 这个就是我上传的安装包
[root@localhost ~]# tar -zxf haproxy-2.9.9.tar.gz
[root@localhost ~]# cd haproxy-2.9.9/
make TARGET=linux-glibc && make install
mkdir /etc/haproxy
[root@localhost haproxy]# find / -name haproxy.cfg
/root/haproxy-2.9.9/addons/ot/test/be/haproxy.cfg
会出现很多这样的路径 我们选择第一个!
cp /root/haproxy-2.9.9/addons/ot/test/be/haproxy.cfg /etc/haproxy/
cd /etc/haproxy/
vim haproxy.cfg
配置内容如下
vim /etc/haproxy/haproxy.cfg
global
nbthread 1 # 使用的线程数;'1' 表示单线程。
maxconn 5000 # 允许的最大连接数。
hard-stop-after 10s # 在关闭过程中,强制停止 HAProxy 的最长等待时间。
# log localhost:514 local7 debug # 日志配置(已注释)。
# debug # 启用调试模式(已注释)。
stats socket /tmp/haproxy-be.sock mode 666 level admin # 创建用于管理级别统计信息的 Unix 套接字。
defaults
log global # 使用全局日志配置。
mode http # 处理连接的默认模式;此处为 HTTP。
option httplog # 启用 HTTP 请求日志记录。
option dontlognull # 不记录没有数据的连接。
option httpclose # 在每个响应后强制关闭连接。
retries 3 # 尝试连接服务器失败时的重试次数。
maxconn 4000 # 每个进程的最大连接数。
timeout connect 5000 # 等待与服务器建立连接的最长时间(毫秒)。
timeout client 50000 # 客户端侧的最大不活动时间(毫秒)。
timeout server 50000 # 服务器侧的最大不活动时间(毫秒)。
listen stats
mode http # 统计接口使用 HTTP 模式。
bind *:8080 # 将统计接口绑定到所有 IP 地址上的 8080 端口。
stats uri / # 访问统计接口的 URI。
stats admin if TRUE # 允许通过统计接口执行管理级别的命令。
stats refresh 10s # 每 10 秒刷新一次统计信息。
#frontend ot-test-be-frontend
# mode http # 前端使用 HTTP 模式(已注释)。
# default_backend servers-backend # 使用的默认后端(已注释)。
listen servers-backend
bind *:80 # 将后端绑定到所有 IP 地址上的 80 端口。
mode http # 后端使用 HTTP 模式。
server server-1 192.168.180.200:80 # 定义 server-1 及其 IP 和端口。
server server-2 192.168.180.190:80 # 定义 server-2 及其 IP 和端口。
主要的部分给你截图:
root@localhost haproxy]# cp ~/haproxy-2.9.9/examples/haproxy.init /etc/init.d/haproxy
[root@localhost haproxy]# ln -s /usr/local/sbin/haproxy /usr/sbin/haproxy
[root@localhost haproxy]# chmod +x /etc/init.d/haproxy
[root@localhost haproxy]# chkconfig --add /etc/init.d/haproxy
/etc/init.d/haproxy 启动该服务
如果显示报错
报错原因
/etc/init.d/haproxy: 第 26 行:[: =: 期待一元表达式
Usage: haproxy {start|stop|restart|reload|condrestart|status|check}
解决方案
vim /etc/init.d/haproxy
26 [ "$NETWORKING" = "no" ] && exit 0
再次启动服务即可
/etc/init.d/haproxy 启动该服务
配置完成之后启动服务
/etc/init.d/haproxy start
/etc/init.d/haproxy status
访问测试
访问8080端口 可以看到后台控制台的详细信息
拒绝访问无法访问的问题
修改配置文件
frontend http_front
bind *:80
default_backend servers-backend
backend servers-backend
mode http
server server-1 192.168.192.111:80 check
server server-2 192.168.192.112:80 check
总结
本次总结介绍了在 CentOS 系统上安装和配置 Nginx 及 HAProxy 的过程。首先,关闭防火墙和 SELinux,配置阿里云 YUM 源后安装 Nginx,并创建首页内容。接着,安装 HAProxy 所需依赖,编译并配置 HAProxy,设置启动脚本并处理可能的启动错误,最终成功启动服务。通过这些步骤,实现了两个 Nginx 网站的搭建和 HAProxy 的负载均衡功能。
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
- 点赞
- 收藏
- 关注作者
评论(0)