1:安装maven环境:
Mave下载地址 Maven3.6.3 https://archive.apache.org/dist/maven/maven-3/3.6.3/binaries/
1.1:上传apache-maven-3.6.3-bin.zip 至192.168.193.163 的/opt/module/apache-maven-3.6.3
1.2:cd /etc/profile.d ,编辑my.sh,添加maven环境变量
vi /etc/profile
# MAVEN环境变量
export MAVEN_HOME=/opt/module/apache-maven-3.6.3
export PATH=$PATH:$MAVEN_HOME/bin
source /etc/profile
# 验证安装
mvn --version
可能需要切换到主root下进行查看,执行命令如下所示,注意,可能提示没权限,用chmod 777 mvn(maven 对应的执行文件)调整权限后就正常了:
2,下载hue文件,地址:https://github.com/cloudera/hue/tree/release-4.3.0,选择Downlaod ZIP如下图所示:
2.1将下载下来的文件传至/opt/module/envfile,解压文件至/opt/module/envfile/下
cd /opt/module/envfile
unzip hue-release-4.3.0.zip -d /opt/module/envfile
3 安装依赖
# 需要Python支持(Python 2.7+ / Python 3.5+)
python --version
# 在 CentOS 系统中安装编译 Hue 需要的依赖库
sudo yum install ant asciidoc cyrus-sasl-devel cyrus-sasl-gssapi cyrus-sasl-plain gcc gcc-c++ krb5-devel libffi-devel libxml2-devel libxslt-devel make mysql mysql-devel openldap-devel python-devel sqlite-devel gmp-devel
注意报错:
--> Processing Dependency: hwdata for package: libpciaccess-0.14-1.el7.x86_64
--> Running transaction check
---> Package hwdata.x86_64 0:0.252-9.7.el7 will be installed
Removing mariadb.x86_64 1:5.5.68-1.el7 - u due to obsoletes from installed mysql-community-client-5.7.16-1.el7.x86_64
Removing mariadb-libs.x86_64 1:5.5.68-1.el7 - u due to obsoletes from installed mysql-community-libs-5.7.16-1.el7.x86_64
--> Restarting Dependency Resolution with new changes.
--> Running transaction check
---> Package mariadb.x86_64 1:5.5.68-1.el7 will be installed
---> Package mariadb-libs.x86_64 1:5.5.68-1.el7 will be installed
--> Processing Dependency: mariadb-libs(x86-64) = 1:5.5.68-1.el7 for package: 1:mariadb-devel-5.5.68-1.el7.x86_64
--> Finished Dependency Resolution
Error: Package: 1:mariadb-devel-5.5.68-1.el7.x86_64 (base)
Requires: mariadb-libs(x86-64) = 1:5.5.68-1.el7
You could try using --skip-broken to work around the problem
You could try running: rpm -Va --nofiles --nodigest
解决办法:
参考centos yum install mysql-devel报错解决办法http://www.manongjc.com/detail/40-vrkzxmzwueuigiy.html
原因:yum缺少mysql源,导致在安装mysql-devel的时候会提示安装mariadb-devel-5.5.50-1.el7_2.x86_64,并且系统并没有mysql_config
解决方式:
wget http://repo.mysql.com/mysql57-community-release-el7-10.noarch.rpm
rpm -ivh mysql57-community-release-el7-10.noarch.rpm
再出现另外一个错误:Failing package is: mysql-community-client-5.7.42-1.el7.x86_64
执行如下命令成功:
sudo rpm --import https://repo.mysql.com/RPM-GPG-KEY-mysql-2022
sudo rpm -ivh mysql57-community-release-el7-10.noarch.rpm
sudo yum install ant asciidoc cyrus-sasl-devel cyrus-sasl-gssapi cyrus-sasl-plain gcc gcc-c++ krb5-devel libffi-devel libxml2-devel libxslt-devel make mysql mysql-devel openldap-devel python-devel sqlite-devel gmp-devel
sudo yum install -y rsync
如下图所示:
4.Hue编译安装
cd /opt/module/envfile
unzip hue-release-4.3.0.zip -d /opt/module/envfile
# 进入 hue 源码目录,进行编译。 使用 PREFIX 指定安装 Hue 的路径
cd/opt/module/envfile/hue-release-4.3.0
PREFIX=/opt/module/hue-release-4.3.0 make install
编译好后如下:
查看目录:/opt/module/hue-release-4.3.0/hue,有build就说明编译好了
注意: 编译完后,会在指定目录下生成hue目录文件,千万不能改名,否则无法执行hue脚本命令
# 如果想把HUE从移动到另外一个地方,由于HUE使用了Python包的一些绝对路径,移动之后则必须执行以下命令:
# 这里不要执行
rm app.reg
rm -r build
make apps
在 hdfs-site.xml 中增加配置
在 core-site.xml 中增加配置
在httpfs-site.xml 文件,加入配置
备注:修改完HDFS相关配置后,需要把配置scp给集群中每台机器,重启hdfs服务,如下所示。
hadoop.sh stop hadoop.sh start
5.2Hue配置
# 进入hue配置目录
cd desktop/conf# 复制一份HUE的配置文件,并修改复制的配置文件
cp pseudo-distributed.ini.tmpl pseudo-distributed.ini
vim pseudo-distributed.ini
-- 如下修改# [desktop]
http_host=hadoop162
http_port=8000
is_hue_4=true
time_zone=Asia/Shanghai
dev=true
server_user=hue
server_group=hue
default_user=hue
# 211行左右。禁用solr,规避报错
app_blacklist=search
# [[database]]。Hue默认使用SQLite数据库记录相关元数据,替换为mysql
engine=mysql
host=hadoop162
port=3306
user=root
password=aaaaaa
name=hue
# 1003行左右,Hadoop配置文件的路径
hadoop_conf_dir=/opt/moudle/hadoop-2.9.2/etc/hadoop
#将配置好的文件pseudo-distributed.ini放入目录:/opt/module/hue-release-4.3.0/hue/desktop/conf
# 去mysql所在的机器上
# 在mysql中创建数据库hue,用来存放元数据
mysql -uroot -p12345678
mysql> create database hue;
# 在hue目录中
# 初始化数据库,可以看到mysql的hue数据库下出现很多表
build/env/bin/hue syncdb
build/env/bin/hue migrate
# 以上两条命令,可能会出现密码错误的情况,需要保证密码正确的前提下,也要配置可以远程连接。在mysql中执行
SHOW VARIABLES LIKE 'validate_password%';
set global validate_password_length=8;
set global validate_password_policy=0;
GRANT ALL PRIVILEGES ON *.* to 'root'@'%' IDENTIFIED BY '12345678' WITH GRANT OPTION;
FLUSH PRIVILEGES;
执行完数据库后的操作如下:
5.3启动Hue服务
# 在安装hue机器上增加 hue 用户和用户组
groupadd hue
useradd -g hue hue
# 在hue安装路径下执行
build/env/bin/supervisor
在浏览器中输入:IP地址:8000,可以看到页面,说明安装成功,
第一次访问的时候,需要设置超级管理员用户和密码。记住它(admin/123456)。
如下图所示:
页面报错:Could not connect to localhost:10000
直接再启动:
hive --service hiveserver2 & 后还是报错
经过研究,需要执行以下命令才行:
cd /opt/module/hive-3.1.2
bin/hive --service metastore &
5.4Hue整合Hadoop、Hive
修改desktop/conf/pseudo-distributed.ini文件,集成HDFS、YARN
# 211 行。 没有安装 Solr,禁用,否则一直报错
app_blacklist=search# [hadoop] -- [[hdfs_clusters]] -- [[[default]]]# 注意端口号。
fs_defaultfs=hdfs://hadoop162:9000 #namenode节点
webhdfs_url=http://hadoop162:50070/webhdfs/v1
# 211 行
hadoop_conf_dir=/opt/module/hadoop-3.1.3/etc/hadoop
# [hadoop] -- [[yarn_clusters]] -- [[[default]]]
#有 /opt/module/spark-3.0.0-yarn,在162中,但http://192.168.193.163:8032可访问
#yarn.resourcemanager.hostname 指定了 Resourcemanager 运行在哪个节点上。
#可参考https://my.oschina.net/u/4339899/blog/3434648
resourcemanager_host=hadoop163
resourcemanager_port=8032
submit_to=True
resourcemanager_api_url=http://hadoop163:8088 (可用http://192.168.193.163:8088访问到)
proxy_api_url=http://hadoop163:8088
history_server_api_url=http://hadoop162:19888 # 历史服务器地址 (http://192.168.193.162:19888/jobhistory可访问)
集成Hive
集成Hive需要启动 Hiveserver2 服务
# [beeswax]
hive_server_host=hadoop162
hive_server_port=10000
hive_conf_dir=/opt/module/hive-3.1.2/conf/conf
集成MySQL
# [librdbms] -- [[databases]] -- [[[mysql]]];1639行
# 注意:1639行原文: ##[[mysql]] => [[mysql]];两个##要去掉![[[mysql]]]
nice_name="My SQL DB"
name=hue
engine=mysql
host=hadoop162
port=3306
user=root
password=aaaaaa
5.5最后重启服务
重启命令,再次启动就是先重启了
cd /opt/module/hive-3.1.2 »
bin/hive --service metastore &
整体执行如下图:
以上就是整个水沐教育科技有限公司研发使用大数据Hue构建过程
如果遇到大数据或者人工智能方面的问题,可以联系水沐教育科技有限公司