阿里云-云小站(无限量代金券发放中)
【腾讯云】云服务器、云数据库、COS、CDN、短信等热卖云产品特惠抢购

OpenTSDB+Grafana 监控环境搭建

162次阅读
没有评论

共计 9346 个字符,预计需要花费 24 分钟才能阅读完成。

OpenTSDB+Grafana 监控环境搭建

硬件 3 台服务器.192.168.1.1;192.168.1.2;192.168.1.3。64 位 CentOS6.5
 
1. 安装 rzsz
yum install lrzsz
 
2. 安装 jdk
yum -y list Java*
yum -y install java-1.7.0-openjdk*
 
3. 配置 JAVA_HOME
vi  /etc/profile
export JAVA_HOME=/usr/lib/jvm/java-1.7.0
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar 
export PATH=$PATH:$JAVA_HOME/bin 
// 生效
source /etc/profile 
// 测试 JAVA_HOME 是否生效
echo $JAVA_HOME
 
4. 安装 zookeeper
zookeeper-3.4.8.tar.gz
上传 zookeeper
cd /usr/local/src
rz
tar -zxvf zookeeper-3.4.8.tar.gz 
cd /home
mkdir zookeeper
cd zookeeper
mkdir data
mkdir logs
cp -r /usr/local/src/zookeeper-3.4.8 /home/zookeeper/
cd /home/zookeeper/zookeeper-3.4.8/conf
mv zoo_sample.cfg  zoo.cfg
vi zoo.cfg
# 修改数据目录.
dataDir=/home/zookeeper/data
# 增加日志目录
dataLogDir=/home/zookeeper/logs 
# 增加部署地址
server.1=192.168.1.1:2888:3888
server.2=192.168.1.2:2888:3888
server.3=192.168.1.3:2888:3888
# 修改 server.1 的 myid。写入 1;server.2 则写入 2
cd /home/zookeeper/data
vi myid
# 其他两台重复以上步骤
# 启动
cd /home/zookeeper/zookeeper-3.4.8/bin
./zkServer.sh start
# 关闭
./zkServer.sh stop
# 测试集群是否都启动成功
./zkCli.sh -server 192.168.1.1:2181
 
5. 安装 Hadoop

一、配置 hosts 文件

二、建立 hadoop 运行帐号(也可直接用 root 账号)

三、配置 ssh 免密码连入

四、下载并解压 hadoop 安装包

五、配置各种配置文件

六、向各节点复制 hadoop

七、格式化 namenode

八、启动 hadoop

九、用 jps 检验各后台进程是否成功启动

十、通过网站查看集群情况


5.1 配置 host
(1)编辑 /etc/hosts 文件
vi /etc/hosts
192.168.1.1 sms-test-001
192.168.1.2 sms-test-002
 
192.168.1.3 sms-test-003
#sms-test-001 作为 master,sms-test-002,sms-test-003 作为 slave

(2)编辑 /etc/sysconfig/network 文件

(3)Hostname设置
hostname sms-test-001
(4)输入 hostname 验证

5.2 建立 hadoop
运行账号
// 设置 hadoop 用户组

sudo groupadd hadoop

// 添加一个 hadoop 用户,此用户属于 hadoop 用户组

 

sudo useradd -s /bin/bash -d /home/user/hadoop -m hadoop -g hadoop

# 设置 hadoop 权限./home 目录的读写执性权限

setfacl -m u:hadoop:rwx /home

// 设置用户 hadoop 登录密码

sudo passwd hadoop

 

// 切换到 hadoop 用户中 

su hadoop

【注】不一定要新建账号。例如我用 root 账号登录的,直接用 root 账号也可以,为了方便下面就直接用 root 账号操作。

 

5.3 配置 ssh 免密码连接

# 单点回环免密码登录

cd /root

ssh-keygen -t dsa -P ” -f ~/.ssh/id_dsa

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

chmod 0600 ~/.ssh/authorized_keys

# 验证免密码。welcome 则表示成功

ssh localhost

# 退出用 exit

#master 连接 slave 免密码登录

#sms-test-002 服务器

