Nginx 与 HAProxy 安装与配置总结

举报
神秘泣男子 发表于 2024/11/19 16:05:14 2024/11/19
【摘要】 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

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。