Apusic文档中心
首页
  • 应用服务器 AAS
  • 负载均衡器 ALB
  • 分布式消息队列 ADMQ
  • 分布式缓存 AMDC
  • 分布式配置中心 ADCC
  • Java开发工具包软件 AJDK
  • 搜索引擎 ASE
  • 中间件云平台 ACP
  • 统一管理平台 AUMP
  • 云原生中间件管理 ACMP
  • DevOps平台 ADOP
  • 许可授权中心 ACLS
  • Copilot智能问答系统 ACS
  • 监控平台 AMP
  • 智能日志 AILP
  • 应用性能管理 AAPM
  • 智能告警 AAlarm
  • 主数据管理 AMDM
  • 数据交换平台 ADXP
  • 企业服务总线 AESB
  • 数据智脑 ADPR
  • 服务治理 ASGP
  • 统一身份管理 AIDM
  • 标准模板
  • Markdown教程 (opens new window)
  • VuePress官方社区 (opens new window)
  • 帮助
贡献文档 (opens new window)
首页
  • 应用服务器 AAS
  • 负载均衡器 ALB
  • 分布式消息队列 ADMQ
  • 分布式缓存 AMDC
  • 分布式配置中心 ADCC
  • Java开发工具包软件 AJDK
  • 搜索引擎 ASE
  • 中间件云平台 ACP
  • 统一管理平台 AUMP
  • 云原生中间件管理 ACMP
  • DevOps平台 ADOP
  • 许可授权中心 ACLS
  • Copilot智能问答系统 ACS
  • 监控平台 AMP
  • 智能日志 AILP
  • 应用性能管理 AAPM
  • 智能告警 AAlarm
  • 主数据管理 AMDM
  • 数据交换平台 ADXP
  • 企业服务总线 AESB
  • 数据智脑 ADPR
  • 服务治理 ASGP
  • 统一身份管理 AIDM
  • 标准模板
  • Markdown教程 (opens new window)
  • VuePress官方社区 (opens new window)
  • 帮助
贡献文档 (opens new window)
文档中心
  • 金蝶Apusic应用服务器

  • 金蝶Apusic负载均衡器

    • 产品白皮书
    • 产品更新说明
    • V2.0.6标准版(最新)

      • 发版说明
      • 快速上手
      • 安装手册
      • 代理功能手册
      • 管控台用户手册
      • 开发手册
      • 迁移手册
      • 运维手册
      • 性能优化手册
    • V2.0.5企业版(最新)

    • V2.0.5标准版

    • V2.0.2标准版

    • V2.0.2敏捷版

    • V2.0.1标准版

    • V2.0.1敏捷版

    • V2.0.0标准版

    • V2.0.0敏捷版

    • V2.0.2服务网关

  • 金蝶Apusic分布式消息队列

  • 金蝶Apusic分布式缓存

  • 金蝶Apusic分布式配置中心

  • 金蝶Apusic Java开发工具包软件

  • 金蝶Apusic全文检索

安装手册

# 前言

本文档为金蝶Apusic负载均衡器软件V2.0.6标准版的安装手册,详细介绍如何在各操作系统上安装、部署和授权ALB,以及ALB服务的启停操作。

# 适用对象

本文档适用于IT信息化业务负责人、研发经理、软件项目经理、软件架构师、运维工程师。

# 相关文档

了解更多ALB V2.0.6产品相关的信息,请参阅以下ALB V2.0.6产品手册文档集:

序号 手册文档 说明
1 金蝶Apusic负载均衡器软件 V2.0.6 发版说明 介绍了ALB 产品版本更新内容 。
2 金蝶Apusic负载均衡器软件 V2.0.6 快速使用手册 简单介绍了如何快速上手使用ALB 。
3 金蝶Apusic负载均衡器软件 V2.0.6 安装手册 详细介绍如何在各操作系统上安装ALB,以及ALB服务启停操作,产品的注册过程。
4 金蝶Apusic负载均衡器软件 V2.0.6 代理功能手册 详细介绍 ALB 相关功能的使用、配置、管理及配套工具的使用方法。
5 金蝶Apusic负载均衡器软件 V2.0.6 管控台用户手册 详细介绍ALB管控台相关功能的使用和操作说明。
6 金蝶Apusic负载均衡器软件 V2.0.6 开发手册 详细介绍ALB外部API、alb-cli命令行工具及AI Agent集成方法。
7 金蝶Apusic负载均衡器软件 V2.0.6 迁移手册 详细介绍ALB历史版本迁移升级到V2.0.6版本的说明。
8 金蝶Apusic负载均衡器软件 V2.0.6 运维手册 详细介绍ALB的监控、运维、安全加固等运维说明。
9 金蝶Apusic负载均衡器软件 V2.0.6 性能优化手册 详细介绍ALB性能调优的说明。

