TT Bigdata TT Bigdata
首页
GitHub (opens new window)
JaneTTR

JaneTTR

数据酿造智慧,每一滴都是沉淀!
  • 产品中心

  • 安装与使用

    • Ambari Plus 安装

    • 组件安装

    • 开启高可用

    • 权限与安全专题

    • Ambari Plus Monitor

      • IoTDB 安装与部署
        • IoTDB 安装与部署
        • 1. 准备 IoTDB 安装包
        • 2. 解压并创建固定软链接
        • 3. 配置 ConfigNode 和 DataNode
        • 4. 启动 IoTDB
        • 5. 验证 IoTDB 集群状态
        • 6. 为 Monitor 准备专用用户
        • 7. 留给 Monitor 的连接参数
      • 必须 ambari plus monitor 数据库初始化文件
      • Monitor 安装
      • 监控与告警使用
    • 常见问题

  • 发布与支持

  • 会员与访问

目录
IoTDB 安装与部署
1. 准备 IoTDB 安装包
2. 解压并创建固定软链接
3. 配置 ConfigNode 和 DataNode
4. 启动 IoTDB
5. 验证 IoTDB 集群状态
6. 为 Monitor 准备专用用户
7. 留给 Monitor 的连接参数

IoTDB 安装与部署1.3.0

# IoTDB 安装与部署

Ambari Plus Monitor 会把采集到的时序指标写入 IoTDB,所以在安装 Monitor 服务前,我会先把 IoTDB 单独准备好。本文示例使用单机 IoTDB 1.3.0,部署在 hadoop1.test.com,后续 Monitor 安装向导里也会使用这台机器作为 IoTDB 入口。

本篇环境继续沿用三台 FQDN 主机,不过 IoTDB 只放在核心节点:

主机 本次角色 说明
hadoop1.test.com ConfigNode、DataNode IoTDB 服务端,提供 26667 写入入口。
hadoop2.test.com 无 后续只安装 Monitor Agent。
hadoop3.test.com 无 后续只安装 Monitor Agent。

提示

本文为了演示方便使用 IoTDB 默认账号 root / root。生产环境建议按安全规范修改密码,并把 Monitor 连接账号收敛到最小权限。

Ambari Plus 3.0.2

从 Ambari Plus 3.0.2 开始,Monitor 可以使用客户自建的 IoTDB 用户,不再要求长期使用 root。安装页会区分“自动建库”和“管理员预创建”两种模式,并提供连接与权限预检。

# 1. 准备 IoTDB 安装包

在 hadoop1.test.com 上创建安装包目录,把 iotdb-distribution-1.3.0-all-bin.zip 放到 /data/modules/iotdb。我这里使用 1.3.0,是因为当前 Ambari Plus Monitor 的 IoTDB 客户端依赖也按这个版本准备,先保证服务端和客户端版本口径一致。

mkdir -p /data/modules/iotdb
cd /data/modules/iotdb
ls -lh iotdb-distribution-1.3.0-all-bin.zip
1
2
3

如果安装包来自离线介质,建议顺手做一次校验:

sha1sum iotdb-distribution-1.3.0-all-bin.zip
1

本文环境的校验值如下:

afd3040847db44a836d6c2501d9ac436adea508f  iotdb-distribution-1.3.0-all-bin.zip
1

# 2. 解压并创建固定软链接

把安装包解压到 /opt/modules,然后创建 /opt/modules/iotdb 软链接。后续写配置、启动服务、填写 Monitor 参数时都使用软链接路径,升级时也更容易切版本。

unzip -q iotdb-distribution-1.3.0-all-bin.zip -d /opt/modules
ln -sfn /opt/modules/apache-iotdb-1.3.0-all-bin /opt/modules/iotdb
ls -lh /opt/modules/iotdb
1
2
3

解压完成后,目录里能看到 conf、sbin、lib 等子目录。

# 3. 配置 ConfigNode 和 DataNode

IoTDB 1.3.0 会同时启动 ConfigNode 和 DataNode。单机部署时,ConfigNode 内部地址、DataNode 内部地址、seed config node 都指向 hadoop1.test.com 即可。

cd /opt/modules/iotdb

cat >> conf/iotdb-common.properties <<'EOF'
cluster_name=TtbigdataMonitor
EOF

cat >> conf/iotdb-confignode.properties <<'EOF'
cn_internal_address=hadoop1.test.com
cn_internal_port=10710
cn_seed_config_node=hadoop1.test.com:10710
EOF

cat >> conf/iotdb-datanode.properties <<'EOF'
dn_rpc_address=0.0.0.0
dn_rpc_port=26667
dn_internal_address=hadoop1.test.com
dn_seed_config_node=hadoop1.test.com:10710
EOF
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18

内存先按小集群演示值设置,后面如果采集量变大,再结合主机资源调整。

sed -i 's/^MEMORY_SIZE=.*/MEMORY_SIZE=1024M/' conf/confignode-env.sh
sed -i 's/^MEMORY_SIZE=.*/MEMORY_SIZE=2048M/' conf/datanode-env.sh
1
2

