当前位置: 首页 > news >正文

OpenTSDB 部署与运维技术文档

OpenTSDB 部署与运维技术文档

1. OpenTSDB 安装

1.1 ZooKeeper 安装

  1. 下载 apache-zookeeper-3.9.2-bin.tar.gz 安装包,解压后进入配置目录,复制模板配置文件并更名:

    tar -zxvf apache-zookeeper-3.9.2-bin.tar.gz
    cd apache-zookeeper-3.9.2-bin/conf
    cp zoo_sample.cfg zoo.cfg
    
  2. 编辑 zoo.cfg 配置文件,关键参数如下:

    # 时间单位(毫秒)
    tickTime=2000
    # 初始化同步阶段允许的最大 tick 数
    initLimit=10
    # 发送请求到接收应答的最大 tick 数
    syncLimit=5
    # 快照存储目录(需提前创建)
    dataDir=/usr/local/zookeeper/apache-zookeeper-3.9.2-bin/zkdata
    # 客户端连接端口
    clientPort=2181
    # 避免占用默认 8080 端口
    admin.serverPort=8090
    
  3. 启动 ZooKeeper 服务:

    cd ../bin
    ./zkServer.sh start
    

1.2 HBase 安装

方法一:使用 HBase 自带 ZooKeeper(推荐)
  1. 下载 hbase-2.4.17-bin.tar.gz 并解压,修改 conf/hbase-env.sh 配置文件:

    tar -zxvf hbase-2.4.17-bin.tar.gz
    cd hbase-2.4.17/conf
    vi hbase-env.sh
    

    添加以下配置:

    # 配置 JDK 安装目录
    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b09-4.el9.x86_64/jre
    # 开启内置 ZooKeeper
    export HBASE_MANAGES_ZK=true
    
  2. 编辑 conf/hbase-site.xml 配置文件:

    <configuration><property><name>hbase.cluster.distributed</name><value>false</value></property><property><name>hbase.tmp.dir</name><value>./tmp</value></property><property><name>hbase.unsafe.stream.capability.enforce</name><value>false</value></property><property><name>hbase.rootdir</name><!-- HBase 安装目录 --><value>file:///home/hbase/hbase-2.4.17</value></property><property><name>hbase.zookeeper.property.dataDir</name><!-- 内置 ZooKeeper 数据目录 --><value>/home/hbase/hbase-2.4.17/zookeeper</value></property>
    </configuration>
    
  3. 启动与停止命令:

    # 启动 HBase
    ./bin/start-hbase.sh
    # 停止 HBase(注:原文档此处为 typo,正确命令为 stop-hbase.sh)
    ./bin/stop-hbase.sh
    
  4. 配置 HBase 环境变量:

    vi ~/.bashrc
    

    添加以下内容:

    export HBASE_HOME=/usr/local/hbase/hbase-2.4.17
    export PATH=$HBASE_HOME/bin:$PATH
    

    使配置生效并验证:

    source ~/.bashrc
    echo $HBASE_HOME
    
方法二:使用系统已安装的 ZooKeeper
  1. 下载 hbase-2.4.17-bin.tar.gz 并解压,修改 conf/hbase-env.sh 配置文件:

    tar -zxvf hbase-2.4.17-bin.tar.gz
    cd hbase-2.4.17/conf
    vi hbase-env.sh
    

    添加以下配置:

    # 配置 JDK 安装目录
    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b09-4.el9.x86_64/jre
    # 关闭 HBase 内置 ZooKeeper
    export HBASE_MANAGES_ZK=false
    
  2. 编辑 conf/hbase-site.xml 配置文件:

    <configuration><property><name>hbase.cluster.distributed</name><value>true</value></property><property><name>hbase.tmp.dir</name><value>./tmp</value></property><property><name>hbase.unsafe.stream.capability.enforce</name><value>false</value></property><property><name>hbase.rootdir</name><value>file:///usr/local/hbase/hbase-2.4.17</value></property><property><name>hbase.zookeeper.property.dataDir</name><value>/usr/local/zookeeper/apache-zookeeper-3.9.2-bin/zkdata</value></property><!-- 单机模式 ZooKeeper 地址 --><property><name>hbase.zookeeper.quorum</name><value>localhost</value></property><!-- ZooKeeper 客户端端口 --><property><name>hbase.zookeeper.property.clientPort</name><value>2181</value></property>
    </configuration>
    
  3. 启动与停止命令:

    # 集群模式启动
    ./bin/start-hbase.sh
    # 停止 HBase(注:原文档此处为 typo,正确命令为 stop-hbase.sh)
    ./bin/stop-hbase.sh# 单独启动 Master 节点
    ./bin/hbase-daemon.sh start master
    # 单独停止 Master 节点
    ./bin/hbase-daemon.sh stop master
    