# 技术支持

ALB产品提供全面的技术支持服务,您可以通过以下方式获得技术支持:

  • 网址:www.apusic.com

  • 电话:400-855-5800

  • 邮箱:support@apusic.com

  • 金蝶云社区:https://vip.kingdee.com/?productId=73&productLineId=14&lang=zh-CN

您在取得技术支持时,请提供如下信息:

  1. 您的姓名

  2. 公司信息与联系方式

  3. 操作系统及其版本

  4. 产品版本号

  5. 出现异常及错误的日志、截图等详细信息

# 产品安装

# 安装包说明

ALB标准版安装包名称结构是:

ALB-版本号-SE-构建日期-CPU架构.tar.gz或ALB-版本号-SE-构建日期-CPU架构-ebpf.tar.gz

目前仅支持Linux平台的arm64和amd64架构:

  • Linux-arm64架构安装包: ALB-V2.0.6-SE-构建日期-arm64.tar.gz
  • Linux-amd64(x86_64)架构安装包: ALB-V2.0.6-SE-构建日期-amd64.tar.gz
  • Linux-arm64架构ebpf特性安装包: ALB-V2.0.6-SE-构建日期-arm64-ebpf.tar.gz
  • Linux-amd64(x86_64)架构ebpf特性安装包: ALB-V2.0.6-SE-构建日期-amd64-ebpf.tar.gz

注:构建日期为ALB产品包具体构建日期,同一个版本可能存在多个构建日期,获取安装包以最新日期为准。本手册全部演示内容中的安装包名称移除了构建日期。

注:ebpf特性安装包,Linux内核版本不低于4.19.

# 安装介质

  • tar.gz压缩包:ALB-版本号-SE-构建日期-CPU架构.tar.gz 解压到目标机器任意路径即可使用。
  • docker镜像:ALB-版本号-SE-Docker-构建日期-CPU架构-docker.tar.gz 或 ALB-版本号-SE-Docker-构建日期-CPU架构-基础操作系统.tar.gz(基础操作系统如 kylin、ubuntu 等,请以实际安装包为准)。
  • RPM包:ALB-版本号-SE-构建日期-CPU架构.rpm,使用 rpm -ivh 安装包名 安装,安装完成后,其安装路径为 /opt/ALB-V2.0.6-SE-amd64(路径中的版本号请以实际安装包为准)。

# 单节点部署

  1. 获取软件安装包 ALB安装介质为: ALB-V2.0.6-SE-amd64.tar.gz或ALB-V2.0.6-SE-arm64.tar.gz

  2. 复制安装包到目标主机

  3. 解压: ALB-V2.0.6-SE-amd64.tar.gz到目标安装路径(示例为/opt目录) tar -zxvf ALB-V2.0.6-SE-amd64.tar.gz -C /opt/

  4. ALB使用参考《快速使用手册》。

注:如果没有权限,请使用root账户或sudo

# 集群部署

在主备节点上分别执行单节点安装步骤安装完毕后,参考本文档中的“高可用集群搭建”章节进行配置即可。

# Docker部署

ALB标准版提供amd64和arm64架构的Docker系统安装包,可通过ALB Docker安装包直接部署ALB。

# 安装包说明

  1. ALB压缩安装包名称
  • ALB-V2.0.6-SE-docker-amd64.tar.gz 或 ALB-V2.0.6-SE-Docker-20260421-amd64-kylin.tar.gz
  • ALB-V2.0.6-SE-docker-arm64.tar.gz 或 ALB-V2.0.6-SE-Docker-20260421-arm64-kylin.tar.gz

注: 安装包日期可能不同,请根据实际情况选择。

  1. 安装包目录结构
