系统是ubuntu 12.04 , hadoop版本是1.2.1 , hive版本是0.12 , hbase版本我忘记了,不好意思
首先是配置好hostname
vi /etc/hosts
写入你要配置的ip 和它的hostname
这里我写入了
192.168.19.129 ubuntu

给要部署hadoop的机器都互相配置信任关系,具体怎么玩,自己谷歌
测试一下ssh user@hostname , 做到无需输入密码即可登录

给所有需要配置hadoop集群的机器,关闭防火墙
service iptables stop

(下面的hadoop版本是1.2.1 , hive版本是0.12 , hbase版本是0.94.12)
修改$HADOOP_HOME/conf/hadoop-env.sh文件
搜索JAVA_HOME
将前面的#去掉,取消注释
写入你的JAVA_HOME路径(方式是在shell上执行:echo $JAVA_HOME , 如果为空,那么你就自己再配置一下JDK吧,囧)

修改$HADOOP_HOME/conf/core-site.xml文件
在<configuration></configuration>之间加入

<property>
<name>fs.default.name</name>
<value>hdfs://yourHostName(localhost/ubuntu):9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>your tmp director in hdfs</value>
</property>

注意:yourHostName建议写你自己设置的hostname,不建议写localhost,因为到多节点时候很容易会出错,甚至你可以写ip地址。

另外,hadoop.tmp.dir的标签的值不是本地文件系统的地址,而是对应HDFS上的临时目录,它是在跑MapReduce程序时产生的临时文件的存放地址。

修改$HADOOP_HOME/conf/mapred-site.xml文件
在<configuration></configuration>之间加入

<property>
<name>mapred.job.tracker</name>
<value>yourHostName(localhost/ubuntu):9001</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
<property>
<name>mapred.child.java.opts</name>
<value>-Xmx512m</value>
</property>

注意:同理,这里也不建议yourHostName写localhost

修改$HADOOP_HOME/conf/hdfs-site.xml文件
在<configuration></configuration>之间加入

<property>
<name>dfs.name.dir</name>
<value>/usr/local/hadoop/datalog</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/usr/local/hadoop/data</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>

在$HADOOP_HOME/conf/master 和 $HADOOP_HOME/conf/slaves文件写入的写master机器的hostname和slaves的hostname,保存退出

格式化master机器的namenode节点
执行:
$HADOOP_HOME/bin/hadoop namenode -format

启动整个hadoop集群环境
$HADOOP_HOME/bin/start-all.sh

*******************************************************************************

hive搭建
解压好hive的包,给$HIVE_HOME/conf/hive-default.xml.template 拷贝成$HIVE_HOME/conf/hive-site.xml

修改hive的配置,因为默认的配置文件有问题

将<value>auth<auth>修改为<value>auth</value>,保存退出
这个hive和hadoop的简单对接已经完成,后面会加上mysql来作为数据类型存储源

*******************************************************************************

hive 与 mysql对接
允许其他机器访问mysql服务
修改mysql配置文件/etc/mysql/my.cnf
>skip-networking => # skip-networking //其实就是注释这一条配置选项

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

在网上下载一个mysql的java驱动,将其放到$HIVE_HOME/lib底下即可
修改$HIVE_HOME/conf/hive-site.xml文件

修改hive的配置,hive.metastore.schema.verification默认为true,修改为false

<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>

localhost 写你的ip地址或者hostname
3306是mysql默认的通信端口
hive是你所使用mysql里面的database名字,这个database 一定是你自己手动创建的,否则hive会报错

<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNoExist=true</value>
</property>

mysql驱动类名

<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>

所使用mysql的用户名

<property>
<name>javax.jdo.option.ConnectorUserName</name>
<value>hive</value>
</property>

mysql用户的密码

<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>hive</value>
</property>

如果你不希望使用hive这个用户,也可以自行在mysql上建立用户

mysql> CREATE USER 'hive'@'%' IDENTIFIED BY 'hive';
mysql> CREATE user 'hive'@'localhost' IDENTIFIED BY 'hive';
mysql> GRANT ALL PRIVILEGES ON *.* TO 'hive'@'%' WITH GRANT OPTION;
mysql> GRANT ALL PRIVILEGES ON *.* TO 'hive'@'localhost' with grant option;
mysql> flush privileges;

执行上面三行命令,就给mysql创建了hive这个用户了,用户名和密码都是hive

在shell里面登陆mysql的hive用户试验
mysql -uhive -phive

如果在执行上面的命令出现ERROR 1045(28000)错误,那么你就需要执行

/etc/init.d/mysql stop
mysqld_safe --user=root --skip-grant-tables --skip-networking & (这个就是降低mysql 的安全系数启动mysql 服务,是的用户无需密码就能登陆mysql 的root 用户)
/etc/init.d/mysql restart

此方法参考:http://blog.sina.com.cn/s/blog_4d0aa5f30100fobu.html中的方法一

如果忘记mysql 的root 密码,可以参考这篇博客:http://www.blogjava.net/wiflish/archive/2006/12/23/89655.html

登陆后,给hive用户创建一个名字叫hive的数据库

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@

启动hive
show databases; 不出错,说明hive和mysql打通了

***************************************************************************

hbase搭建

修改$HBASE_HOME/conf/hbase_env.sh文件
export JAVA_HOME=your java_home
export HBASE_MANAGES_ZK=true
如果使用独立的zookeeper的话,$HBASE_MANAGES_ZK=false