1.3 HBase 系统服务配置(hbase.service)

  1. 以 root 权限创建服务文件:

    sudo vi /etc/systemd/system/hbase.service
    
  2. 编辑服务文件内容:

    [Unit]
    Description=HBase service
    After=network.target[Service]
    WorkingDirectory=/usr/local/hbase/hbase-2.4.17
    ExecStart=/usr/local/hbase/hbase-2.4.17/bin/hbase-daemon.sh start master
    ExecStop=/usr/local/hbase/hbase-2.4.17/bin/hbase-daemon.sh stop masterUser=root
    Group=root
    Restart=on-failure
    RestartSec=5s
    # 后台运行模式
    Type=forking
    StandardOutput=append:/usr/local/hbase/1.log
    StandardError=append:/usr/local/hbase/1.log[Install]
    WantedBy=multi-user.target
    
  3. 刷新 systemd 配置并管理服务:

    # 刷新配置
    sudo systemctl daemon-reload
    # 启动服务
    sudo systemctl start hbase
    # 设置开机自启
    sudo systemctl enable hbase
    # 查看服务状态
    sudo systemctl status hbase
    

1.4 OpenTSDB 安装与配置

  1. 下载 opentsdb-2.4.1.tar.gz 并解压,进入目录后构建项目(注:原文档版本号存在不一致,统一为 2.4.1):

    tar -zxvf opentsdb-2.4.1.tar.gz
    cd opentsdb-2.4.1
    # 创建构建目录并复制依赖
    mkdir build
    cp -r third_party ./build	
    # 执行构建
    ./build.sh
    
  2. 生成配置文件:

    ./configure
    
  3. 编辑 src/opentsdb.conf 配置文件:

    vim src/opentsdb.conf
    

    修改以下关键参数:

    # 1)第4行:服务端口
    tsd.network.port = 4242
    # 2)第29行:静态资源目录
    tsd.http.staticroot = /usr/local/opentsdb/opentsdb-2.4.1/build/staticroot
    # 3)第33行:HTTP 缓存目录
    tsd.http.cachedir = /tmp/tsd
    # 4)第38行:自动创建指标
    tsd.core.auto_create_metrics = true
    # 5)第70行:ZooKeeper 地址
    tsd.storage.hbase.zk_quorum = localhost:2181
    # 6)新增:重复数据覆盖策略
    tsd.storage.fix_duplicates = true
    
  4. 修改表创建脚本并初始化 HBase 表:

    # 编辑脚本关闭 LZO 压缩(第19行)
    vim tools/create_table.sh
    # 修改内容:COMPRESSION=${COMPRESSION-'NONE'}
    # 执行建表命令
    ./tools/create_table.sh
    
  5. 启动 OpenTSDB:

    cd /usr/local
    nohup ./opentsdb/opentsdb-2.4.1/build/tsdb tsd --config=/usr/local/opentsdb/opentsdb-2.4.1/src/opentsdb.conf > ./opentsdb/opentsdb-2.4.1/1.log &
    
  6. 验证安装:在浏览器访问 http://192.168.2.102:4242,显示控制台页面即为成功。

  7. OpenTSDB 系统服务配置(opentsdb.service):
    创建服务文件:

    sudo vi /etc/systemd/system/opentsdb.service
    

    编辑内容:

    [Unit]
    Description=OpenTSDB service
    After=network.target[Service]
    WorkingDirectory=/usr/local
    ExecStart=/usr/local/opentsdb/opentsdb-2.4.1/build/tsdb tsd --config=/usr/local/opentsdb/opentsdb-2.4.1/src/opentsdb.confUser=root
    Group=root
    Restart=always
    StandardOutput=append:/usr/local/opentsdb/opentsdb-2.4.1/1.log
    StandardError=append:/usr/local/opentsdb/opentsdb-2.4.1/1.log[Install]
    WantedBy=multi-user.target
    