tree -L 1 ALB-V2.0.6-SE-Docker-20260421-amd64-kylin
ALB-V2.0.6-SE-Docker-20260421-amd64-kylin            # docker安装包解压后目录
|-- ALB-V2.0.6-SE-Docker-20260421-amd64-kylin.tar.gz # docker镜像文件
|-- alb                                              # ALB启动配置文件、授权文件、日志等挂载目录
|   |-- alb.conf                                     # ALB配置文件  
|   |-- license.xml                                  # 授权文件
-- alb-standard-dockercompose.yaml                      # docker compose配置文件
1
2
3
4
5
6
7

# 安装步骤

下面的操作以ALB-V2.0.6-SE-Docker-20260421-amd64-kylin.tar.gz为例

  1. 解压和导入镜像
  • 解压tar -zxvf ALB-V2.0.6-SE-Docker-20260421-amd64-kylin.tar.gz
  • 进入解压后的文件夹cd ALB-V2.0.6-SE-Docker-20260421-amd64-kylin
  • 加载镜像: docker load < ALB-V2.0.6-SE-Docker-20260421-amd64-kylin.tar.gz
  1. 修改授权文件

ALB授权文件需要挂载到容器内部安装目录,当前样例是alb/license.xml,在启动容器前,请更换授权文件。

授权文件挂载说明

  • license.lic:本地旧版授权文件
  • license.xml:本地授权文件,支持旧授权和 KBC 授权(如果是 KBC 授权,把 KBC 授权内容复制写入 license.xml 即可)
  • acls.properties:统一授权配置文件,需要挂载到容器路径:/opt/ALB-V2.0.6-SE/acls.properties
  1. 镜像启动与停止
  • 启动命令: docker compose -f alb-standard-dockercompose.yaml up -d
  • 停止命令: docker compose -f alb-standard-dockercompose.yaml down
  1. alb-standard-docker-compose.yaml配置说明
version: '3'
services:
  alb:
    image: harbor.apusic.com/apusic/alb:V2.0.6-se.20260421-kylin-amd64   # ALB 镜像
    ports:
      - 8080:8080          # ALB http对外端口
      - 8887:8887          # ALB 管控台端口
    volumes:
      - ./alb/alb.conf:/opt/ALB-V2.0.6-SE/conf/alb.conf      # alb配置文件
      - ./alb/license.xml:/opt/ALB-V2.0.6-SE/license.xml     # alb授权文件
      - ./alb/logs:/opt/ALB-V2.0.6-SE/logs                   # alb访问和错误日志存储目录
    command: bash /opt/ALB-V2.0.6-SE/bin/start-alb-and-console.sh
1
2
3
4
5
6
7
8
9
10
11
12

# K8s部署

alb标准版支持通过Kubernetes进行部署,以下是详细的部署步骤。

# 准备工作

  • 环境要求

    • 已安装 kubectl 并配置好 Kubernetes 集群访问权限。
    • 若使用私有镜像仓库(如Harbor),确保集群有权限拉取镜像。
  • 镜像准备

    • 将 Docker 镜像上传至镜像仓库(以 AMD64 镜像为例)
    # 解压安装包
    tar -zxvf ALB-V2.0.6-SE-Docker-20260421-amd64-kylin.tar.gz
    # 切换到解压后的安装包
    cd ALB-V2.0.6-SE-Docker-20260421-amd64-kylin
    # 导入ALB镜像
    docker load < ALB-V2.0.6-SE-Docker-20260421-amd64-kylin.tar.gz
    # 重新标记镜像,请根据自己镜像仓库地址进行修改
    docker tag [镜像ID] harbor.apusic.com/apusic/alb:V2.0.6-se.20260421-kylin-amd64
    # 推送镜像至镜像仓库
    docker push harbor.apusic.com/apusic/alb:V2.0.6-se.20260421-kylin-amd64
    
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10

# 配置文件与授权管理

  • 创建 ConfigMap 将alb.conf配置文件挂载至容器:
kubectl create configmap alb-config --from-file=./alb/alb.conf
1
  • 创建 Secret 将license.xml授权文件以 Secret 形式存储(敏感信息建议使用 Secret):
kubectl create secret generic alb-license --from-file=./alb/license.xml
1

# 部署ALB服务

  1. 创建 Deployment 编写 alb-deployment.yaml 文件:
apiVersion: apps/v1
kind: Deployment
metadata:
  name: alb
