Ubuntu16安装Hadoop2.7.3完全分布式

前端之家收集整理的这篇文章主要介绍了Ubuntu16安装Hadoop2.7.3完全分布式前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

第一步:

安装java:通过下载官网安装包方式我就不说了,网上很多;现在采用的是ppa(源) 方式安装。

1.添加ppa

  1. sudo add-apt-repository ppa:webupd8team/java
  2.  
  3. sudo apt-get update

2.安装oracle-java-installer

  1. sudo apt-get install oracle-java8-installer

安装器会提示你同意 oracle 的服务条款,选择 ok

然后选择yes 即可

3.设置系统默认jdk

  1. sudo update-java-alternatives -s java-8-oracle

4.测试jdk 是是否安装成功:

  1. java -version
  2.  
  3. javac -version

第二步:

更改主机名:

  1. vim /etc/hostname

其他节点都需要更改,然后重启即可

配置hosts文件

填写好IP地址及其映射名。

设置hadoop用户

  1. sudo addgroup hadoop
  2. sudo adduser --ingroup hadoop hadoop

用户添加sudo权限:

sudo usermod -aG 超级用户组名 用户名

例子:sudo usermod -aG sudo hadoop

其中a:表示添加,G:指定组名

第三步:

免密码登录

  1. ssh-keygen -t rsa
  2. cd ~/.ssh
  3. cp id_rsa.pub authorized_keys

每个节点都运行:

然后把authorized_keys复制到各个节点

  1. scp /home/hadoop/.ssh/authorized_keys hadoop@slave1:~/.ssh/
  2. scp /home/hadoop/.ssh/authorized_keys hadoop@slave2:~/.ssh/

测试:

  1. ssh master
  2. ssh slave1
  3. ssh slave2

第四步:

配置Hadoop文件

我的Hadoop存放位置

  1. /home/hadoop/hadoop273

创建目录

  1. mkdir /home/hadoop/tmp
  2. mkdir /home/hadoop/dfs
  3. mkdir /home/hadoop/dfs/name
  4. mkdir /home/hadoop/dfs/data

配置hadoop-env.sh和yarn-env.sh的java目录

配置slaves

  1. slave1
  2. slave2

配置core-site.xml

  1. <configuration>
  2. <property>
  3. <name>fs.defaultFS</name>
  4. <value>hdfs://master:9000</value>
  5. </property>
  6. <property>
  7. <name>io.file.buffer.size</name>
  8. <value>131072</value>
  9. </property>
  10. <property>
  11. <name>hadoop.tmp.dir</name>
  12. <value>file:/home/hadoop/tmp</value>
  13. <description>Abase for other temporary directories.</description>
  14. </property>
  15. </configuration>

配置hdfs-site.xml

  1. <configuration>
  2. <property>
  3. <name>dfs.namenode.secondary.http-address</name>
  4. <value>master:9001</value>
  5. </property>
  6. <property>
  7. <name>dfs.namenode.name.dir</name>
  8. <value>file:/home/hadoop/dfs/name</value>
  9. </property>
  10. <property>
  11. <name>dfs.datanode.data.dir</name>
  12. <value>file:/home/hadoop/dfs/data</value>
  13. </property>
  14. <property>
  15. <name>dfs.replication</name>
  16. <value>2</value>
  17. </property>
  18. <property>
  19. <name>dfs.webhdfs.enabled</name>
  20. <value>true</value>
  21. </property>
  22. <property>
  23. <name>dfs.permissions</name>
  24. <value>false</value>
  25. </property>
  26. </configuration>

配置mapred-site.xml

  1. <configuration>
  2. <property>
  3.         <name>mapreduce.framework.name</name>
  4. <value>yarn</value>
  5. </property>
  6. <property>
  7. <name>mapreduce.jobhistory.address</name>
  8. <value>master:10020</value>
  9. </property>
  10. <property>
  11. <name>mapreduce.jobhistory.webapp.address</name>
  12. <value>master:19888</value>
  13. </property>
  14. <property>
  15. <name>mapred.job.tracker</name>
  16. <value>master:9001</value>
  17. </property>
  18. </configuration>

第五步:

格式化hdfs

  1. bin/hadoop namenode -format

运行Hadoop

  1. ./sbin/start-all.sh

检查是否成功

常见问题:

免密码的时候

ssh中“Host key verification Failed.“的解决方

在/etc/ssh/ssh_config

  1. StrictHostKeyChecking no
  2. UserKnownHostsFile /dev/null

出现Java HotSpot(TM) 64-Bit Server VM warning: You have loaded library /home/hadoop/2.2.0/lib/native/libhadoop.so.1.0.0 which might have disabled stack guard. The VM will try to fix the stack guard now的解决方

  1. vim ~/.bash_profile
  2. export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lib/native
  3. export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"
  4. source ~/.bash_profile

在.bash_profile里添加如上代码 即可。


WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

运行hadoop namenode -format 出现该警告通过如下方法消除了: 在hadoop-env.sh中 修改HADOOP_OPTS: exportHADOOP_OPTS="-Djava.library.path=$HADOOP_PREFIX/lib:$HADOOP_PREFIX/lib/native"

猜你在找的Ubuntu相关文章