1.5 OpenTSDB 数据备份与还原

方法一:HBase 快照备份
  1. 创建表快照(需 HBase 运行中):

    hbase shell
    # 格式:snapshot '<表名>','<快照名称>'
    snapshot '<表名>','<快照名称>'
    
  2. 查看快照列表:

    hbase shell
    list_snapshots
    

    快照存储路径:/usr/local/hbase/hbase-2.4.17/.hbase-snapshot

  3. 快照还原:

    • 先删除现有表(若存在):
      hbase shell
      disable '<表名>'
      drop '<表名>'
      exit
      
    • 从快照恢复:
      hbase shell
      clone_snapshot '<快照名称>', '<表名>'
      
方法二:Export + Import 备份
  1. 全量导出备份:

    hbase org.apache.hadoop.hbase.mapreduce.Export -Dhbase.export.scanner.batch=2000 -D mapred.output.compress=true tsdb file:///opt/soft/hbase/hbase_bak/hbase_bak
    

    参数说明:

    • -Dhbase.export.scanner.batch=2000:每次扫描 2000 行
    • -D mapred.output.compress=true:启用压缩
    • tsdb:目标表名
    • file:///opt/soft/hbase/hbase_bak/hbase_bak:备份文件路径
  2. 清空表数据:

    hbase shell
    truncate 'tsdb'
    exit
    
  3. 导入备份数据:

    hbase org.apache.hadoop.hbase.mapreduce.Driver import tsdb file:///opt/soft/hbase/hbase_bak/hbase_bak
    
  4. 增量备份:

    hbase org.apache.hadoop.hbase.mapreduce.Export -Dhbase.export.scanner.batch=2000 -D mapred.output.compress=true tsdb file:///opt/soft/hbase/hbase_bak/hbase_bak_1715875200-1715933805 1715875200 1715933805
    

    参数说明:

    • 1715875200:开始时间戳
    • 1715933805:结束时间戳
    • 时间戳转换工具:https://tool.chinaz.com/Tools/unixtime.aspx
    • 增量恢复参考全量导入步骤。

2. iptables 配置