cd /root/.ssh

scp root@sms-test-001:~/.ssh/id_dsa.pub ./master_dsa.pub

cat master_dsa.pub >> authorized_keys
#sms-test-001 服务器 ssh sms-test-002。第一次需要密码,后面就可以免密码登录
#sms-test-003 服务器重复以上操作。
#sms-test-001 登录 002 和 003 可以免密码登录了,但是 002,003 登录 001 还需要手动认证。
#slave 连接 master 免密码登录。重复 master 连接 slave 的操作
 
6. 安装 hadoop
hadoop-2.6.0.tar.gz
# 在 sms-test-001 服务器上传 hadoop
cd /usr/local/src
rz
tar -zxvf hadoop-2.6.0.tar.gz
cd /home
mkdir hadoop
cd /home/hadoop
cp -r hadoop-2.6.0 /home/hadoop/
cd hadoop-2.6.0
ll
cd etc/hadoop
ls
OpenTSDB+Grafana 监控环境搭建
# 修改 hadoop-env.sh、yarn-env.sh、core-site.xml、hdfs-size.xml、mapred-site.xml、yarn-size.xml、slaves 文件
(1)配置 hadoop-env.sh 和 yarn-env.sh 的 JAVA_HOME
 
export JAVA_HOME=/usr/lib/jvm/java-1.7.0
(2)配置 core-site.xml
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://sms-test-001:9000</value>
    </property>
    <property>
        <name>io.file.buffer.size</name>
        <value>4096</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/home/hadoop/tmp</value>
    </property>
    <property>
        <name>ha.zookeeper.quorum</name>
        <value>sms-test-001:2181,sms-test-002:2181,sms-test-003:2181</value>
    </property>
(3)配置 hdf-site.xml
   <property>
        <name>dfs.namenode.name.dir</name>
        <value>/home/hdfs_data/name</value>
   </property>
   <property>
        <name>dfs.datanode.data.dir</name>
        <value>/home/hdfs_data/data</value>
   </property>
   <property>
        <name>dfs.replication</name>
        <value>2</value>
   </property>
   <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>sms-test-001:50090</value>
   </property>
   <property>
        <name>dfs.webhdfs.enabled</name>
        <value>true</value>
   </property>
(4)配置 mapred-site.xml
   <property>
       <name>mapreduce.framework.name</name>
       <value>yarn</value>
   </property>
   <property>
       <name>mapreduce.jobtracker.http.address</name>
       <value>Master.Hadoop:50030</value>
   </property>
   <property>
       <name>mapreduce.jobhistory.address</name>
       <value>sms-test-001:10020</value>
   </property>
   <property>
      <name>mapreduce.jobhistory.webapp.address</name>
      <value>sms-test-001:19888</value>
   </property>
(5)配置 yarn-site.xml(8088 端口如果想通过外网访问,则要配置成外网地址)
  <property>
     <name>yarn.nodemanager.aux-services</name>
     <value>mapreduce_shuffle</value>
  </property>
  <property>
     <name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
     <value>org.apache.hadoop.mapred.ShuffleHandler</value>
  </property>
  <property>
     <name>yarn.resourcemanager.address</name>
     <value>sms-test-001:8032</value>
  </property>
  <property>
     <name>yarn.resourcemanager.scheduler.address</name>
     <value>sms-test-001:8030</value>
  </property>
  <property>
     <name>yarn.resourcemanager.resource-tracker.address</name>
     <value>sms-test-001:8031</value>
  </property>
  <property>
     <name>yarn.resourcemanager.admin.address</name>
     <value>sms-test-001:8033</value>
  </property>
  <property>
     <name>yarn.resourcemanager.webapp.address</name>
     <value>sms-test-001:8088</value>
  </property>
  <property>
     <name>yarn.nodemanager.resource.memory-mb</name>
     <value>768</value>
  </property>