修改$HBASE_HOME/conf/hbase-site.xml

<configuration>
<property>
<name>hbase.master</name>
<value>yourHostName:60000</value>
</property>
<property>
<name>hbase.rootdir</name>
<value>hdfs://yourHostName:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>yourHostName</value>
</property>
</configuration>

yourHostName 都不要简单地填写localhost,要写成其他的hostname,或者是ip也行

启动hbase

$HBASE_HOME/bin/start-hbase.sh

停止hbase

$HBASE_HOME/bin/stop-hbase.sh

可以在web查看hbase的状态
http://hostname:60010

新手安装 hadoop、hive和hbase 笔记的更多相关文章

  1. Hadoop Hive与Hbase整合+thrift

    Hadoop Hive与Hbase整合+thrift 1.  简介 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供完整的sql查询功能,可以将sql语句 ...

  2. Hadoop Hive与Hbase关系 整合

    用hbase做数据库,但因为hbase没有类sql查询方式,所以操作和计算数据很不方便,于是整合hive,让hive支撑在hbase数据库层面 的 hql查询.hive也即 做数据仓库 1. 基于Ha ...

  3. 单机安装hadoop+hive+presto

    系统环境 在个人笔记本上使用virtualbox虚拟机 os:centos -7.x86-64.everything.1611  ,内核 3.10.0-514.el7.x86_64 注:同样可以使用r ...

  4. Windows环境下安装Hadoop+Hive的使用案例

    Hadoop安装: 首先到官方下载官网的hadoop2.7.7,链接如下 https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/ 找网盘的 ...

  5. 配置Hadoop,hive,spark,hbase ————待整理

    五一一天在家搭建好了集群,要上班了来不及整理,待下周周末有时间好好整理整理一个完整的搭建hadoop生态圈的集群的系列 若出现license information(license not accep ...

  6. CentOS7.0分布式安装HADOOP 2.6.0笔记-转载的

    三台虚拟机,IP地址通过路由器静态DHCP分配 (这样就无需设置host了). 三台机器信息如下 -      1. hadoop-a: 192.168.0.20  #master     2. ha ...

  7. 手把手教你搭建hadoop+hive测试环境(新手向)

    本文由  网易云发布. 作者:唐雕龙 本篇文章仅限内部分享,如需转载,请联系网易获取授权. 面向新手的hadoop+hive学习环境搭建,加对我走过的坑总结,避免大家踩坑. 对于hive相关docke ...

  8. 吴裕雄--天生自然HADOOP操作实验学习笔记:使用hive操作hbase

    实验目的 熟悉hive和hbase的操作 熟悉hadoop.hbase.hive.zookeeper的关系 熟练大数据环境的搭建 学会分析日志排除问题 实验原理 1.hive整合hbase原理 前面大 ...

  9. Hadoop + Hive + HBase + Kylin伪分布式安装

    问题导读 1. Centos7如何安装配置? 2. linux网络配置如何进行? 3. linux环境下java 如何安装? 4. linux环境下SSH免密码登录如何配置? 5. linux环境下H ...

随机推荐

  1. Red Black Tree java.util.TreeSet

    https://docs.oracle.com/javase/9/docs/api/java/util/SortedMap.html public interface SortedMap<K,V ...

  2. 笔记,将CString转换为数值

           ANSI UNICODE TCHAR int    atoi    _wtoi  _ttoi long       atol    _wtol _ttol double   atof   ...

  3. 使用dbms_stats.gather_table_stats调整表的统计信息

    创建实验表,插入10万行数据 SQL> create table test (id number,name varchar2(10)); Table created. SQL> decla ...

  4. Windows程序设计(1)——Win32运行原理(二)

    创建进程 1 进程和线程 2 应用程序的启动过程 3 CreateProcess函数 4 实例 3 创建进程 3.1 进程和线程 进程通常被定义为一个存在运行的程序的实例.进程是一个正在运行的程序,它 ...

  5. Python序列——序列操作

    Python中的序列包括,字符串.列表.元组.本文介绍序列的通用操作. 1. 切片中的None >>> s = 'abcdefg' >>> for i in ran ...

  6. Java内存模型(JMM)中的happens-before

    happens-before是JMM中最核心的概念,对于Java程序员来说,理解happens-before是理解JMM的关键 . 1.JMM的设计 首先,来看看JMM的设计意图.从JMM的设计者的角 ...

  7. BZOJ 1632 [Usaco2007 Feb]Lilypad Pond:spfa【同时更新:经过边的数量最小】【路径数量】

    题目链接:http://www.lydsy.com/JudgeOnline/problem.php?id=1632 题意: 有一个n*m的池塘.0代表水,1代表荷花,2代表岩石,3代表起点,4代表终点 ...

  8. swoole_http_server客户端测试

    测试方法: http_server.php 文件内容 <?php // use Swoole\Http\Server; // $http = new Server("0.0.0.0&q ...

  9. 自适应布局all样式

    /*css document*/@charset "utf-8"*{-webkit-tap-highlight-color:rgba(0,0,0,0); padding:0; ma ...

  10. AutoIt: 如何使用 AutoIt 解析,修改XML 文件

    项目组这次要发布一个项目,需要实施人员根据现场的机器情况,修改项目配置文件的几个节点,为了减轻实施人员的工作负担,我应用AutoIt写了一个小界面,实施人员只需在该界面上点几个按钮,就能够完成文件的配 ...