准备工作:
创建虚拟机:使用VirtualBox创建虚拟机
安装Ubuntu-Server:VirtualBox安装ubuntu-Server版
VirtualBox网络配置:Virtualbox虚拟机网络配置详解
这里主要讲解伪分布式的安装
- 创建一个用户,在这个用户上配置hadoop
- 修改hostname 及 hosts
- 设置免密登录
- 安装并配置JDK
- 安装并配置hadoop
1. 新建一个用户,不妨就取名为hadoop
sudo useradd hadoop -m -s /bin/bash
#为新用户配置密码
sudo passwd hadoop
#将hadoop添加sudo权限
sudo vi /etc/sudoers
#在root行下面增加一行,增加的一行将root换成hadoop, 保存时用x! 保存
#切换到新建的hadoop用户
su hadoop
2. 修改hostname及hosts
sudo vi /etc/hostname #修改主机名为 hadoopnode
(修改hostname不重启的方法,修改完后再运行一遍命令 sudo hostname hadoopnode)
修改hosts文件
sudo vi /etc/hosts #增加一行内容, hadoopnode前面的IP以你实际的IP为准
192.168.56.101 hadoopnode
3. 设置免密登录
首先安装 sudo apt install openssh-client && sudo apt install openssh-server 如果提示已经安装,继续便是
ssh-keygen -t rsa #一路回车就行
ssh-copy-id -i ~/.ssh/id_rsa.pub hadoopnode
ssh hadoopnode #如果没让你输入密码,表示免密登录设置成功
4. 安装并配置JDK
打开:https://www.oracle.com/technetwork/java/javase/downloads/index.html
获取到JDK下载地址,可以在服务器(虚拟机)上使用wget方式下载到服务器,如果下载到Windows,可以使用xftp等工具上传到服务器
解压到根目录:
tar -zxvf jdk-8u201-linux-x64.tar.gz -C ~
建一个软链接(方便使用)
ln -s jdk1.8.0_201 jdk
配置环境变量:
vi ~/.bashrc
(等号两侧不要加入空格)
export JAVA_HOME=~/jdk export PATH=$JAVA_HOME/bin:$PATH export CLASSPATH=$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:. |
使得变量生效:
source ~/.bashrc
输入java –version检查JDK安装是否成功
5. 安装并配置hadoop
下载, 这里以2.7.7为例:
cd ~ && wget “http://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/hadoop-2.7.7/hadoop-2.7.7.tar.gz” -O ~/ hadoop-2.7.7.tar.gz
解压
tar -zxvf hadoop-2.7.7.tar.gz -C ~
创建超链接:(便于使用)
ln -s hadoop-2.7.7 hadoop
配置环境变量:
vi ~/.bashrc
export HADOOP_HOME=~/hadoop export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH |
使配置生效:
source ~/.bashrc
修改配置文件 $HADOOP_HOME/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/home/hadoop/jdk |
运行 hadoop version 检测当前配置是否正确,如果能看到hadoop版本号再继续往下配置
修改配置文件 $HADOOP_HOME/etc/hadoop/core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoopnode:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/home/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
</configuration>
修改配置文件$HADOOP_HOME/etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/home/hadoop/tmp/dfs/name</value>
</property>
</configuration>
修改配置文件 $HADOOP_HOME/etc/hadoop/mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
<property>
<name>mapreduce.job.ubertask.enable</name>
<value>true</value>
</property>
</configuration>
注意:mapred-site.xml文件不存时,可以拷贝mapred-site.xml.template
修改配置文件$HADOOP_HOME/etc/hadoop/yarn-site.xml
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoopnode</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
修改配置文件$HADOOP_HOME/etc/hadoop/slaves
hadoopnode
启动hadoop
hdfs namenode -format #格式化
start-all.sh #启动HDFS YARN
jps #查看启动的进程
31876 NodeManager
31032 NameNode
31704 ResourceManager
6090 Jps
31484 SecondaryNameNode
31229 DataNode
通过web查看(配置文件里只是最基本的配置,没有改默认端口):
HDFS: http://服务器IP:50070 http://服务器IP:50090
Yarn: http://服务器IP:8088
通过MapReduce测试:
但预先要往hdfs传一个文件,如何操作? 1) Linux目录下,随意一个目录,创建一个文本文件data.txt,里面写些内容。 2) hdfs dfs -mkdir /input 3) hdfs dfs -put data.txt /input ---上传 4) hdfs dfs -ls /input --查看 |
hadoop jar $HADOOP_HOME/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.7.jar wordcount /input/data.txt /output
最后
以上就是端庄睫毛膏最近收集整理的关于基于Ubuntu-Server配置Hadoop伪分布式的全部内容,更多相关基于Ubuntu-Server配置Hadoop伪分布式内容请搜索靠谱客的其他文章。
发表评论 取消回复