当前位置: 首页 > news >正文

hadoop入门学习教程--DKHadoop完整安装步骤

hadoop入门学习教程--DKHadoop完整安装步骤
使用hadoop版本是DKH标准三节点发行版,DKHadoop版本的易用性比较好,环境部署要简单的多,参考此篇安装前请先下载DKHadoop版本,网盘链接:https://pan.baidu.com/s/1-427... 提取码:vg2w
第一部分:准备工作
1、 大数据平台所需配置:
(1) 系统:CentOS 6.5 64位(需默认安装Desktop)
(2) CPU :intel E3及以上。
(3) 内存:建议最小8G,用图计算建议32G,推荐128G。
(4) 硬盘:256G以上,推荐使用固态硬盘。
(5) 系统分区要求: 如无特殊需求,除swap分区外,可将剩余空间全部分配到/(根)分区
(6) 网络要求:如无特殊情况,尽量可以接入外网。
(7) 至少三台服务器(三台服务器名字任意起,密码须一致)。
(8)安装使用root用户作为默认用户
2、 远程上传和远程连接工具:
(1) 若直接使用个人PC开启的虚拟机作为服务器的基础,直接拷贝到虚拟机下即可。
(2) 若是使用机房服务器作平台搭建的服务器,如若不能直接接触到服务器,则需要使用远程工具连接并发送安装包

第二部分:服务器操作系统配置

1.修改权限
步骤:在准备工作中拷贝安装包DKHPlantform.zip到主节点/root/目录后,解压并修改文件权限(文件所有者可读可写可执行,与文件所有者属于一个用户组的其他用户可读可执行,其他用户组可读可执行)。
命令:
cd /root/
unzip DKHPlantform.zip
chmod -R 755 DKHPlantform

  1. 搭建hadoop集群设置SSH免密登录

步骤:
修改主机名 vi /etc/sysconfig/network reboot
(1)修改本机hosts文件,写入对应关系
命令:
vi /etc/hosts
通过按键盘上的insert或是I键进入编辑模式,编辑完成后按一下Esc键然后按一下按Shift+:键,输入wq 后回车就可以保存。输入q!后回车则是放弃保存并退出.
进入编辑模式后,按照规则写入主机与ip的对应关系(主机名称dk41是自己命名的,如下图)例:

    192.168.1.41    dk41

192.168.1.42 dk42
192.168.1.43 dk43

clipboard.png

编辑完后,保存退出。把对应关系拷到其他两台机器上。
命令:
scp -r /etc/hosts 192.168.1.42:/etc
scp -r /etc/hosts 192.168.1.43:/etc
(2)执行集群之间免密前的准备工作
a)执行sshpass.sh的脚本的时候会去读sshhosts和sshslaves这两个文件,
修改文件sshhosts,输入全部机器的主机名,每行一个主机名(如下图)
命令:
vi /root/DKHPlantform/autossh/sshhosts
通过按键盘上的insert或是I键进入编辑模式,编辑完成后按一下Esc键然后按一下按Shift+:键,输入wq,后回车就可以保存。输入q!后回车则是放弃保存并退出.

clipboard.png

修改文件sshslaves,写入除主机名之外的所有机器名(如下图)
命令:
vi /root/DKHPlantform/autossh/sshslaves
通过按键盘上的insert或是I键进入编辑模式,编辑完成后按一下Esc键然后按一下按Shift+:键,输入wq,后回车就可以保存。输入q!后回车则是放弃保存并退出.

clipboard.png

b)执行insExpect.sh,系统会装两个rpm包,在执行sshpass.sh的过程中无需再输密码和yes,脚本自动继续执行。
命令:
cd /root/DKHPlantform/autossh
./insExpect.sh
按照提示多次输入yes和密码(如下图)

clipboard.png

c)执行changeMaster.sh脚本为了清空/root/.ssh目录下的所有文件(在/root/DKHPlantform/autossh目录下),避免在执行sshpass.sh脚本时产生的新密钥时与旧的密钥发生冲突。
命令:
./changeMaster.sh
按照提示输入(如下图)

clipboard.png

(3)执行集群免密(SSH)
a)执行SSH:
命令:

    cd /root/

./sshpass.sh 密码
123456为集群密码,根据自己实际情况输入。

clipboard.png

b)防止访问服务器时某些服务被拦截,需关闭防火墙。
命令:
cd /root/DKHPlantform/autossh
./offIptables.sh

clipboard.png

3.安装双机热备份的MySQL
目的:存放Hive的元数据
步骤:
(1)从主节点分发mysql安装目录到第二节点
命令:
scp -r /root/DKHPlantform/mysqlInst/ 192.168.1.42:/root/
(2)主节点执行:
命令:
cd /root/DKHPlantform/mysqlInst/
./mysql.sh 1
ssh前往第二台机器(从节点)并执行:
命令:
cd /root/mysqlInst/
./mysql.sh 2
(3)执行成功之后执行热备份(两台机器上都要执行,两个ip互换,41上写42,42上写41,密码是Mysql的密码为:123456。平台内已经设定好,请勿修改):
命令:
source /etc/profile
./sync.sh 192.168.1.xxx(另一台mysql地址) root 123456