spec:
  replicas: 1
  selector:
    matchLabels:
      app: alb
  template:
    metadata:
      labels:
        app: alb
    spec:
      containers:
      - name: alb
        image: harbor.apusic.com/apusic/alb:V2.0.6-se.20260421-kylin-amd64 # 请根据仓库地址进行修改
        command: ["bash", "/opt/ALB-V2.0.6-SE/bin/start-alb-and-console.sh"]
        ports:
        - containerPort: 8080
        - containerPort: 8887
        volumeMounts:
        - name: alb-config
          mountPath: "/opt/ALB-V2.0.6-SE/conf/alb.conf"
          subPath: "alb.conf"
        - name: alb-license
          mountPath: "/opt/ALB-V2.0.6-SE/license.xml"
          subPath: "license.xml"
        - name: alb-logs
          mountPath: "/opt/ALB-V2.0.6-SE/logs"
      volumes:
      - name: alb-config
        configMap:
          name: alb-config
      - name: alb-license
        secret:
          secretName: alb-license
      - name: alb-logs
        hostPath:
          path: "/var/alb/logs"
          type: DirectoryOrCreate
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41

参数说明

  • image: 替换为实际镜像地址。
  • hostPath: 日志目录挂载路径,可按需改为 PVC(如使用云存储)。
  1. 创建 Service
apiVersion: v1
kind: Service
metadata:
  name: alb-service
spec:
  type: NodePort
  selector:
    app: alb
  ports:
  - name: http
    port: 8080
    targetPort: 8080
    nodePort: 30080
  - name: console
    port: 8887
    targetPort: 8887
    nodePort: 30887
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17

参数说明

  • nodePort 默认范围为 30000-32767,若省略端口则由系统自动分配
  • 若在云环境,可将 type 改为 LoadBalancer 直接获取外部 IP
  1. 应用配置
kubectl apply -f alb-deployment.yaml
kubectl apply -f alb-service.yaml
1
2

# 部署验证

  1. 检查 Pod 状态
kubectl get pods -l app=alb
1
  1. 访问服务
  • HTTP 服务: http://<节点IP>:30080
  • 管控台: http://<节点IP>:30887

# 停止与清理

  1. 删除部署
kubectl delete -f alb-deployment.yaml -f alb-service.yaml
1
  1. 清理配置
kubectl delete configmap alb-config
kubectl delete secret alb-license
1
2

# 高可用集群搭建

ALB支持原生高可用和keepalived两种高可用方式,搭建高可用集群,当集群节点发生故障时,自动将流量切换至备节点。其中原生高可用可通过ALB管控台配置,也可以通过命令行进行配置。

在ALB的管控台中一键配置和启动高可用,下面介绍在命令行中的安装配置方式。

# 前提准备

  1. 两台服务器,一台作为主节点(Master),一台作为备用节点(Backup)。
  2. 在两台服务器上部署 ALB 服务。(安装过程忽略)
  3. 在两台服务器的局域网中,准备一个未使用的IP地址作为虚拟IP(VIP)。
  4. 确保两台服务器之间的网络通信正常。
  5. 确保两台服务器上的防火墙允许 keepalived 和 ALB 服务的通信。

下面以两台服务器(192.168.2.10和192.168.2.11)为例,选择VIP为192.168.2.30。

通过搭建两套ALB,并配置VIP,实现客户端通过VIP访问ALB,当主节点宕机时,VIP自动切换至备节点。

# 使用管控台配置高可用

  1. 登录ALB管控台,进入高可用配置页面。
  2. 点击“高可用”
  3. 点击“创建高可用”
  4. 填写VIP地址,点击下一步
  5. 填写健康检查内容(默认无需更改),点击下一步
  6. 选择主节点IP和网卡,点击下一步
  7. 点击添加备节点, 输入备节点的IP和端口和AuthKey,点击联调通过后点击创建
  8. 创建成功

# 手工配置ALB高可用服务

ALB自带高可用组件,可一键部署和启动高可用服务。在ALB管控台中配置高可用时,默认使用自带高可用组件。

# 查看物理网卡名称

  1. 在主节点和备用节点上执行以下命令,查看当前机器IP的物理网卡名称:
ip addr show
1
  1. 记录物理网卡名称,例如:eth0。

# 配置aha

主节点

  1. 角色配置为: master
  2. 修改VIP地址
  3. 修改网卡名称

备节点

  1. 角色配置为: backup
  2. 修改VIP地址
  3. 修改网卡名称
# 主节点
  1. 切换至utils/aha目录,编辑config.yaml文件,如下样例