配置完成后,我会先 grep 一遍关键参数,避免把 localhost、短主机名或默认端口漏在配置里。

IoTDB 安装包与配置确认

# 4. 启动 IoTDB

先启动 ConfigNode,再启动 DataNode。

cd /opt/modules/iotdb
sbin/start-confignode.sh -d
sbin/start-datanode.sh -d
1
2
3

启动后看两个结果:Java 进程在不在,26667 和 10710 端口是否监听。

jps -l | egrep 'ConfigNode|DataNode'
ss -lntp | egrep '26667|10710'
1
2

如果 jps 能看到 org.apache.iotdb.confignode.service.ConfigNode 和 org.apache.iotdb.db.service.DataNode,并且端口监听正常,就可以进 CLI 做最终确认。

# 5. 验证 IoTDB 集群状态

使用 IoTDB 自带 CLI 连接 hadoop1.test.com:26667:

/opt/modules/iotdb/sbin/start-cli.sh \
  -h hadoop1.test.com \
  -p 26667 \
  -u root \
  -pw root
1
2
3
4
5

进入 CLI 后执行:

show cluster;
1

ConfigNode 和 DataNode 都是 Running,版本显示 1.3.0,说明 Monitor 后续可以使用这个入口写入指标。

IoTDB 启动与状态确认

# 6. 为 Monitor 准备专用用户 3.0.2+

生产环境里,我更建议提前创建 root.monitor,再给 Monitor 运行用户授予这个路径下的最小权限。这样运行账号不需要全局建库权限,后续审计也更清楚。

先使用 IoTDB 管理员账号进入 CLI,然后创建数据库、角色和运行用户:

CREATE DATABASE root.monitor;

CREATE ROLE IOTDB;
CREATE USER monitor_user 'ChangeMe_Strong_Password';

GRANT READ_DATA, WRITE_DATA, READ_SCHEMA, WRITE_SCHEMA
ON root.monitor.** TO ROLE IOTDB;

GRANT ROLE IOTDB TO monitor_user;
1
2
3
4
5
6
7
8
9

如果用户或角色已经存在,只执行缺少的授权即可。示例密码必须替换,生产环境不要直接使用文中的字符串。

授权路径要覆盖子路径

Monitor 指标会继续写到 root.monitor 下的主机、服务和指标子路径,因此授权范围必须写成 root.monitor.**。只授权 root.monitor 本身,不能覆盖后续实际写入的时序路径。

如果希望由 Monitor 第一次启动时自动创建 root.monitor,还要给运行用户增加建库权限:

GRANT MANAGE_DATABASE ON root.** TO ROLE IOTDB;
1

两种模式的权限差异如下:

使用方式 页面中的“启动时自动创建 IoTDB 数据库” 数据库准备 运行用户权限
管理员预创建 推荐 关闭 管理员提前执行 CREATE DATABASE root.monitor root.monitor.** 上的 READ_DATA、WRITE_DATA、READ_SCHEMA、WRITE_SCHEMA
Monitor 自动创建 开启 可以暂不创建,由 Ingester 启动时创建 除上述读写与 Schema 权限外,还需要 root.** 上的 MANAGE_DATABASE

角色授权和直接给用户授权都可以。若不使用角色,可以把示例中的 TO ROLE IOTDB 改为 TO USER monitor_user。配置 Monitor 前,我会先确认角色关系和最终有效权限:

LIST ROLE OF USER monitor_user;
LIST PRIVILEGES OF USER monitor_user;
1
2

LIST PRIVILEGES OF USER 会同时显示用户直接获得的权限和从角色继承的权限。检查结果里至少要能看到 root.monitor.** 的四项运行权限;开启自动建库时,还要看到 root.** 的 MANAGE_DATABASE。

# 7. 留给 Monitor 的连接参数

IoTDB 准备好以后,后面安装 Ambari Plus Monitor 时就按下面这组参数填写。

配置项 本文示例值 说明
IoTDB Host hadoop1.test.com 使用 FQDN,和集群主机名保持一致。
IoTDB Port 26667 DataNode RPC 端口。
IoTDB User root 教程环境使用默认用户;生产环境可填写前面创建的 monitor_user。
IoTDB Password root 教程环境使用默认密码;使用专用用户时填写对应密码。
IoTDB Storage Group root.monitor Monitor 指标写入的存储组。
启动时自动创建 IoTDB 数据库 开启 教程环境可以开启;管理员已经预创建 root.monitor 时建议关闭。

到这里,Monitor 依赖的时序库已经准备完成。下一步先导入 Monitor 元数据库初始化 SQL,再进入 Ambari Plus 页面安装 Monitor 服务。

#Ambari Plus Monitor#IoTDB#时序数据库#安装部署
附录:Active Directory 实验环境
【必须】ambari plus monitor 数据库初始化文件

← 附录:Active Directory 实验环境 【必须】ambari plus monitor 数据库初始化文件→

最近更新
01
当前版本 2026/08
08-29
02
把 Ambari Server HA 稳稳地跑起来
08-17
03
从一次启用操作追到主备就绪
08-17
更多文章>
Theme by Vdoing | Copyright © 2017-2026 JaneTTR | MIT License
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式