安装hdfs、hbase、opentsdb
2015-07-27 00:00
260 查看
摘要: hdfs\hbase\opentsdb的安装
使用
编辑
重启network服务:
修改hostname:编辑
时间同步。使用ntp同步时间后,可以使用如下命令写入硬件时间:
关闭防火墙,并禁止防火墙开机启动:
创建hadoop用户和组
调整hadoop用户的系统limits限制:编辑
在
修改机器的
配置机器相互间
切换至
运行命令
将
将所有机器上的
将
所有机器安装
修改
修改
修改
修改
修改
将
使用
初始化
启动
修改
修改
修改
将
使用
启动
下载
修改
在
启动tsdb:
运行命令
运行如下脚本持续向数据库中写入数据,在4242监控窗口上找到相应metric,查看测试结果
系统准备: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
相关文章推荐
- Facebook's New Real-time Messaging System: HBase to Store 135+ Billion Messages a Month
- Hadoop生态上几个技术的关系与区别:hive、pig、hbase 关系与区别
- 基于HBase Thrift接口的一些使用问题及相关注意事项的详解
- hadoop的hdfs文件操作实现上传文件到hdfs
- 如何解决struts2日期类型转换
- java连接hdfs ha和调用mapreduce jar示例
- java实现将ftp和http的文件直接传送到hdfs
- hbase shell基础和常用命令详解
- 手把手教你配置Hbase完全分布式环境
- 实战:在Java Web 项目中使用HBase
- 在Hadoop2.5.0下利用Java读写HDFS
- HBase RowKey设计的那些事
- HDFS 文件操作
- HBase基本原理
- 读<王垠:一种新的操作系统设计>
- HBase中的基本概念
- 【原创】基于分布式存储的开源系统在实时数据库海量历史数据存储项目上的预研
- hadoop中RPC通信文件上传原理
- 测试Hadoop的hdfs的问题?
- HBase0.96.x开发使用(一)--安装