Ubuntu: GlusterFS+HBase安装教程
HBase通常安装在Hadoop HDFS上,但也能够安装在其它实现了Hadoop文件接口的分布式文件系统上。如KFS。
glusterfs是一个集群文件系统可扩展到几peta-bytes。
它集合了各种存储在infiniband rdma或互连成一个大型并行网络文件系统。存储能够由不论什么商品等硬件x86_64server和sata-ii和infiniband HBA。
GlusterFS比Hadoop HDFS能够提供更高的性能,HBase也因此能够获得更高的性能。将HBase安装在GlusterFS上。是可行的。该方案经实际验证通过,以此文以记之。
GlusterFS是Scale-Out存储解决方式Gluster的核心,它是一个开源的分布式文件系统,具有强大的横向扩展能力,通过扩展可以支持数PB存储容量和处理数千client。GlusterFS借助TCP/IP或InfiniBand RDMA网络将物理分布的存储资源聚集在一起。使用单一全局命名空间来管理数据。GlusterFS基于可堆叠的用户空间设计,可为各种不同的数据负载提供优异的性能。
一、前提条件
安装环境为Virtual BOX虚拟机,操作系统为Ubuntu Server 64 14.04。安装用户为bigdata.
1、server列表
192.168.8.108 bigdata1
192.168.8.110 bigdata2
2、改动Hosts
sudo vi /etc/hosts
192.168.8.108 bigdata1
192.168.8.110 bigdata2
3、SSH配置
sudo su - root
passwd
输入 admin
同意root使用SSH口令登录:
sudo vi /etc/ssh/sshd_config
# Authentication:
LoginGraceTime 120
#PermitRootLogin without-password #找到这里。把它凝视
PermitRootLogin yes #改为yes 然后重新启动ssh
StrictModes yes
#service ssh restart
#Tips:这里注意/etc/init.d/ssh restart 用这个方式重新启动是不成功的。
SSH配置:
bigdata1:
#ssh-keygen -t rsa -P ""
#cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
#chmod 600 ~/.ssh/authorized_keys
#scp ~/.ssh/authorized_keys root@bigdata2:~/.ssh/
4、Java安装配置
下载最新版 jdk64-bit版 (jdk-7u45-linux-x64.tar.gz)
下载 http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html
tar -zxvf jdk-7u51-linux-x64.tar.gz
sudo mv jdk1.7.0_51 /usr/share
环境变量设置
sudo vi /etc/profile
在文件的最后面添加:
export JAVA_HOME=/usr/share/jdk1.7.0_51
export JRE_HOME=/usr/share/jdk1.7.0_51/jre
export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$PATH
export CLASSPATH=$CLASSPATH:.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
保存,source /etc/profile
5、防火墙卸载
sudoapt-get remove iptables
二、GlusterFS安装
1、安装GlusterFS
sudo apt-get install glusterfs-server
sudo glusterfsd –version
2、创建文件夹
sudo mkdir -p /data/gluster
3、创建卷
sudo gluster volume create gluster_vol replica 2 transport tcp bigdata1:/data/gluster bigdata2:/data/gluster
注:
删除卷:sudo gluster volume delete gluster_vol
强制创建:加 force
4、停止/启动卷
sudo gluster volume stop gluster_vol
sudo
gluster volume start gluster_vol
5、查看卷信息
gluster volume info
6、挂载卷
sudo mount.glusterfs bigdata1:/gluster_vol /mnt/hbase
mount.glusterfs bigdata1:/gluster_vol /mnt/hbase
6、測试卷
df -h
bigdata1:
echo test > test1.txt
bigdata2:
cat test1.txt
至此,GlusterFS在Ubuntu Server上成功安装。
以下開始安装配置HBase。
三、HBase安装
通过測试时证明:在分布式模式下GlusterFs能够取代hadoop的HDFS,作为Hbase的底层数据存储。
配置步骤例如以下:
首先,介绍下搭建的集群模型:
共2台server,hostname分别为:bigdata1 bigdata2(各个server之间能够ssh 无password登陆)
Hmaseter为:bigdata1
Hregionserver为:bigdata1
zookeeper为:bigdata1(Hbase内置zookeeper)
在bigdata1、bigdata2 server的/mnt文件夹下创建hbase文件夹作为GlusterFs的mount点(即GlusterFs 的client),就是每台server都有一个/mnt/hbae/文件夹作为
GLusterFs的client,然后让Hbase把数据写到这个文件夹以下。
然后改动Hbase的配置文件:hbase-env.sh hbase- site.xml regionservers。这3个配置文件都在/usr/local/hbase/conf/文件夹下
1、下载/安装
wget http://apache.fayea.com/apache-mirror/hbase/stable/hbase-0.98.7-hadoop2-bin.tar.gz
tar xvzf
hbase-0.98.7-hadoop2-bin.tar.gz
sudo mv
hbase-0.98.7-hadoop2
/usr/local
sudo
ln -s
hbase-0.98.7-hadoop2
hbase
2、配置
配置文件:hbase-env.sh(bigdata1、bigdata2配置文件同样)
export JAVA_HOME=/usr/share/jdk1.7.0_51 //JDK路径
export HBASE_MANAGES_ZK=true //zookeeper是用内置的还是自己搭建zookeeper(true为使用内置的)
配置文件: hbase-site.xml
<configuration>
<property>
<name>hbase.rootdir</name>
<value>file:///mnt/hbase/</value> //和GlusterFsclient的路径相相应
</property>
<property>
<name>hbase.cluster.distributed</name>//true为分布式模式,false为单机模式
<value>true</value>
</property>
<property>
<name>hbase.master</name>
<value>bigdata1:60000</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>//zookeeper为221
<value>bigdata1</value>
</property>
</configuration>
配置文件 regionservers //HregionServer服务器
bigdata1
3、执行
#cd /usr/local/hbase/bin
#./start-hbase.sh //开启hbase集群
#./hbase shell//开启Hbase指令
#hbase(main):001:0> status
2 servers, 0 dead, 0.7500 average load
配置成功。
四、測试
#cd /usr/local/hbase/bin
hbase shell
create "test" "cf"
在bigdata2上读取全部表中的数据,假设能读到全部表中的数据,就说明底层的GlusterFs是否共享数据,GlusterFs能够取代HDFS。
五、结论
至此。本方案測试成功!GlusterFS能够取代HDFS,以获得更高的性能。
当然还须要在生产环境中进一步验证。
Ubuntu: GlusterFS+HBase安装教程的更多相关文章
- KinectV1+Ubuntu 14.04安装教程
前言 个人理解错误的地方还请不吝赐教,转载请标明出处,内容如有改动更新,请看原博:http://www.cnblogs.com/hitcm/ 如有任何问题,feel free to ...
- HBase安装教程
一.版本介绍 linux : CentOS7 Hadoop : 2.7.6 zookeeper : 3.4.6 hbase : 1.4.6 jdk : jdk1.8.0_171 三个节点的主机名分别为 ...
- Ubuntu 12.04安装教程详细步骤(图解)
1.选择你所想要的语言,如图. 2.选择安装Ubuntu(I). 3.进入Ubuntu安装等待 4.设置处理器信息 5.同意选择的语言 6.配置键盘信息 7.键盘布局选择汉语 8.配置键盘选择汉语 9 ...
- 双操作系统(ubuntu/windows7)安装教程
前言 前两天出于项目原因,本人心血来潮地给久经战场的电脑老大哥找个小媳妇,哈哈哈,装了两个系统.分别是用了多年的win7和接触不久的Ubuntu,在其中遇到了一些坑,在此记录下来,希望能给自己和大家带 ...
- Ubuntu 18.04 安装教程
准备材料 Ubuntu安装U盘 足够的硬盘空间 未初始化的硬盘需要提前初始化 注意事项 Ubuntu安装盘的制作请参考我的另外一个博客,里面写清楚了怎么制作Ubuntu安装盘,步骤非常简单 请将要拿给 ...
- ubuntu nvidia驱动安装教程
1. 安装显卡切换软件 sudo add-apt-repository ppa:nilarimogard/webupd8 #添加PPA更新源 sudo apt-get update #刷新更新源列 ...
- Ubuntu 16.04安装QQ国际版图文详细教程
因工作需要,我安装了Ubuntu 16.04,但是工作上的很多事情需要QQ联系,然而在Ubuntu上的WebQQ很是不好用,于是在网上搜索了好多个Linux版本的QQ,然而不是功能不全 ...
- Hadoop、Zookeeper、Hbase分布式安装教程
参考: Hadoop安装教程_伪分布式配置_CentOS6.4/Hadoop2.6.0 Hadoop集群安装配置教程_Hadoop2.6.0_Ubuntu/CentOS ZooKeeper-3.3 ...
- 【转】Windows 7下硬盘安装Ubuntu 14.04图文教程--不错
原文网址:http://www.linuxidc.com/Linux/2014-04/100369p3.htm Ubuntu 官方已经发布了正式版的 Ubuntu 14.04 LTS,并宣称这是为云计 ...
随机推荐
- UVA 11987 Almost Union-Find 并查集单点修改
Almost Union-Find I hope you know the beautiful Union-Find structur ...
- Qt容器类的对象模型及应用(线性结构篇:对于QList来说,sharable默认是false的,但对于接下来讲的QVector来说,sharable默认是true)
用Qt做过项目开发的人,肯定使用过诸如QList.QVector.QLinkList这样的模板容器类,它们虽然名字长的不同,但使用方法都大致相同, 因为其使用方法都大体相同,很多人可能随便拿一个容器类 ...
- HDU 5863 cjj's string game (矩阵乘法优化递推)
题目大意:用k种字符构建两个长度为n的字符串(每种字符有无限多个),要求对应位置字符相同的连续子串最长长度为m,问方法数. 其中k,n,m是输入,n(1<=n<=1000000000), ...
- Vue读书笔记:关于$ref、props和$emit
1.props实现父组件向子组件传递数据 子组件可以通过props接收到来自父组件的数据,并且是单向绑定的.也就是说,数据不能从子组件反向传递. 2.$ref实现子组件向父组件通信 来自官方非常难理解 ...
- 2.linux系统命令详解
1 shell shell:命令解释器,根据输入的命令执行相应命令. 1.1 shell家族 察看当前系统下有哪些shell: cat /etc/shells 察看当前系统正在使用的shell ech ...
- docker compose的使用--在线安装未完成
Compose 是一个用户定义和运行多个容器的 Docker 应用程序.在 Compose 中你可以使用 YAML 文件来配置你的应用服务.然后,只需要一个简单的命令,就可以创建并启动你配置的所有服务 ...
- Flask_URL和视图
1.Flask_URL和视图 1.1.第一个flask程序 from flask import Flask #创建一个Flask对象,传递__name__参数进去 app = Flask(__na ...
- Windows下获取Dump文件以及进程下各线程调用栈的方法总结(转)
1. Dump文件的用途 Dump文件, 主要用于诊断一个进程的运行状态,尤其是碰到崩溃(Crash)或者挂起(hang)不响应时,需要分析它的工作状态. 除了平时常见的attach到这个进程, 分 ...
- vue中slot组件的使用
插槽(Slot)是Vue提出来的一个概念,正如名字一样,插槽用于决定将所携带的内容,插入到指定的某个位置,从而使模板分块,具有模块化的特质和更大的重用性. Slot 是在组件模板中设置的用于在父组件中 ...
- android夜间模式切换
1.记录个最简单的夜间模式的实现 2.styles.xml <style name="DayTheme" parent="AppTheme"> &l ...