(5)配置 slaves 文件
vi slaves
# 写入
sms-test-002
sms-test-003
# 至此 sms-test-001 的配置已完成。可以把 sms-test-001 的 hadoop 拷贝到 002 和 003 上,也可以重新上传,然后把上面七个文件的改成和 sms-test-001 的一样的就行。
(6)格式化 namenode (Master 机器上面)
cd /home/hadoop/hadoop-2.6.0/bin
./hdfs namenode -format
(7)启动 hds. 会报一个警告, 不过不影响。(注:如果安装的是 openjdk 需要启动可能失败,检查是否安装 nss)
cd /home/hadoop/hadoop-2.6.0/sbin
./start-dfs.sh
./start-yarn.sh
#sms-test-001 上执行 jps 看到有NameNode,ResourceManager,SecondaryNameNode。002 和 003 上执行 jps 看到有DataNode
OpenTSDB+Grafana 监控环境搭建
(8)http://sms-test-001:8088/ 可以访问任务情况
OpenTSDB+Grafana 监控环境搭建
(9)http://sms-test-001:50070/ 可以访问数据节点信息
OpenTSDB+Grafana 监控环境搭建
 
7. 安装 hbase
 
hbase-1.1.4-bin.tar.gz
在 sms-test-001 服务器上传 hbase
cd /usr/local/src
rz
tar -zxvf hbase-1.1.4-bin.tar.gz
cd /home/
mkdir hbase
cd /home/hbase
cp -r /usr/local/src/hbase-1.1.4 /home/hbase
# 修改 hbase-env.sh
cd /home/hbase/hbase-1.1.4/conf
vi hbase-env.sh
 

export JAVA_HOME=/usr/lib/jvm/java-1.7.0

export HBASE_MANAGES_ZK=false 
# 修改 hbase-site.xml
vi hbase-site.xml
  <property>
     <name>hbase.rootdir</name>
     <value>hdfs://sms-test-001:9000/hbase/hbase-1.1.4</value>
  </property>
  <property>
     <name>hbase.cluster.distributed</name>
     <value>true</value>
  </property>
  <property>
     <name>hbase.tmp.dir</name>
     <value>/home/hbase/tmp</value>
  </property>
  <property>
     <name>hbase.zookeeper.quorum</name>
     <value>sms-test-001:2181,sms-test-002:2181,sms-test-003:2181</value>
  </property>
  <property>
     <name>hbase.zookeeper.property.dataDir</name>
     <value>/home/hbase/zookeeper</value>
  </property>
 
# 设置regionservers
vi regionservers
sms-test-001
sms-test-002
sms-test-003
 
# 创建目录
cd /home/hbase
mkdir tmp
mkdir zookeeper
# 设置 hbase 环境变量
vi /etc/profile
export HBASE_HOME=/home/hbase/hbase-1.1.4
# 保存,使环境变量生效
source /etc/profile
# 分发 hbase 到其它机器,并在其上设置环境变量
# 在 sms-test-001 上启动 hbase
cd /home/hbase/hbase-1.1.4/bin
./start-hbase.sh
jps
# 可以看到HMaster,HRegionServer
# 在 002 和 003 上可以执行 jps 只能看到HRegionServer
# 访问http://sms-test-001:16030/
OpenTSDB+Grafana 监控环境搭建
# 访问 http://120.25.126.184:16010/
OpenTSDB+Grafana 监控环境搭建
 
8. 安装 Opentsdb
opentsdb-2.2.0.tar.gz
在 sms-test-001 服务器上传 opentsdb
cd /user/local/src
rz
tar -zxvf opentsdb-2.2.0.tar.gz
cd /home
cp -r /usr/local/src/opentsdb-2.2.0 /home
mv opentsdb-2.2.0 opentsdb

#Opentsdb 依赖 Gnuplot,它 是一个命令行的交互式绘图工具。用户通过输入命令,可以逐步设置或修改绘图环境,并以图形描述数据或函数,使我们可以借由图形做更进一步的分析

yum install gnuplot
# 安装 opentsdb
cd /home/opentsdb
./build.sh
# 注:build 过程可能失败, 安装 autoconf 和 automake(yum install autoconf;yum install automake)

# 如果报‘aclocal-1.14’ is missing on your system 则执行 sudo autoreconf -ivf   

