Apache InLong 2.4.0 配置参数详解
详解 Apache InLong 2.4.0 全部核心组件的配置文件位置、参数含义与默认值,覆盖 Manager/Agent/DataProxy/Audit 与全局 inlong.conf,并给出生产配置模板与 JVM 堆限制修改方法
Apache InLong 2.4.0 配置参数详解
目标:系统梳理 Apache InLong 2.4.0 各组件的配置文件、参数键、默认值与生产建议,让读者能独立完成参数定位、修改与生效验证。所有默认值均来自 Ubuntu 22.04.5 实测部署(安装目录
/opt/data/inlong/apache-inlong-2.4.0)中的真实配置文件。
一、环境信息
- 操作系统:Ubuntu 22.04.5 LTS,OpenJDK 17.0.20.1
- Apache InLong:2.4.0,安装目录
/opt/data/inlong/apache-inlong-2.4.0(下文INLONG_HOME) - 组件端口:Manager 8083、DataProxy 46801/46802、Audit 10080/10081、Agent Prometheus 9080
- 元数据库:MySQL 8.0.46,库名
apache_inlong_manager(44 张表)
二、前置条件
- 已按《Ubuntu 22.04 安装 Apache InLong 2.4.0 指南》完成部署;本文所有参数均可在上述安装目录中直接修改并重启验证。
- 修改配置文件后需重启对应组件生效:Manager
bin/startup.sh,Agentbin/agent.sh restart,DataProxybin/dataproxy-start.sh,Auditbin/proxy-start.sh/bin/store-start.sh。
三、参数查看与修改方式
配置文件分布(实测目录结构):
| 组件 | 配置文件 | 位置 |
|---|---|---|
| 全局 | inlong.conf | INLONG_HOME/conf/inlong.conf |
| Manager | application.properties / application-dev.properties / application-prod.properties | INLONG_HOME/inlong-manager/conf/ |
| Agent | agent.properties / log4j2.xml | INLONG_HOME/inlong-agent/conf/ |
| DataProxy | dataproxy.conf / common.properties / dataproxy-tubemq.conf | INLONG_HOME/inlong-dataproxy/conf/ |
| Audit | audit-service.properties / audit-proxy-pulsar.conf / audit-proxy-kafka.conf / audit-proxy-tubemq.conf | INLONG_HOME/inlong-audit/conf/ |
修改流程:
# 1) 编辑参数
vim INLONG_HOME/inlong-manager/conf/application-dev.properties
# 2) 重启组件
cd INLONG_HOME/inlong-manager && bin/startup.sh
# 3) 验证生效
grep -E '参数键' INLONG_HOME/inlong-manager/conf/application-dev.properties
JVM 堆内存参数(256–512 MB)通过环境变量注入,不写入 properties:
| 组件 | 环境变量 | 默认值 | 建议值 |
|---|---|---|---|
| Manager | MANAGER_JVM_HEAP_OPTS | -Xms512m -Xmx1024m | -Xms256m -Xmx512m |
| Agent | AGENT_JVM_HEAP_OPTS | -Xmx2048m -Xms512m | -Xms256m -Xmx512m |
| DataProxy | DATAPROXY_JVM_HEAP_OPTS | -Xms512m -Xmx1024m -XX:MaxDirectMemorySize=2048m | -Xms256m -Xmx512m -XX:MaxDirectMemorySize=512m |
| Audit | AUDIT_JVM_HEAP_OPTS | -Xms512m -Xmx1024m | -Xms256m -Xmx512m |
生效验证(实测):
ps -ef | grep [j]ava | grep InlongManagerMain
实测回显:
root ... java -server -XX:MetaspaceSize=256m -XX:MaxMetaspaceSize=512m -XX:-OmitStackTraceInFastThrow -Xms256m -Xmx512m ...
四、参数总览
4.1 全局参数(inlong.conf)
| 参数 | 默认值(实测) | 含义 |
|---|---|---|
local_ip | 127.0.0.1 | 本机 IP,各组件注册/上报用 |
mq_type | pulsar | 消息队列类型:pulsar / kafka / tubemq |
spring_datasource_hostname | 127.0.0.1 | Manager 元数据库地址 |
spring_datasource_port | 3306 | Manager 元数据库端口 |
spring_datasource_username | root | Manager 元数据库用户 |
spring_datasource_password | inlong | Manager 元数据库密码 |
manager_server_hostname | 127.0.0.1 | Manager 服务地址 |
manager_server_port | 8083 | Manager 服务端口 |
dataproxy_port | 46801 | DataProxy TCP 接收端口 |
audit_service_ip | 127.0.0.1 | Audit 查询服务地址 |
audit_service_port | 10080 | Audit 查询服务端口 |
audit_proxy_port | 10081 | Audit Proxy 接收端口 |
4.2 Manager 参数(application.properties / application-dev.properties)
| 参数 | 默认值(实测) | 含义 |
|---|---|---|
server.port | 8083 | Manager HTTP 端口 |
spring.profiles.active | dev | 激活 profile(dev / prod) |
server.servlet.context-path | /inlong/manager | REST API 前缀 |
default.admin.user | admin | 初始管理员用户 |
default.admin.password | inlong | 初始管理员密码 |
spring.datasource.druid.url | jdbc:mysql://127.0.0.1:3306/apache_inlong_manager?useSSL=false&allowPublicKeyRetrieval=true&characterEncoding=UTF-8&nullCatalogMeansCurrent=true&serverTimezone=GMT%2b8 | 元数据库 JDBC 连接串 |
spring.datasource.druid.username | root | 元数据库用户 |
spring.datasource.druid.password | inlong | 元数据库密码 |
spring.datasource.druid.initialSize | 20 | Druid 连接池初始连接数 |
spring.datasource.druid.minIdle | 20 | 连接池最小空闲数 |
spring.datasource.druid.maxActive | 300 | 连接池最大活跃数 |
spring.datasource.druid.maxWait | 600000 | 获取连接最大等待毫秒 |
audit.query.url | http://127.0.0.1:10080 | Audit 查询服务地址 |
cluster.heartbeat.interval | 6 | 集群心跳上报间隔秒 |
agent.install.path | inlong/inlong-installer/ | Agent 安装包路径 |
default.module.id | 1 | 默认模块 ID |
inlong.encrypt.version | 1 | AES 密钥版本 |
inlong.encrypt.key.value1 | "I!N@L#O$N%G^" | AES 密钥(加密用户 secretKey 用) |
💡 说明:
application-prod.properties为生产 profile,可复制 dev 配置后切换spring.profiles.active=prod;本文实测采用 dev。
4.3 Agent 参数(agent.properties)
| 参数 | 默认值(实测) | 含义 |
|---|---|---|
agent.local.ip | 127.0.0.1 | Agent 本机 IP |
agent.manager.addr | http://127.0.0.1:8083 | Manager 开放 API 地址 |
agent.manager.auth.secretId | (空) | OpenAPI Basic 认证 ID(用户名) |
agent.manager.auth.secretKey | (空) | OpenAPI Basic 认证密钥 |
agent.cluster.tag | default_cluster | 集群标签 |
agent.cluster.name | default_agent | 集群名称 |
agent.cluster.inCharges | admin | 集群负责人 |
agent.fetcher.classname | org.apache.inlong.agent.plugin.fetcher.ManagerFetcher | 任务拉取器(默认从 Manager 拉) |
agent.fetchCenter.interval | 5 | 任务拉取轮询秒 |
agent.store.classname | org.apache.inlong.agent.plugin.store.RocksDBStoreImpl | 任务存储实现(RocksDB) |
channel.memory.capacity | 5000 | 内存通道容量 |
job.monitor.interval | 5 | 任务监控秒 |
job.number.limit | 15 | 最大同时运行任务数 |
task.maxRetry.time | 3 | 任务最大重试次数 |
agent.prometheus.exporter.port | 9080 | Prometheus 指标端口 |
audit.enable | true | 是否上报审计数据 |
4.4 DataProxy 参数(dataproxy.conf)
| 参数 | 默认值(实测) | 含义 |
|---|---|---|
agent1.sources.tcp-source.port | 46801 | TCP 数据接收端口 |
agent1.sources.http-source.port | 46802 | HTTP 数据接收端口 |
agent1.sources.tcp-source.metric-agent-port | 8003 | 指标上报端口 |
common.properties 中 proxy.cluster.tag | default_cluster | 集群标签(与 Manager 侧一致) |
4.5 Audit 参数(audit-service.properties / audit-proxy-*.conf)
| 参数 | 默认值(实测) | 含义 |
|---|---|---|
mysql.jdbc.url | jdbc:mysql://127.0.0.1:3306/apache_inlong_audit?... | Audit 存储库连接串 |
mysql.username | root | 存储库用户 |
mysql.password | inlong | 存储库密码 |
audit.proxy.address.agent | 127.0.0.1:10081 | Agent 上报审计地址 |
audit.proxy.address.dataproxy | 127.0.0.1:10081 | DataProxy 上报审计地址 |
audit.proxy.address.sort | 127.0.0.1:10081 | Sort 上报审计地址 |
audit-proxy-pulsar.conf 中 agent1.sources.tcp-source.port | 10081 | Audit Proxy 接收端口 |
audit-proxy-pulsar.conf 中 audit.config | 10082 | 配置拉取端口 |
五、核心参数分类详解
5.1 数据源连接(Manager 数据源段)
Manager 使用 Druid 连接池连接 MySQL,修改连接串需同时更新 spring.datasource.druid.url、username、password 三键。连接串关键参数:
useSSL=false:本地内网连接关闭 SSL;allowPublicKeyRetrieval=true:允许获取公钥(MySQL 8 默认 caching_sha2_password 需要);characterEncoding=UTF-8:UTF-8 编码,避免中文乱码;serverTimezone=GMT%2b8:时区东八区(URL 编码的+)。
⚠️ 注意:改密码后必须同步
inlong.conf的spring_datasource_password与 Managerapplication-*.properties的spring.datasource.druid.password,且 MySQL 侧 root 密码需一致(本文实测均为inlong)。
5.2 消息队列类型(mq_type)
inlong.conf 中 mq_type 决定整链路消息中间件:pulsar / kafka / tubemq。选择后:
- DataProxy:启动脚本第一个参数选
pulsar(对应dataproxy.conf)或kafka(对应dataproxy.conf内 kafka 段)或tubemq(对应dataproxy-tubemq.conf); - Audit:对应
audit-proxy-pulsar.conf/audit-proxy-kafka.conf/audit-proxy-tubemq.conf; - Manager 创建数据接入组时
mqType字段需一致(如PULSAR)。
5.3 用户与加密(inlong.encrypt.*)
Manager 对用户 secret_key 使用 AES 加密存储,密钥版本与密钥值在 application.properties:
inlong.encrypt.version=1
inlong.encrypt.key.value1="I!N@L#O$N%G^"
密码哈希为 Shiro SimpleHash("SHA-256", password, null, 1024)(1024 次迭代)。Agent 的 agent.manager.auth.secretKey 即取 user.secret_key 的 AES 解密明文。
5.4 任务与心跳(Agent)
agent.fetcher.classname=ManagerFetcher:Agent 启动后主动轮询 Manager(agent.manager.addr+agent.fetchCenter.interval)拉取待执行任务;agent.store.classname=RocksDBStoreImpl:任务/实例状态持久化到inlong-agent/.localdb/(RocksDB),重启不丢任务;task.maxRetry.time=3:失败任务自动重试 3 次;agent.prometheus.exporter.port=9080:暴露 Prometheus 指标。
5.5 审计链路(Audit)
Agent/DataProxy/Sort 产生的审计数据经 audit.proxy.address.* 上报到 Audit Proxy(10081),Audit Proxy 写入 MQ,Audit Store 消费 MQ 落库 MySQL(apache_inlong_audit),Manager 的 audit.query.url(10080)提供查询。链路任一环未配置(如 MQ 集群未登记)时,Store 日志会持续打印:
MQ config may not be registered yet, wait for 5s and try again
六、生产配置模板
适用场景:16 GB 内存、NVMe SSD、批量 + 实时数据同步的单机生产部署。
6.1 全局(inlong.conf)
local_ip=192.168.1.10
mq_type=pulsar
spring_datasource_hostname=192.168.1.10
spring_datasource_port=3306
spring_datasource_username=root
spring_datasource_password=inlong
manager_server_hostname=192.168.1.10
manager_server_port=8083
dataproxy_port=46801
audit_service_ip=192.168.1.10
audit_service_port=10080
audit_proxy_port=10081
6.2 Manager(application-dev.properties 追加)
spring.datasource.druid.url=jdbc:mysql://192.168.1.10:3306/apache_inlong_manager?useSSL=false&allowPublicKeyRetrieval=true&characterEncoding=UTF-8&nullCatalogMeansCurrent=true&serverTimezone=GMT%2b8
spring.datasource.druid.initialSize=10
spring.datasource.druid.minIdle=10
spring.datasource.druid.maxActive=200
cluster.heartbeat.interval=10
6.3 JVM 堆(按组件限制 256–512 MB)
export MANAGER_JVM_HEAP_OPTS="-Xms256m -Xmx512m"
export AGENT_JVM_HEAP_OPTS="-Xms256m -Xmx512m"
export DATAPROXY_JVM_HEAP_OPTS="-Xms256m -Xmx512m -XX:MaxDirectMemorySize=512m"
export AUDIT_JVM_HEAP_OPTS="-Xms256m -Xmx512m"
⚠️ 注意:生产多组件同机时,4 个 JVM 合计堆上限 2 GB(4 × 512 MB),16 GB 内存充足;若与 Pulsar/Flink 同机,需按实际内存下调或拆分部署。
七、常见问题(FAQ)
Q1:修改 application-dev.properties 后不生效?
spring.profiles.active=dev 时 Spring 优先读取 application-dev.properties 覆盖 application.properties,两处同名键以 dev 文件为准;改完必须重启 Manager。
Q2:Agent 无法上报心跳,日志报 403?
agent.manager.auth.secretId/secretKey 未配置或与 Manager 侧用户密钥不一致,重新按《安装指南》5.4 配置。
Q3:agent.manager.addr 改了端口为何仍连 8083?
Agent 的 Manager 地址由 agent.manager.addr 决定;若同时存在环境变量或旧进程,先 bin/agent.sh stop 再启动。
Q4:DataProxy 默认堆 2 GB 太大怎么办?
用 DATAPROXY_JVM_HEAP_OPTS 覆盖,见「三、JVM 堆内存参数」。
Q5:Audit 库 apache_inlong_audit 没有建出来?
Audit Store 启动后按 audit-proxy-*.conf 的 MQ 配置消费并自动建库建表;MQ 集群未登记时只等待不建库(日志见 5.5)。可手动执行 INLONG_HOME/inlong-audit/sql/apache_inlong_audit_mysql.sql 建表。
八、参考链接
- Apache InLong 官方文档:https://inlong.apache.org/docs/next/
- 官方配置参考(英文):https://inlong.apache.org/docs/next/quick_start/
- 安装指南:《Ubuntu 22.04 安装 Apache InLong 2.4.0 指南》
- CLI 工具:《Apache InLong 2.4.0 常用 CLI 命令与工具详解》