hadoop、hive、hbase环境搭建

1.hadoop、hive、hbase之间有版本对应关系,三者之间的版本可能存在不匹配的关系,且下面的搭建过程也与版本有关系

hadoophivehbase
2.9.22.3.41.2.12

2.下载二进制的安装包,使用wget时,后加--no-check-certificate(具体原因待研究)

下载hadoop 2.9.2

wget https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-2.9.2/hadoop-2.9.2.tar.gz --no-check-certificate

下载hive 2.3.4

wget https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-2.3.4/apache-hive-2.3.4-bin.tar.gz --no-check-certificate

下载hbase 1.2.12

wget http://mirrors.tuna.tsinghua.edu.cn/apache/hbase/hbase-1.2.12/hbase-1.2.12-bin.tar.gz --no-check-certificate

3.安装hadoop

第一步,解压,将目标文件夹名称改为hadoop,移动到/opt/software(hive、hbase的第一步与此相同,不再赘述)

tar -zxvf hadoop-2.9.2.tar.gz 

mv hadoop-2.9.2 hadoop

mv hadoop /opt/software

第二步,hadoop安装之前,需安装好java,设置java的环境变量

export JAVA_HOME=/opt/software/java/[java-version]

第三步,配置hadoop

编辑etc/hadoop/core-site.xml

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

编辑etc/hadoop/hdfs-site.xml

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

第四步,确保能够不使用密码,可以直接通过ssh协议连接localhost

ssh localhost

如果不能连接,执行下面的命令

# ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
# cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
# chmod 0600 ~/.ssh/authorized_keys

这三条命令在本机生成一对公、私钥,将公钥放置在authorized_keys中,ssh localhost时,相当于ssh root@localhost,root是远程主机的用户名、localhost是远程主机的ip、将id_rsa中的私钥发送给远程主机请求连接

第四步,格式化文件系统

bin/hdfs namenode -format

第五步,启动namenode和datanode

访问http://localhost:50070/

配置mapreduce on YARN,可以参考https://hadoop.apache.org/docs/r2.9.2/hadoop-project-dist/hadoop-common/SingleCluster.html

4.安装hive

第一步,解压,将目标文件夹名称改为hive,移动到/opt/software

第二步,将mysql驱动包导入

将mysql的驱动包放置到$HIVE_HOME\lib目录

第三步,创建hdfs目录,并赋予权限
hdfs dfs -mkdir -p /usr/hive/warehouse
hdfs dfs -mkdir -p /usr/hive/tmp
hdfs dfs -mkdir -p /usr/hive/log
hdfs dfs -chmod g+w /usr/hive/warehouse
hdfs dfs -chmod g+w /usr/hive/tmp
hdfs dfs -chmod g+w /usr/hive/log

第四步,配置hive

第一步,配置环境变量

cp -r hive-env.sh.template hive-env.sh

修改hive-env.sh

export JAVA_HOME=
export HADOOP_HOME=
export HIVE_HOME=
export HIVE_CONF_DIR=$HIVE_HOME/conf
export HIVE_AUX_JARS_PATH=$HIVE_HOME/lib/*

第二步,配置hive的参数

cp -r hive-default.xml.template hive-site.xml

修改hive-site.xml,这里使用mysql存储hive的元数据,需要指定mysql的连接字符串、mysql的用户名、密码

<configuration>
  <property>
    <name>hive.exec.scratchdir</name>
    <value>/usr/hive/tmp</value>
    <description>HDFS root scratch dir for Hive jobs which gets created with write all (733) permission. For each connecting user, an HDFS scratch dir: ${hive.exec.scratchdir}/<username> is created, with ${hive.scratch.dir.permission}.</description>
  </property>
  <property>
    <name>hive.metastore.warehouse.dir</name>
    <value>/usr/hive/warehouse</value>
    <description>location of default database for the warehouse</description>
  </property>
<property>
    <name>hive.querylog.location</name>
    <value>/usr/hive/log</value>
    <description>Location of Hive run time structured log file</description>
  </property>
 <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://192.168.32.128:3306/hive?createDatabaseIfNotExist=true&amp;characterEncoding=UTF-8&amp;useSSL=false</value>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>root</value>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>root</value>
  </property>
</configuration>

第三步,使用schematool 命令来执行初始化操作

schematool -dbType mysql -initSchema

第四步,启动hive

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值