# 配置环境变量,在 shell 中执行如下命令

env COMPRESSION=NONE HBASE_HOME=/home/hadoop/hadoop-2.6.0
# 建表
cd /home/opentsdb/src
vi create_table.sh
 
create ‘tsdb-uid’,
  {NAME => ‘id’, COMPRESSION => ‘$COMPRESSION’, BLOOMFILTER => ‘$BLOOMFILTER’},
  {NAME => ‘name’, COMPRESSION => ‘$COMPRESSION’, BLOOMFILTER => ‘$BLOOMFILTER’}
 
create ‘tsdb’,
  {NAME => ‘t’, VERSIONS => 1, COMPRESSION => ‘$COMPRESSION’, BLOOMFILTER => ‘$BLOOMFILTER’}
 
create ‘tsdb-tree’,
  {NAME => ‘t’, VERSIONS => 1, COMPRESSION => ‘$COMPRESSION’, BLOOMFILTER => ‘$BLOOMFILTER’}
 
create ‘tsdb-meta’,
  {NAME => ‘name’, COMPRESSION => ‘$COMPRESSION’, BLOOMFILTER => ‘$BLOOMFILTER’}
 
# 运行 opentsdb
./build/tsdb tsd –port=4242 –staticroot=build/staticroot –cachedir=/tmp/tsdtm –zkquorum=sms-test-001:2181,sms-test-002:2181,sms-test-003:2181
# 启动参数说明

Usage: tsd –port=PORT –staticroot=PATH –cachedir=PATH

 

Starts the TSD, the Time Series Daemon

 

–async-io=true|false Use async NIO (default true) or traditionalblocking io

 

–auto-metric        Automatically add metrics to tsdb as they are inserted.  Warning:this may cause unexpected metrics to be tracked

 

–cachedir=PATH      Directory underwhich to cache result of requests.

 

–flush-interval=MSEC Maximum time for which a new data point canbe buffered (default: 1000).

 

–port=NUM            TCPport to listen on.

 

–staticroot=PATH    Web root from which toserve static files (/s URLs).

 

–table=TABLE        Nameof the HBase table where to store the time series (default: tsdb).

 

–uidtable=TABLE      Name of theHBase table to use for Unique IDs (default: tsdb-uid).

 

–worker-threads=NUM  Number for async io workers(default: cpu * 2).

 

–zkbasedir=PATH      Path underwhich is the znode for the -ROOT- region (default: /hbase).

 

–zkquorum=SPEC      Specificationof the ZooKeeper quorum to use (default: localhost).

 
 
## /home/opentsdb/build 下的 tsdb 运维脚本
# 添加指标

./tsdb mkmetric sms.user.submit

# 删除指标
./tsdb uid delete metrics sms.user.submit
# 查看指标
./tsdb uid grep sms.user.submit
 
9.grafana 安装
grafana-3.0.4-1464167696.x86_64.rpm
 
1.sudo yum install initscripts fontconfig
2.sudo rpm -Uvh grafana-4.0.0-1478693311beta1.x86_64.rpm
配置文件 /etc/grafana/grafana.ini
启动 service grafana-server start
关闭 service grafana-server stop

附录:
1. 磁盘挂载
fdisk -l  // 先查询未挂载的硬盘名如:sdb1 等 
mkfs.ext4 /dev/xvdb  开始格式化 
df -h             
mount /dev/xvdb /home/hdfs_data  开始挂载 
vi /etc/fstab        设置自动开启启动 
按格式添加 
/dev/xvdb  /home/hdfs_data        ext4    defaults        0 0 
硬盘名      需要挂载的位置  格式 
 
卸载挂载点:
umount /home/hdfs_data

本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-11/137237.htm

正文完
星哥说事-微信公众号
post-qrcode
 0
星锅
版权声明:本站原创文章,由 星锅 于2022-01-21发表,共计9346字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
【腾讯云】推广者专属福利,新客户无门槛领取总价值高达2860元代金券,每种代金券限量500张,先到先得。
阿里云-最新活动爆款每日限量供应
评论(没有评论)
验证码
【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中