keepalived:
  # 虚拟路由ID
  vroute_id: 239

  # 虚拟IP绑定网卡名称
  interface: eth0

  # 虚拟IP地址
  vip: 192.168.2.30

  # 协议类型, 可选值为ipv4和ipv6
  protocol: ipv4 

  # 是否抢占模式
  #如果启用了抢占模式(Preempt Mode),当一个更高优先级的路由器加入到 VRRP 组中时,它可以取代当前的活动路由器成为新的活动路由器。
  #如果未启用抢占模式,则即使有更高优先级的路由器加入,当前的活动路由器也不会被取代  
  preempt: true

  # 发送消息间隔(毫秒)
  msg-send-interval: 800

  # 优先级, 0-255
  priority: 100

  # 角色,可选值为master和backup
  role: master

checker:

  # 检查服务的状态时间间隔(毫秒)
  check-interval: 1000

  # 重试次数
  retry-count: 3

  # 重试间隔(毫秒)
  retry-interval: 2000

  # 健康检查方式,可以url或者shell,url为http或https,shell为shell命令
  health-type: url  

  # 当前目标服务状态检查url,用于检查目标服务是否健康
  health-url: http://localhost:8080/node_status

  # 自定义健康检查返回的url状态码
  health-codes:
    - 200
    - 404

  # shell健康检查命令,shell命令执行返回0表示健康,其他值表示异常
  health-cmd: 

  # 当节点故障时候,是否尝试重启目标服务(默认为false)
  restart-on-failure: false
  # 重启目标服务命令
  restart-cmd: 

aha:
  # 日志文件路径
  log-file: aha.log

  # 日志级别, 可选值为debug, info, warn, error
  log-level: info
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
# 备节点
keepalived:
  # 虚拟路由ID
  vroute_id: 239

  # 虚拟IP绑定网卡名称
  interface: eth0

  # 虚拟IP地址
  vip: 192.168.2.30

  # 协议类型, 可选值为ipv4和ipv6
  protocol: ipv4 

  # 是否抢占模式
  #如果启用了抢占模式(Preempt Mode),当一个更高优先级的路由器加入到 VRRP 组中时,它可以取代当前的活动路由器成为新的活动路由器。
  #如果未启用抢占模式,则即使有更高优先级的路由器加入,当前的活动路由器也不会被取代  
  preempt: true

  # 发送消息间隔(毫秒)
  msg-send-interval: 800

  # 优先级, 0-255(备节点需低于主节点)
  priority: 90

  # 角色,可选值为master和backup
  role: backup

checker:

  # 检查服务的状态时间间隔(毫秒)
  check-interval: 1000

  # 重试次数
  retry-count: 3

  # 重试间隔(毫秒)
  retry-interval: 2000

  # 健康检查方式,可以url或者shell,url为http或https,shell为shell命令
  health-type: url  

  # 当前目标服务状态检查url,用于检查目标服务是否健康
  health-url: http://localhost:8080/node_status

  # 自定义健康检查返回的url状态码
  health-codes:
    - 200
    - 404

  # shell健康检查命令,shell命令执行返回0表示健康,其他值表示异常
  health-cmd: 

  # 当节点故障时候,是否尝试重启目标服务(默认为false)
  restart-on-failure: false
  # 重启目标服务命令
  restart-cmd: 

aha:
  # 日志文件路径
  log-file: aha.log

  # 日志级别, 可选值为debug, info, warn, error
  log-level: info
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63

# 注册系统服务并启动系统服务

主备节点均需要执行以下操作:

  1. 切换到安装目录下的 utils/aha/sys-service 目录
  2. 切换到root用户,或者使用sudo执行下面命令
  3. 执行:./setup-aha-service.sh 自动注册系统服务
  4. 启动:systemctl start aha.service

# 验证VIP是否自动漂移测试步骤

  1. 使用VIP 192.168.2.30 访问ALB正常。
  2. 停掉主节点所在的ALB,继续使用VIP访问ALB,验证是否正常。

# 其他配置说明:

  1. 自定义健康检查URL: 修改配置文件中的health-url: http://localhost:8080/node_status
  2. 自定义URL的健康HTTP状态码: 修改配置中的:health-codes: 200, 404
  3. 配置aha.log日志文件路径: 修改配置文件中的log-file: aha.log
  4. 通过自定义shell命令或脚本实现健康检查,要求返回0表示健康,其余值在ALB中标记不健康,如下样例:
