环境准备
centos 7.1系统
需要三台云主机:
master(8) 作为 client 客户端 slave1(9) 作为 hive server 服务器端 slave2(10) 安装 mysql server
注:ip段为8(下同,实际情况根据自己设定来)
安装包使用的是官网下载的(没有的同学百度一下直接到官网下载)
将hive上传到master ,mysql上传到lib
搭建开始
slave2节点执行:
0x1.安装 EPEL 源:
1yum -y install epel-release
0x2.安装 MySQL server 包,下载源安装包:
1wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
注意如果报错没找到命令就先安装wget命令
0x3安装源:
1rpm -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
1
2export 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
1scp /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文件)
生成配置文件
1cp hive-env.sh.template hive-env.sh
在配置文件添加:HADOOP_HOME=/usr/hadoop/hadoop-2.7.3(根据自己设置来)
创建hive-site.xml文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30[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
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15[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原生搭建教程内容请搜索靠谱客的其他文章。
发表评论 取消回复