为了交作业,构建hadoop,不希望下次再安装的时候再到处找资料,所以在此将安装全过程记录在此。
一、下载并安装VirtualBox虚拟机,UbuntuLTS16.04ISO映像文件
1、下载VirtualBox
下载VirtualBox虚拟机软件
(https://www.virtualbox.org/wiki/Download_Old_Builds_5_25.2.38windows版本)
2:下载UbuntuLTS16.04ISO映像文件
(http://releases.ubuntu.com/releases/16.04/Desktopimage64位
要进入BIOS开启CPU的虚拟化
3:Ubuntu镜像文件下载完毕,我们就可以开始在VirtualBox中安装Ubuntu了
4:安装Ubuntu
选择下载的UbuntuLTS14.04的ISO映像文件
到达此界面,请勿直接点击启动按钮,否则有可能会导致进程中断。读者应该先设置“存储”,请点击下图中红框中的按钮,打开存储设置界面
进入存储设置界面后,点击没有盘片,再点击光盘按钮,选择一个虚拟光驱,添加上面您下载的UbuntuLTS14.04ISO映像文件。
选择刚创建的虚拟机VirtualBoxWan,点击“启动”按钮
默认正常安装,然后“继续”;
现在安装
弹出确认框,点击“继续”;
输入你所在城市,默认Shanghai也行,然后“继续”;
默认汉语,点击继续
设置你自己的用户名和密码(下面如果选择登录时需要密码,则每次登录需要输入密码,为了方便博主选择了自动登录),然后“继续”;
安装系统
二:Hadoop的安装与使用
Hadoop基本安装配置主要包括以下几个步骤:
•1创建Hadoop用户
•2SSH登录权限设置
•3安装Java环境
•4单机安装配置
•5伪分布式安装配置
1:创建Hadoop用户
如果安装Ubuntu的时候不是用的“hadoop”用户,那么需要增加一个名为
hadoop的用户,但是建立用户之后要更改用户,但是本次我们用wan用户
首先按ctrl+alt+t打开终端窗口,输入如下命令创建新用户:
$sudouseradd–mhadoop–s/bin/bash
上面这条命令创建了可以登陆的hadoop用户,并使用/bin/bash作为shell
接着使用如下命令设置密码,可简单设置为hadoop,按提示输入两次密码:
$sudopasswdwan
可为wan用户增加管理员权限,方便部署,避免一些对新手来说比较
棘手的权限问题:
$sudo add user wan sudo
2:安装openssh-server:
$sudoapt-getinstallopenssh-server
$sshlocalhost
配置无密码登录
$exit#退出localhost登录
$cd~/.ssh/#若失败,先执行sshlocalhost
$ssh-******–trsa#会有提示,按回车
cat/.ssh/id_rsa.pub>>/.ssh/authorized_keys#加入授权
更改权限成功后,再次输入sshlocalhost,检验是否更改成功。
此时不用输入密码就可以弹出页面,更改成功。
3:安装Java环境
Java环境可选择Oracle的JDK,或是OpenJDK,可以在Ubuntu中直接通过命令安装OpenJDK8,下载,过程很长,花了四个小时,但是可以去镜面下载很快。
$sudoapt-getinstallopenjdk-8-jreopenjdk-8-jdk
打开配置文件
sudogedit~/.bashrc
配置JAVA_HOME
在页面最后面添加exportJAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64
使配置文件生效
$source~/.bashrc
检查是否配置成功
JAVA_HOME
$java-version#java后面必须带空格,否则报错
至此,jdk环境配置完成
4:单机安装配置
下载hadoop,打开(速度很快,可以在下Java的时候一起下载)
KaTeX parse error: Expected 'EOF', got '#' at position 54: ….gz-C/usr/local#̲解压到
/usr/local中cd/usr/local/
$sudomv./hadoop-2.9.5/./hadoop#将文件夹名改为hadoop
$sudochown-Rhadoop:hadoop./hadoop#修改文件权限,看好空格
Hadoop解压后即可使用。输入如下命令来检查Hadoop是否可用,成功则会显
示Hadoop版本信息:
$cd/usr/local/hadoop
$./bin/hadoopversion
配置成功
5:伪分布式安装配置
实验步骤:
修改配置文件:core-site.xml,hdfs-site.xml
初始化文件系统hadoopnamenode-format
启动所有进程start-all.sh
访问web界面,查看Hadoop信息
修改配置文件core-site.xml
权限不够要先改权限
sudochmod-Ra+w/usr/local/hadoop
就可以保存了
:
配置完成后,执行NameNode的格式化:
cd/usr/local/hadoop
./bin/hdfsnamenode-format#格式化HDFS系统
出现这句话说明配置成功
测试hadoop
./bon/hadoop/version
如果在这一步时提示Error:JAVA_HOMEisnotsetandcouldnotbefound.的错误,则说明之前设置JAVA_HOME环境变量那边就没设置好,请按教程先设置好JAVA_HOME变量,否则后面的过程都是进行不下去的。如果已经按照前面教程在.bashrc文件中设置了JAVA_HOME,还是出现Error:JAVA_HOMEisnotsetandcouldnotbefound.的错误,那么,请到hadoop的安装目录修改配置文件“/usr/local/hadoop/etc/hadoop/hadoop-env.sh”,在里面找到“exportJAVA_HOME=${JAVA_HOME}”这行,然后,把它修改成JAVA安装路径的具体地址,比如,“exportJAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64”,然后,再次启动Hadoop。
./sbin/start-dfs.sh
输入jps检测
启动完成后,可以通过命令jps来判断是否成功启动,若成功启动则会列出如下进程:“NameNode”、”DataNode”和“SecondaryNameNode”(如果SecondaryNameNode没有启动,请运行sbin/stop-dfs.sh关闭进程,然后再次尝试启动尝试)。
成功启动后,可以访问Web界面http://localhost:50070查看NameNode和Datanode信息,还可以在线查看HDFS中的文件。
至此,分布式配置完成