概述
环境准备
centos 7.1系统
需要三台云主机:
master(8) 作为 client 客户端 slave1(9) 作为 hive server 服务器端 slave2(10) 安装 mysql server
注:ip段为8(下同,实际情况根据自己设定来)
安装包使用的是官网下载的(没有的同学百度一下直接到官网下载)
将hive上传到master ,mysql上传到lib
搭建开始
slave2节点执行:
0x1.安装 EPEL 源:
yum -y install epel-release
0x2.安装 MySQL server 包,下载源安装包:
wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
注意如果报错没找到命令就先安装wget命令
0x3安装源:
rpm -ivh mysql57-community-release-el7-8.noarch.rpm
查看是否安装成功:cd /etc/yum.repos.d
下载mysql:yum -y install mysql-community-server
0x4启动mysql
重载所有修改过的配置文件:systemctl daemon-reload
开启服务:systemctl start mysqld
开机自启:systemctl enable mysqld
获取初密码:grep password /var/log/mysqld.log
登陆 MySQL:mysql -uroot -p
0x5更改数据库安全策略
设置密码强度为低级:set global validate_password_policy= 0;
设置密码长度:set global validate_password_length=4;
修改本地密码:alter user 'root'@'localhost' identified by '123456';
退出:exit
ps:密码强度分级如下: 0 为 low 级别,只检查长度; 1 为 medium 级别(默认),符合长度为 8,且必须含有数字,大小写,特殊 字符; 2 为 strong 级别,密码难度更大一些,需要包括字典文件。 密码长度最低长为 4,当设置长度为 1、2、3 时,其长度依然为 4。
0x6 设置远程登录
以新密码登陆 MySQL:mysql -uroot -p123456
创建用户:create user 'root'@'%' identified by '123456';
允许远程连接:grant all privileges on *.* to 'root'@'%' with grant option;
刷新权限:flush privileges;
0x7Slave1 上安装 hive
master 中操作如下:
mkdir -p /usr/hive
tar -zxvf /opt/soft/apache-hive-2.1.1-bin.tar.gz -C /usr/hive/
然后再slave1节点也创建hive文件夹
scp -r /usr/hive/apache-hive-2.1.1-bin root@slave1:/usr/hive/
0x8修改环境变量
修改/etc/profile 文件设置 hive 环境变量。(master 和 slave1 都执 )。
vi /etc/profile
export HIVE_HOME=/usr/hive/apache-hive-2.1.1-bin
export PATH=$PATH:$HIVE_HOME/bin
source /etc/profile
0x9修改配置文件
将上传到lib的mysql-connector-java-5.1.5-bin.jar分发到slave1
scp /lib/mysql-connector-java-5.1.5-bin.jar root@slave1:/usr/hive/apache-hive-2.1.1-bin/lib
然后修改slave1 的配置文件--hive-env.sh(在/usr/hive/apache-hive-2.1.1-bin/conf文件)
生成配置文件
cp hive-env.sh.template hive-env.sh
在配置文件添加:HADOOP_HOME=/usr/hadoop/hadoop-2.7.3(根据自己设置来)
创建hive-site.xml文件
[root@slave1 conf]# vi hive-site.xml
<configuration>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive_remote/warehouse</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://slave2:3306/hive?createDatabaseIfNotExist=true</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>123456</value>
</property>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
<property>
<name>datanucleus.schema.autoCreateAll</name>
<value>true</value>
</property>
在master节点配置客户端
由于客户端需要和 Hadoop 通信,所以需要更改 Hadoop 中 jline 的版本。即 保留一个高版本的 jline jar 包,从 hive 的 lib 包中拷贝到 Hadoop 中 lib 位置为/usr/hadoop/hadoop-2.7.3/share/hadoop/yarn/lib。
cp /usr/hive/apache-hive-2.1.1-bin/lib/jline-2.12.jar /usr/hadoop/hadoop-2.7.3/share/hadoop/yarn/lib/
同样修改 hive-site.sh
[root@master conf]# vi hive-site.xml
<configuration>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive_remote/warehouse</value>
</property>
<property>
<name>hive.metastore.local</name>
<value>false</value>
</property>
<property>
<name>hive.metastore.uris</name>
<value>thrift://slave1:9083</value>
</property>
</configuration>
0x10 启动hive
在slave1节点输入bin/hive(在/usr/hive/apache-hive-2.1.1-bin输入)
成功运行就一直是这个界面
同样在master输入 bin/hive
成功运行会显示
测试 hive 是否启动成功: hive>show databases;
输入jps显示这个
最后
以上就是积极冬瓜为你收集整理的大数据平台--Hive原生搭建教程的全部内容,希望文章能够帮你解决大数据平台--Hive原生搭建教程所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复