您的位置:首页 > 运维架构

安装hdfs、hbase、opentsdb

2015-07-27 00:00 260 查看
摘要: hdfs\hbase\opentsdb的安装

系统准备:CentOS6.5

配置静态IP,修改hostname

使用
ifconfig
查看当前网卡MAC地址与名称。假定网卡名称为
eth0
,MAC地址为
33:44:55:66:77:88

编辑
/etc/sysconfig/network-scripts/ifcfg-eth0
:

DEVICE="eth0"
BOOTPROTO="none"
ONBOOT="yes"
HWADDR="33:44:55:66:77:88"
NETMASK="255.255.255.0"
GATEWAY="192.168.1.1"
IPADDR="192.168.1.110"

重启network服务:
service network restart

修改hostname:编辑
/etc/sysconfig/network
文件,将
hostname
一项修改为自己的hostname,需重启生效

时间同步。使用ntp同步时间后,可以使用如下命令写入硬件时间:
hwclock --systohc -u


关闭防火墙,并禁止防火墙开机启动:

service iptables stop
chkconfig iptables off


创建hadoop用户和组

groupadd hadoop
useradd -g hadoop hadoop


调整hadoop用户的系统limits限制:编辑
/etc/security/limits.conf
文件,在后面添加:

hadoop     -   nofile  32768
hadoop     -   nproc   32000

hadoop
用户下,使用命令
ulimit -a
查看改动情况。

修改机器的
/etc/hosts
文件。在其中列出所有机器的IP地址与机器
hostname
,以及
127.0.0.1 localhost
,然后同步到所有机器上。

配置机器相互间
hadoop
用户的无密码访问

切换至
hadoop
用户,进入该用户主文件夹下的
.ssh
文件夹下(没有则创建)
运行命令
ssh-keygen -t dsa -P ''
,确认,生成
id_dsa
id_dsa.pub
文件
id_dsa.pub
文件改名,以便所有机器之间相互区别
将所有机器上的
.pub
文件使用
cat
追加到文件
authorized_keys
文件中,并修改该文件权限:
chmod 600 authorized_keys

authorized_keys
同步至所有机器上
hadoop
用户主目录下的
.ssh
文件夹下

所有机器安装
jdk
,使用
yum
安装,注意相同版本

安装hadoop

下载
hadoop 2.2.0
版本,解压至目录
/usr/local/hadoop
,该目录即为
HADOOP_HOME


修改
HADOOP_HOME
下的
etc/hadoop/hadoop-env.sh
,修改其中的变量
JAVA_HOME
到正确位置

修改
HADOOP_HOME
下的
etc/hadoop/core-site.xml
文件,在
<configuration>
之间加入配置。核心配置如下:

<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://namenode节点主机名:9000</value>
</property>

<property>
<name>hadoop.tmp.dir</name>
<value>hadoop临时文件夹存放路径</value>
</property>
</configuration>


修改
HADOOP_HOME
下的
etc/hadoop/hdfs-site.xml
文件,在
<configuration>
之间加入配置。核心配置如下:

<configuration>
<property>
<name>dfs.datanode.data.dir</name>
<value>hadoop临时文件夹存放路径/dfs/data</value>
</property>

<property>
<name>dfs.namenode.name.dir</name>
<value>hadoop临时文件夹存放路径/dfs/name</value>
</property>

<property>
<name>dfs.replication</name>
<value>3</value>
</property>
</configuration>


修改
HADOOP_HOME
下的
masters
文件夹,写入
master
主机名,每个一行

修改
HADOOP_HOME
下的
slaves
文件夹,写入
slaves
主机名,每个一行

/usr/local/hadoop/bin
/usr/local/hadoop/sbin
加入系统路径

使用
scp
/usr/local/hadoop
文件夹所有内容同步至所有机器中,并注意所有机器中临时文件夹的可访问性

初始化
namenode
hadoop namenode -format


启动
hdfs
start-dfs.sh
,访问
http://namenode节点主机名:50070
查看结果

安装Hbase

下载
hbase 0.98.5
,解压至目录
/usr/local/hbase


修改
hbase
目录下
conf/hbase-env.sh
文件,修改变量
JAVA_HOME
,将变量
HBASE_MANAGES_ZK
修改为
true


修改
conf/core-site.xml
文件,核心配置如下:

<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://namenode节点主机名:9000/hbase</value>
</property>

<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>

<property>
<name>hbase.master</name>
<value>master节点主机名:60000</value>
</property>

<property>
<name>hbase.zookeeper.quorum</name>
<value>启动zookeeper服务的主机列表,有多个用逗号隔开</value>
</property>

<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>zookeeper临时文件存放目录</value>
</property>
</configuration>


修改
conf/regionservers
文件,其中列出要启动
regionserver
的主机名

hbase
目录下
bin
目录加入系统路径中

使用
scp
hbase
目录同步至所有机器中,确保临时文件夹的可访问性

启动
hbase
:在主节点上
start-hbase.sh
,访问
http://master节点主机名:60010
查看结果

安装openTSDB

确保机器中安装了
gnuplot


下载
openTSDB
的rpm安装包,直接装入机器中

修改
/etc/opentsdb/opentsdb.conf
文件,修改如下三项:

tsd.http.cachedir = opentsdb临时文件存放位置
tsd.http.staticroot = /usr/share/opentsdb/static/
tsd.storage.hbase.zk_quorum = 运行zookeeper机器的IP地址


hbase
正常运行下,运行脚本
env COMPRESSION=NONE HBASE_HOME=path/to/hbase /usr/share/opentsdb/tools/create_table.sh
创建表

启动tsdb:
tsdb tsd
,浏览器访问当前主机的4242端口,查看结果

运行命令
tsdb mkmetric proc.loadavg.1m proc.loadavg.5m
创建两个
metric
,用来测试

运行如下脚本持续向数据库中写入数据,在4242监控窗口上找到相应metric,查看测试结果

#!/bin/bash
set -e
while true; do
awk -v now=`date +%s` -v host=psyDebian \
'{ print "put proc.loadavg.1m " now " " $1 " host=" host;
print "put proc.loadavg.5m " now " " $2 " host=" host }' /proc/loadavg
sleep 2
done | nc -w 4 192.168.1.106 4242
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hdfs hbase tsdb