2.1 常用命令

  1. 查看 iptables 规则:

    sudo iptables -L -v -n
    
  2. 开放指定端口(示例:3306):

    sudo iptables -A OUTPUT -p tcp --dport 3306 -j ACCEPT
    
  3. 保存并重启 iptables 服务:

    sudo service iptables save
    sudo service iptables restart
    ```# OpenTSDB 部署与运维技术文档
    

1. OpenTSDB 安装

1.1 ZooKeeper 安装

  1. 下载 apache-zookeeper-3.9.2-bin.tar.gz 安装包,解压后进入配置目录,复制模板配置文件并更名:

    tar -zxvf apache-zookeeper-3.9.2-bin.tar.gz
    cd apache-zookeeper-3.9.2-bin/conf
    cp zoo_sample.cfg zoo.cfg
    
  2. 编辑 zoo.cfg 配置文件,关键参数如下:

    # 时间单位(毫秒)
    tickTime=2000
    # 初始化同步阶段允许的最大 tick 数
    initLimit=10
    # 发送请求到接收应答的最大 tick 数
    syncLimit=5
    # 快照存储目录(需提前创建)
    dataDir=/usr/local/zookeeper/apache-zookeeper-3.9.2-bin/zkdata
    # 客户端连接端口
    clientPort=2181
    # 避免占用默认 8080 端口
    admin.serverPort=8090
    
  3. 启动 ZooKeeper 服务:

    cd ../bin
    ./zkServer.sh start
    

1.2 HBase 安装

方法一:使用 HBase 自带 ZooKeeper(推荐)
  1. 下载 hbase-2.4.17-bin.tar.gz 并解压,修改 conf/hbase-env.sh 配置文件:

    tar -zxvf hbase-2.4.17-bin.tar.gz
    cd hbase-2.4.17/conf
    vi hbase-env.sh
    

    添加以下配置:

    # 配置 JDK 安装目录
    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b09-4.el9.x86_64/jre
    # 开启内置 ZooKeeper
    export HBASE_MANAGES_ZK=true
    
  2. 编辑 conf/hbase-site.xml 配置文件:

    <configuration><property><name>hbase.cluster.distributed</name><value>false</value></property><property><name>hbase.tmp.dir</name><value>./tmp</value></property><property><name>hbase.unsafe.stream.capability.enforce</name><value>false</value></property><property><name>hbase.rootdir</name><!-- HBase 安装目录 --><value>file:///home/hbase/hbase-2.4.17</value></property><property><name>hbase.zookeeper.property.dataDir</name><!-- 内置 ZooKeeper 数据目录 --><value>/home/hbase/hbase-2.4.17/zookeeper</value></property>
    </configuration>
    
  3. 启动与停止命令:

    # 启动 HBase
    ./bin/start-hbase.sh
    # 停止 HBase(注:原文档此处为 typo,正确命令为 stop-hbase.sh)
    ./bin/stop-hbase.sh
    
  4. 配置 HBase 环境变量:

    vi ~/.bashrc
    

    添加以下内容:

    export HBASE_HOME=/usr/local/hbase/hbase-2.4.17
    export PATH=$HBASE_HOME/bin:$PATH
    

    使配置生效并验证:

    source ~/.bashrc
    echo $HBASE_HOME
    
方法二:使用系统已安装的 ZooKeeper
  1. 下载 hbase-2.4.17-bin.tar.gz 并解压,修改 conf/hbase-env.sh 配置文件:

    tar -zxvf hbase-2.4.17-bin.tar.gz
    cd hbase-2.4.17/conf
    vi hbase-env.sh
    

    添加以下配置:

    # 配置 JDK 安装目录
    export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.362.b09-4.el9.x86_64/jre
    # 关闭 HBase 内置 ZooKeeper
    export HBASE_MANAGES_ZK=false
    
  2. 编辑 conf/hbase-site.xml 配置文件:

    <configuration><property><name>hbase.cluster.distributed</name><value>true</value></property><property><name>hbase.tmp.dir</name><value>./tmp</value></property><property><name>hbase.unsafe.stream.capability.enforce</name><value>false</value></property><property><name>hbase.rootdir</name><value>file:///usr/local/hbase/hbase-2.4.17</value></property><property><name>hbase.zookeeper.property.dataDir</name><value>/usr/local/zookeeper/apache-zookeeper-3.9.2-bin/zkdata</value></property><!-- 单机模式 ZooKeeper 地址 --><property><name>hbase.zookeeper.quorum</name><value>localhost</value></property><!-- ZooKeeper 客户端端口 --><property><name>hbase.zookeeper.property.clientPort</name><value>2181</value></property>
    </configuration>
    
  3. 启动与停止命令:

    # 集群模式启动
    ./bin/start-hbase.sh
    # 停止 HBase(注:原文档此处为 typo,正确命令为 stop-hbase.sh)
    ./bin/stop-hbase.sh# 单独启动 Master 节点
    ./bin/hbase-daemon.sh start master
    # 单独停止 Master 节点
    ./bin/hbase-daemon.sh stop master
    

1.3 HBase 系统服务配置(hbase.service)

  1. 以 root 权限创建服务文件:

    sudo vi /etc/systemd/system/hbase.service
    
  2. 编辑服务文件内容:

    [Unit]
    Description=HBase service
    After=network.target[Service]
    WorkingDirectory=/usr/local/hbase/hbase-2.4.17
    ExecStart=/usr/local/hbase/hbase-2.4.17/bin/hbase-daemon.sh start master
    ExecStop=/usr/local/hbase/hbase-2.4.17/bin/hbase-daemon.sh stop masterUser=root
    Group=root
    Restart=on-failure
    RestartSec=5s
    # 后台运行模式
    Type=forking
    StandardOutput=append:/usr/local/hbase/1.log
    StandardError=append:/usr/local/hbase/1.log[Install]
    WantedBy=multi-user.target
    
  3. 刷新 systemd 配置并管理服务:

    # 刷新配置
    sudo systemctl daemon-reload
    # 启动服务
    sudo systemctl start hbase
    # 设置开机自启
    sudo systemctl enable hbase
    # 查看服务状态
    sudo systemctl status hbase
    

1.4 OpenTSDB 安装与配置

  1. 下载 opentsdb-2.4.1.tar.gz 并解压,进入目录后构建项目(注:原文档版本号存在不一致,统一为 2.4.1):

    tar -zxvf opentsdb-2.4.1.tar.gz
    cd opentsdb-2.4.1
    # 创建构建目录并复制依赖
    mkdir build
    cp -r third_party ./build	
    # 执行构建
    ./build.sh
    
  2. 生成配置文件:

    ./configure
    
  3. 编辑 src/opentsdb.conf 配置文件:

    vim src/opentsdb.conf
    

    修改以下关键参数:

    # 1)第4行:服务端口
    tsd.network.port = 4242
    # 2)第29行:静态资源目录
    tsd.http.staticroot = /usr/local/opentsdb/opentsdb-2.4.1/build/staticroot
    # 3)第33行:HTTP 缓存目录
    tsd.http.cachedir = /tmp/tsd
    # 4)第38行:自动创建指标
    tsd.core.auto_create_metrics = true
    # 5)第70行:ZooKeeper 地址
    tsd.storage.hbase.zk_quorum = localhost:2181
    # 6)新增:重复数据覆盖策略
    tsd.storage.fix_duplicates = true
    
  4. 修改表创建脚本并初始化 HBase 表:

    # 编辑脚本关闭 LZO 压缩(第19行)
    vim tools/create_table.sh
    # 修改内容:COMPRESSION=${COMPRESSION-'NONE'}
    # 执行建表命令
    ./tools/create_table.sh
    
  5. 启动 OpenTSDB:

    cd /usr/local
    nohup ./opentsdb/opentsdb-2.4.1/build/tsdb tsd --config=/usr/local/opentsdb/opentsdb-2.4.1/src/opentsdb.conf > ./opentsdb/opentsdb-2.4.1/1.log &
    
  6. 验证安装:在浏览器访问 http://192.168.2.102:4242,显示控制台页面即为成功。

  7. OpenTSDB 系统服务配置(opentsdb.service):
    创建服务文件:

    sudo vi /etc/systemd/system/opentsdb.service
    

    编辑内容:

    [Unit]
    Description=OpenTSDB service
    After=network.target[Service]
    WorkingDirectory=/usr/local
    ExecStart=/usr/local/opentsdb/opentsdb-2.4.1/build/tsdb tsd --config=/usr/local/opentsdb/opentsdb-2.4.1/src/opentsdb.confUser=root
    Group=root
    Restart=always
    StandardOutput=append:/usr/local/opentsdb/opentsdb-2.4.1/1.log
    StandardError=append:/usr/local/opentsdb/opentsdb-2.4.1/1.log[Install]
    WantedBy=multi-user.target
    

1.5 OpenTSDB 数据备份与还原

方法一:HBase 快照备份
  1. 创建表快照(需 HBase 运行中):

    hbase shell
    # 格式:snapshot '<表名>','<快照名称>'
    snapshot '<表名>','<快照名称>'
    
  2. 查看快照列表:

    hbase shell
    list_snapshots
    

    快照存储路径:/usr/local/hbase/hbase-2.4.17/.hbase-snapshot

  3. 快照还原:

    • 先删除现有表(若存在):
      hbase shell
      disable '<表名>'
      drop '<表名>'
      exit
      
    • 从快照恢复:
      hbase shell
      clone_snapshot '<快照名称>', '<表名>'
      
方法二:Export + Import 备份
  1. 全量导出备份:

    hbase org.apache.hadoop.hbase.mapreduce.Export -Dhbase.export.scanner.batch=2000 -D mapred.output.compress=true tsdb file:///opt/soft/hbase/hbase_bak/hbase_bak
    

    参数说明:

    • -Dhbase.export.scanner.batch=2000:每次扫描 2000 行
    • -D mapred.output.compress=true:启用压缩
    • tsdb:目标表名
    • file:///opt/soft/hbase/hbase_bak/hbase_bak:备份文件路径
  2. 清空表数据:

    hbase shell
    truncate 'tsdb'
    exit
    
  3. 导入备份数据:

    hbase org.apache.hadoop.hbase.mapreduce.Driver import tsdb file:///opt/soft/hbase/hbase_bak/hbase_bak
    
  4. 增量备份:

    hbase org.apache.hadoop.hbase.mapreduce.Export -Dhbase.export.scanner.batch=2000 -D mapred.output.compress=true tsdb file:///opt/soft/hbase/hbase_bak/hbase_bak_1715875200-1715933805 1715875200 1715933805
    

    参数说明:

    • 1715875200:开始时间戳
    • 1715933805:结束时间戳
    • 时间戳转换工具:https://tool.chinaz.com/Tools/unixtime.aspx
    • 增量恢复参考全量导入步骤。

2. iptables 配置

2.1 常用命令

  1. 查看 iptables 规则:

    sudo iptables -L -v -n
    
  2. 开放指定端口(示例:3306):

    sudo iptables -A OUTPUT -p tcp --dport 3306 -j ACCEPT
    
  3. 保存并重启 iptables 服务:

    sudo service iptables save
    sudo service iptables restart
    
http://www.dtcms.com/a/385730.html

相关文章:

  • 【第三方软件测评机构:Apache JMeter分布式负载测试过程】
  • 【案例教程】R语言数据统计分析与ggplot2高级绘图实践应用
  • 大数据时代时序数据库选型指南:为何 Apache IoTDB 成优选(含实操步骤)
  • qt QCandlestickLegendMarker详解
  • Apache IoTDB(6):深入解析数据库管理操作——增删改查与异构数据库实战指南
  • 华为任旭东:开源协作,激发创新,共创智能世界 | GOSIM HANGZHOU 2025
  • 领码方案|权限即数据:企业系统中的字段级访问控制架构实战(Ver=1.1)
  • 如何解决 pip install 安装报错 ModuleNotFoundError: No module named ‘lxml’ 问题
  • Linux -- 应用层协议Http
  • MongoDB 与 MySQL:异同详解与场景选择指南
  • 金融数学专业核心课程有哪些?需要学编程吗?
  • 链接 HTTPS 出问题怎么办?(HTTPS 链接 异常 证书错误 iOS 链接 https 抓包 443 端口 调试 全攻略)
  • Linux系统学习之进阶命令汇总
  • [特殊字符] Get Jobs【工作无忧】
  • 基于springboot的计算机在线考试管理系统
  • 深入浅出CRC校验:从数学原理到单周期硬件实现 (4)硬件实现代码
  • 【面试场景题】谈谈你对Seata的理解
  • C++基础:clang的分步编译-了解build细节
  • OS-内存管理 真题复盘总结
  • 一阶低通滤波在运动控制中的应用
  • Redis核心数据类型解析
  • 在 Ubuntu 22.04 系统中,如何安装最新版 MySQL和Navicat Pro 17
  • 立创·庐山派K230CanMV开发板的进阶学习——颜色识别
  • 大模型学习:Transformer模型构建
  • C++ STL之deque的使用和模拟实现
  • 【网络安全就业】信息安全专业的就业前景(非常详细)零基础入门到精通,收藏这篇就够了
  • SpringBoot中的循环依赖以及解决办法
  • np.linalg 函数一览
  • 网络:UDP协议
  • 【开题答辩全过程】以 JAVA汽车年审管理系统为例,包含答辩的问题和答案