4.创建数据库
步骤:
(1)导入MySQL数据表,只在主节点执行:
命令:
mysql -uroot -p123456 < { 此处为sql文件,主目录下文件: dkh.sql}
如:mysql -uroot -p123456 </root/DKHPlantform/dkh.sql
(2)执行完后查看一下两台mysql的数据表是否存在,从节点查看执行:
命令:
mysql -uroot -p123456
show databases;

clipboard.png

第三部分:DKH系统安装
(1)启动安装
步骤:执行以下命令。
命令:
cd /root/DKHPlantform/dkh-tomcat-7.0.56/bin/
./startup.sh
(2)登录
启动成功后浏览器键入主节点ip
登陆默认用户名和密码:

Username:admin
Password: 123456

后续根据提示安装
(3)组件安装路径

建议采用默认安装路径,即/opt/dkh/,注意千万不要放/root/,不然impala等组件的安装可能出现问题

第四部分:常见问题解决方法

1、当hdfs的zkfc出现如下问题时,可尝试以下方法:

clipboard.png

(1) 先格式化hadoopzk:hdfs zkfc -formatZK
(2) 启动zk,sbin下: ./hadoop-daemon.sh start zkfc
(3) 设定失败转移的namenode: hdfs haadmin -failover nn1 nn2
2、当hue页面打不开,显示如下内容时,说明没有创建hue数据库,可在主节点执行此文件,根据提示输入Y即可

clipboard.png

3、当hue页面打不开,显示如下内容时,可执行如下命令解决:

cd /opt/dkh/hue-3.12.0/build/env/bin

./hue syncdb 之后输入no

# ./hue migrate

clipboard.png

4、Essql页面打不开,显示如下内容时,可通过以下方式解决
(1) 主节点运行命令:source /etc/profile,后重启Tomcat(注意使用shutdown命令之后,若还存在相关进程,需手动kill掉)适用于环境变量不生效的情况,比如,Java的版本识别的是1.7,而不是1.8;hdfs相关命令不识别等。
(2) 重启Tomcat,注意使用shutdown命令之后,若还存在相关进程,需手动kill掉适用于启动了多个Tomcat进程的情况。

clipboard.png

相关文章:

  • webpack 4.x一起学习(二)
  • String类的常用方法详解
  • web开发原则
  • 视频文件应该怎样进行无损压缩
  • 删除小脚本 srm
  • python爬虫系列(2.1-requests库的基本的使用)
  • 我的原型链家族将要崛起。
  • 一步步实现web程序信息管理系统之二--后台框架实现跳转登陆页面
  • 基于CentOS设置和使用Yum软件仓库
  • 深入浏览器事件循环的本质
  • 镶锆石、侧边指纹、双屏翻盖机,三星的这款2万块手机,只有土豪能懂
  • 2018自媒体运营吸粉3大途径
  • 闭包--闭包作用之保存(一)
  • 智能监控在袋鼠云中的应用
  • 一个UML类图示例
  • [LeetCode] Wiggle Sort
  • Angular 4.x 动态创建组件
  • Angular js 常用指令ng-if、ng-class、ng-option、ng-value、ng-click是如何使用的?
  • Django 博客开发教程 8 - 博客文章详情页
  • export和import的用法总结
  • jQuery(一)
  • mysql 5.6 原生Online DDL解析
  • node-sass 安装卡在 node scripts/install.js 解决办法
  • php的插入排序,通过双层for循环
  • scala基础语法(二)
  • use Google search engine
  • 从tcpdump抓包看TCP/IP协议
  • 浮现式设计
  • 回顾 Swift 多平台移植进度 #2
  • 目录与文件属性:编写ls
  • 前端每日实战:61# 视频演示如何用纯 CSS 创作一只咖啡壶
  • 驱动程序原理
  • 山寨一个 Promise
  • 微服务入门【系列视频课程】
  • 系统认识JavaScript正则表达式
  • 新版博客前端前瞻
  • 深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署
  • 回归生活:清理微信公众号
  • ​Distil-Whisper:比Whisper快6倍,体积小50%的语音识别模型
  • #《AI中文版》V3 第 1 章 概述
  • #include到底该写在哪
  • #绘制圆心_R语言——绘制一个诚意满满的圆 祝你2021圆圆满满
  • (4.10~4.16)
  • (5)STL算法之复制
  • (51单片机)第五章-A/D和D/A工作原理-A/D
  • (超简单)构建高可用网络应用:使用Nginx进行负载均衡与健康检查
  • (附源码)ssm户外用品商城 毕业设计 112346
  • (附源码)计算机毕业设计SSM疫情社区管理系统
  • (未解决)macOS matplotlib 中文是方框
  • (原創) X61用戶,小心你的上蓋!! (NB) (ThinkPad) (X61)
  • .\OBJ\test1.axf: Error: L6230W: Ignoring --entry command. Cannot find argumen 'Reset_Handler'
  • .libPaths()设置包加载目录
  • .NET CORE Aws S3 使用
  • .NET 设计一套高性能的弱事件机制
  • .Net6 Api Swagger配置