# 使用shell命令进行健康检查
health-type: shell  
# 使用shell命令检查alb进程存在则健康
health-cmd: ps aux | grep alb | grep -v grep 
1
2
3
4

# 使用keepalived实现高可用

# 安装 keepalived

# kylin、opensuler、centos操作系统
yum install -y keepalived

# uos、ubuntu操作
apt-get install -y keepalived
1
2
3
4
5

# 查看物理网卡名称

  1. 在主节点和备用节点上执行以下命令,查看物理网卡名称:
ip addr show
1
  1. 记录物理网卡名称,例如:eth0。

# 配置 keepalived

  1. 编辑主节点(Master)的 keepalived.conf 文件:
vi /etc/keepalived/keepalived.conf
1

在主节点/keepalived.conf文件中添加以下内容:

注:

  • 把interface eth0 替换为主节点的物理网卡名称。
  • 把192.168.2.30 替换为准备使用的虚拟IP地址。
! Configuration File for keepalived

global_defs {
   router_id alb
}

vrrp_script chk_http_port {
   script "/etc/keepalived/checkalb.sh"
   interval 2 #(检测脚本执⾏的间隔)
   weight 2
}

vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    # 主、备机的 virtual_router_id 必须相同
    priority 100
    # 主、备机取不同的优先级,主机值较⼤,备份机值较小
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111  # 示例值,生产环境请更换为强密码
    }
    virtual_ipaddress {
        # 请根据需要,修改这个虚拟IP地址
        192.168.2.30 
    }
    track_script {
        chk_http_port
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
  1. 编辑备用节点(Backup)的 keepalived.conf 文件:
vi /etc/keepalived/keepalived.conf
1

在备用节点的 keepalived.conf 文件中添加以下内容:

注:

  • 把interface eth0 替换为备用节点的物理网卡名称。
  • 把192.168.2.30 替换为准备使用的虚拟IP地址。
! Configuration File for keepalived
global_defs {
    router_id alb
}
vrrp_script chk_http_port {
    script "/etc/keepalived/checkalb.sh"
    interval 2 #(检测脚本执⾏的间隔)
    weight 2
}
vrrp_instance VI_1 {
    state BACKUP
    # state MASTER
    # 备份服务器上将 MASTER 改为 BACKUP
    interface eth0
    virtual_router_id 51
    # 主、备机的 virtual_router_id 必须相同
    priority 90
    # 主、备机取不同的优先级,主机值较⼤,备份机值较小
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111  # 示例值,生产环境请更换为强密码
    }
    virtual_ipaddress {
        192.168.2.30 # 请根据需要,修改这个虚拟IP地址
    }
    track_script {
        chk_http_port
    }
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
  1. 在两个节点创建检测脚本checkalb.sh:
vi /etc/keepalived/checkalb.sh
1

在checkalb.sh文件中添加以下内容:

#!/bin/bash
# 检测ALB主进程是否存活(根据实际安装路径调整PID文件路径)
alb_pid=$(cat /opt/ALB-V2.0.6-SE-amd64/logs/alb.pid 2>/dev/null)
alb_count=0
if [ -n "$alb_pid" ]; then
    alb_count=$(ps -p "$alb_pid" --no-headers | wc -l)
fi
#1.判断ALB是否存活,如果不存活停⽌keepalived
if [ $alb_count -eq 0 ];then
    sleep 3
    #2.等待3秒后再次获取⼀次alb状态
    alb_pid=$(cat /opt/ALB-V2.0.6-SE-amd64/logs/alb.pid 2>/dev/null)
    alb_count=0
    if [ -n "$alb_pid" ]; then
        alb_count=$(ps -p "$alb_pid" --no-headers | wc -l)
    fi
    #3.再次进⾏判断, 如alb还不存活则停⽌Keepalived,让地址进⾏漂移,并退出脚本
    if [ $alb_count -eq 0 ];then
        echo "alb is down"
        systemctl stop keepalived
        exit 1
    fi
fi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23

在创建检测脚本后,给checkalb.sh添加执行权限:

chmod +x /etc/keepalived/checkalb.sh
1

# 主备节点均启动keepalived服务

systemctl start keepalived.service
1

# 验证VIP是否指向主节点

在主节点上查看虚拟IP地址(把eth0改为主节点网卡名称,192.168.2.30替换为实际VIP):

ip addr show eth0 | grep '192.168.2.30'
1

# 停止主节点alb,验证VIP是否漂移到备节点

# 切换到alb安装目录
./bin/stop-alb.sh
1
2

在备节点上查看虚拟IP地址(把eth0改为备节点网卡名称):

ip addr show eth0 |grep inet|grep -v inet6|awk '{print $2}'
1

如果VIP漂移到备节点,则说明keepalived配置成功。

# ALB授权与服务配置

# license使用说明

ALB标准版支持本地授权(license.lic 或 license.xml)和统一授权(acls.properties),授权文件需要放到产品安装目录下。

  • license.lic:本地授权文件(旧版授权格式)。
  • license.xml:本地授权文件(支持旧授权和 KBC 授权;如果是 KBC 授权,把 KBC 授权内容复制写入 license.xml 即可)。
  • acls.properties:统一授权配置文件,需要放到 ALB 安装目录下。

# 本地授权

  1. 获取本机特征码
# 获取本机特征码
./bin/alb-authcode   

# 指定网卡获取特征码
./bin/alb-authcode -ac eth0

# 指定IP地址获取特征码
./bin/alb-authcode -ac 192.168.1.100
1
2
3
4
5
6
7
8

注: -ac参数仅支持alb标准版构建日期大于等于2025年6月及以后版本

  1. 获取授权码后,请与金蝶天燕联系,将特征码发回金蝶天燕进行授权文件获取,或者登录金蝶天燕授权平台获取授权文件。
  2. 将获取到的授权文件修改为文件名 license.lic 或 license.xml,然后放到 ALB 安装目录下。若使用统一授权,请将 acls.properties 放到 ALB 安装目录下。

# 统一授权

  1. 统一授权中心必须包含ALB标准版的有效授权信息。(请登录授权中心进行查看,若没有有效的产品授权信息,请参考授权中心手册,导入有效的产品授权信息。)
  2. 产品配置连接授权中心的连接方式:
  • acls.properties配置文件: acls.properties配置文件放置在ALB安装目录下。
    apusic_acls_enable=true                     # 开启变量统一授权
    apusic_acls_authUrls=192.168.4.10:6869    # 示例统一授权中心地址,请替换为实际地址
    apusic_acls_ns=public                       # 命名空间 
    apusic_acls_tenant=public                   # 租户名称
    
    1
    2
    3
    4
  • 系统环境变量配置
    export apusic_acls_enable=true                 # 开启变量统一授权
    export apusic_acls_authUrls=192.168.5.10:6869  # 示例统一授权中心地址,请替换为实际地址
    export apusic_acls_ns=后付费                    # 命名空间 
    export apusic_acls_tenant=user_env中文          # 租户名称 
    
    1
    2
    3
    4

注: 2种授权方式如果都进行了配置,则优先级为系统环境变量配置 > acls.properties文件配置;如果同时配置了本地授权方式和统一授权方式,则使用统一授权方式,若授权验证失败,将不会执行后续的授权验证。

# 产品端口说明

ALB默认端口如下:

  • 8080:http服务端口。
  • 8887: ALB管控台端口

如需修改默认http代理端口,可以编辑ALB安装目录/conf/alb.conf文件中的listen 8080行。

如需修改管控台的端口,可以编辑ALB安装目录/console/conf/config.yaml文件中的system中的addr字段端口。

# 开机启动项与系统服务

ALB默认不开启开机自动启动,如需开机启动,切换到安装目录,执行

cd /opt/ALB-V2.0.6-SE-amd64           # 进入安装目录(以实际安装路径为准)
./utils/systemd/enable_startup.sh     # 自动设置开机启动项(通常需要root权限)
systemctl start alb                   # 启动ALB
1
2
3

# 移除系统启动项

cd /opt/ALB-V2.0.6-SE-amd64           # 进入安装目录
./utils/systemd/remove_startup.sh     # 移除开机启动项
1
2

# 普通用户启动ALB并且开启监听80端口

ALB支持通过修改程序权限,使得在普通用户下可以监听80端口。具体操作如下:

  1. 切换到root用户,并切换到ALB安装目录。
  2. 授权监听80端口: setcap cap_net_bind_service=+eip ./sbin/alb
  3. 切换回普通用户
编辑页面 (opens new window)

← 快速上手 代理功能手册→

  • 浅色模式