IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> 网络协议 -> 阿里云CentOS8_x86_64_Haproxy代理gitlab及mantis -> 正文阅读

[网络协议]阿里云CentOS8_x86_64_Haproxy代理gitlab及mantis

docker环境的搭建参考

阿里云CentOS8_x86_64_搭建Docker环境

Gitlab环境的搭建参考

阿里云CentOS8_x86_64_docker-compose 搭建Gitlab

MantisBT环境的搭建参考

阿里云CentOS8_x86_64_docker-compose 搭建Mantis

Haproxy 安装与配置

Haproxy目的

计划在同一台服务器上搭建maints与Gitlab 服务
使用Haproxy 进行80/443端口 代理与反向代理, 并实现SSL证书
git.xxx.com 访问gitlab
mantis.xxx.com 访问maints

安装Haproxy

yum install haproxy

配置Haproxy web管理页面

vim /etc/haproxy/haproxy.cfg

listen admin-stats
    stats enable
    bind *:8888
    mode http
    option httplog
    log global
    maxconn 10
    stats refresh 30s
    stats uri /admin
    stats realm haproxy
    stats auth admin:admin
    stats hide-version
    stats admin if TRUE

访问web管理页面

http://git.xxx.com/admin
账户:admin
密码:admin

Haproxy log配置

增加log配置

vi /etc/rsyslog.d/haproxy.conf

$ModLoad imudp
$UDPServerRun 514
local2.*     /data/log/haproxy/haproxy.log
&~

创建日志文件目录

mkdir -p /data/log/haproxy

配置logrotate

vim /etc/logrotate.d/haproxy

/data/log/haproxy/haproxy.log {
    daily
    compress
    rotate 10
    missingok
    notifempty
    dateext
    sharedscripts
    postrotate
        service rsyslog restart
    endscript
}

logrotate haproxy测试

logrotate  -f haproxy

在/data/log/haproxy下会生成 haproxy.log-xxxxxxxx.gz

重启rsyslog 与haproxy

systemctl  restart rsyslog
systemctl  restart haproxy

Haproxy代理80端口

listen http_80_in
    # http_80_in定义前端部分80监听的套接字
    bind *:80
    # 定义为HTTP模式
    mode http
	
    option httplog
	#判断访问git.xxx.com 使用git-backend 处理
    acl is_git hdr_beg(host) -i git.xxx.com
    use_backend git-backend if is_git

	#判断访问mantis.xxx.com mantis-backend 处理
    acl is_mantis hdr_beg(host) -i mantis.xxx.com
    use_backend mantis-backend if is_mantis
	#默认使用git-backend处理 如通过IP直接访问时
	default_backend git-backend

Haproxy代理443端口

frontend tcp_in_443
	#绑定443商品,并指定证书的地址,证书来源为阿里云的Digital RSA免费证书
    bind *:443 ssl crt /ssl_cert/mantis.xxx.com/merge.pem crt /ssl_cert/git.xxx.com/merge.pem
        
    # 定义为HTTP模式
    mode http
    option httplog
	#判断访问git.xxx.com 使用git-backend 处理
    acl is_git hdr_beg(host) -i git.xxx.com
    use_backend git-backend if is_git
	#判断访问mantis.xxx.com mantis-backend 处理
    acl is_mantis hdr_beg(host) -i mantis.xxx.com
    use_backend mantis-backend if is_mantis
	#默认使用git-backend处理 如通过IP直接访问时
	default_backend git-backend

Haproxy代理22端口


listen tcp_git_in_22

    bind *:22
    mode tcp
    server git_ssh 127.0.0.1:2222

sshd 端口修改

vi /etc/ssh/sshd_config

#Port 22
Port 15678 

git-backend处理

backend git-backend
	#haproxy 调度算法
    balance leastconn
    #server超时时间
    timeout server 600s
    timeout check 5000
    #配置转发地址
    server git_1 127.0.0.1:8443 check ssl verify none 
	

mantis-backend 处理

backend mantis-backend
    balance leastconn
    timeout server 600s
    timeout check 5000

    server mantis_1 127.0.0.1:9980 check
  网络协议 最新文章
使用Easyswoole 搭建简单的Websoket服务
常见的数据通信方式有哪些?
Openssl 1024bit RSA算法---公私钥获取和处
HTTPS协议的密钥交换流程
《小白WEB安全入门》03. 漏洞篇
HttpRunner4.x 安装与使用
2021-07-04
手写RPC学习笔记
K8S高可用版本部署
mySQL计算IP地址范围
上一篇文章      下一篇文章      查看所有文章
加:2021-11-16 19:11:36  更:2021-11-16 19:12:33 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年7日历 -2024/7/3 20:39:44-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码