hadoop3.0 分布式搭建/安装
来源:互联网 发布:ug倒角怎样编程 编辑:程序博客网 时间:2024/05/31 06:22
原文:http://blog.csdn.net/u010499619/article/details/52886872
最近打算尝试在服务器上安装hadoop3.0,由于服务器上本来搭建好hadoop2.6,并且是用root用户安装。我不打算删除原来的hadoop2.6,
所以准备新建两个用户,hadoop2.6及hadoop3.0;将位于/usr/local/Hadoop/目录下的hadoop2.6移到hadoop2.6用户目录下,并且将原本在/etc/profile
中配置的环境变量删除,然后在hadoop2.6用户目录中的.bashrc文件设置环境变量。使得两个用户各自使用不同的版本。
Preface
此次将用4台服务器搭建,一台为master节点,三台为slave节点。之前的hosts设置如下
- master 116.57.56.220
- slave1 116.57.86.221
- slave2 116.57.86.222
- slave3 116.57.86.223
一、创建新用户
- sudo useradd -d /home/hadoop3.0 -m hadoop3.0 //-d设置用户目录路径,-m设置登录名
- passwd hadoop3.0 //设置密码
查询资料后发现此时的shell被设置为sh,故在/etc/passwd将/bin/sh改为/bin/bash后恢复正常。
- hadoop3.0:x:1002:1002::/home/hadoop3.0:/bin/bash
关于sh与bash的区别
http://blog.csdn.net/eager7/article/details/14221901
http://blog.chinaunix.net/uid-24709751-id-3575988.html
接着在使用sudo时报错,原因是新创建的用户需要在/etc/sudoers中添加sudo权限
- # Allow members of group sudo to execute any command
- %sudo ALL=(ALL:ALL) ALL
- hadoop3.0 ALL=(ALL)ALL
将环境变量设置到.bashrc中
- export JAVA_HOME=/usr/local/java/jdk1.8.0_101 //hadoop3.0需要java8
- export HADOOP_HOME=~/usr/local/hadoop/hadoop-3.0.0-alpha1
- export JRE_HOME=${JAVA_HOME}/jre
- export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:${HIVE_HOME}/lib
- export SCALA_HOME=~/usr/local/scala/scala-2.10.5
- export SPARK_HOME=~/usr/local/spark/spark-2.0.1-bin-hadoop2.7
- export SQOOP_HOME=~/usr/local/sqoop/sqoop-1.4.6
- export HIVE_HOME=~/usr/local/hive/hive-1.2.1
- export HBASE_HOME=~/usr/local/hbase/hbase-1.0.1.1
- export PATH=${SPARK_HOME}/bin:${SCALA_HOME}/bin:${JAVA_HOME}/bin:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:${SQOOP_HOME}/bin:${HADOOP_HOME}/lib:${HIVE_HOME}/bin:${HBASE_HOME}/bin:$PATH
二、新建用户设置ssh免密码登陆
- ssh-keygen -t rsa //生成密钥id-rsa、公钥id-rsa.pub
将公钥的内容复制到需要ssh免密码登陆的机器的~/.ssh/authorized_keys文件中。
例如:A机器中生成密钥及公钥,然后将公钥内容复制到B机器的authorized_keys文件中,这样变实现了A免密码ssh登陆B。
三、hadoop配置
hadoop3.0需要配置的文件有core-site.xml、hdfs-site.xml、yarn-site.xml、mapred-site.xml、hadoop-env.sh、workers
1.core-site.xml配置文件
- <configuration>
- <property>
- <name>fs.defaultFS</name>
- <value>hdfs://master:9000</value>
- </property>
- <property>
- <name>hadoop.tmp.dir</name>
- <value>file:///home/hadoop3.0/usr/local/hadoop/hadoop-3.0.0-alpha1/tmp</value>
- </property>
- </configuration>
2.hdfs-site.xml配置文件
- <configuration>
- <property>
- <name>dfs.replication</name>
- <value>3</value>
- </property>
- <property>
- <name>dfs.namenode.name.dir</name>
- <value>file:///home/hadoop3.0/usr/local/hadoop/hadoop-3.0.0-alpha1/hdfs/name</value>
- </property>
- <property>
- <name>dfs.datanode.data.dir</name>
- <value>file:///home/hadoop3.0/usr/local/hadoop/hadoop-3.0.0-alpha1/hdfs/data</value>
- </property>
- <property>
- <name>dfs.namenode.secondary.http-address</name>
- <value>slave1:9001</value>
- </property>
- </configuration>
3.workers中设置slave节点,将slave机器的名称写入
- slave1
- slave2
- slave3
4.mapred-site配置
- cp mapred-site.xml.template mapred-site.xml
- <configuration>
- <property>
- <name>mapreduce.framework.name</name>
- <value>yarn</value>
- </property>
- <property>
- <name>mapreduce.application.classpath</name>
- <value>
- /home/hadoop3.0/usr/local/hadoop/hadoop-3.0.0-alpha1/etc/hadoop,
- /home/hadoop3.0/usr/local/hadoop/hadoop-3.0.0-alpha1/share/hadoop/common/*,
- /home/hadoop3.0/usr/local/hadoop/hadoop-3.0.0-alpha1/share/hadoop/common/lib/*,
- /home/hadoop3.0/usr/local/hadoop/hadoop-3.0.0-alpha1/share/hadoop/hdfs/*,
- /home/hadoop3.0/usr/local/hadoop/hadoop-3.0.0-alpha1/share/hadoop/hdfs/lib/*,
- /home/hadoop3.0/usr/local/hadoop/hadoop-3.0.0-alpha1/share/hadoop/mapreduce/*,
- /home/hadoop3.0/usr/local/hadoop/hadoop-3.0.0-alpha1/share/hadoop/mapreduce/lib/*,
- /home/hadoop3.0/usr/local/hadoop/hadoop-3.0.0-alpha1/share/hadoop/yarn/*,
- /home/hadoop3.0/usr/local/hadoop/hadoop-3.0.0-alpha1/share/hadoop/yarn/lib/*
- </value>
- </property>
- </configuration>
Error: Could not find or load main class org.apache.hadoop.mapreduce.v2.app.MRAppMaster
后来在此帖子找到原因http://youling87.blog.51cto.com/5271987/1548227
5.yarn-site.xml配置
- <configuration>
- <!-- Site specific YARN configuration properties -->
- <property>
- <name>yarn.nodemanager.aux-services</name>
- <value>mapreduce_shuffle</value>
- </property>
- <property>
- <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
- <value>org.apache.hadoop.mapred.ShuffleHandle</value>
- </property>
- <property>
- <name>yarn.resourcemanager.resource-tracker.address</name>
- <value>master:8025</value>
- </property>
- <property>
- <name>yarn.resourcemanager.scheduler.address</name>
- <value>master:8030</value>
- </property>
- <property>
- <name>yarn.resourcemanager.address</name>
- <value>master:8040</value>
- </property>
- </configuration>
6.hadoop-env.sh中配置java_home
- export JAVA_HOME=/usr/local/java/jdk1.8.0_101
四、启动hadoop
1.格式化namenode若没有设置路径$HADOOP_HOME/bin为环境变量,则需在$HADOOP_HOME路径下执行
- hdfs namenode -format
- bin/hdfs namenode -format
- start-dfs.sh
- start-yarn.sh
- sbin/start-dfs.sh
- sbin/start-yarn.sh
五、mapreduce程序测试
使用自带的example进行测试
1.生成HDFS请求目录执行MapReduce任务
- hdfs dfs -mkdir /user
- hdfs dfs -mkdir /user/hduser
- hdfs dfs -mkdir /user/hduser/input
- hdfs dfs -put etc/hadoop/*.xml /user/hduser/input
- hadoop jar share/hadoop/mapreduce/hadoop-mapreduce-examples-3.0.0-alpha1.jar grep /user/hduser/input output 'dfs[a-z.]+'
4.查看输出文件:
将输出文件从分布式文件系统拷贝到本地文件系统查看:- hdfs dfs -get output output
- cat output/*
阅读全文
0 0
- hadoop3.0 分布式搭建/安装
- hadoop3.0 分布式搭建/安装
- hadoop3.0安装配置
- Hadoop3.0安装配置
- hadoop3.0.0分布式集群安装过程
- CentOS 6.5下hadoop3.0集群搭建
- Hadoop3-分布式文件系统1
- Hadoop3-分布式文件系统2
- Hadoop3.0稳定版的安装部署
- hadoop3.0
- Hadoop3.0.0伪分布式、完全分布式安装及其新特性介绍
- hadoop3.0.0-alpha1+jdk1.8.0_121+ubuntu16.04LTS分布式搭建
- centos7(vm)下hadoop2.7.2完全分布式安装验证(x86)-hadoop3节点集群(2副本)
- Ubuntu 14.04下 Hadoop3.0-alpha 的安装
- Hadoop3.0新特性
- hadoop3.0新特性
- hadoop3.0新特性
- hadoop3
- STM32串口中断卡死
- MySQL 1040 Too many connections
- Spark2.1.1<spark写入Hbase的三种方法性能对比>
- 守护进程
- 播放视频
- hadoop3.0 分布式搭建/安装
- mysql三种复制的优缺点
- mongodb设置用户名密码,以及权限
- listView的item变化以及颜色选择,点其它控件默认对listView的选中项,排序
- 深入理解java异常处理机制
- Git 提交代码到github
- ROW_NUMBER() OVER函数的基本用法 / Rank() over()的用法
- hdu 5869 求区间不同gcd数 离线+树状数组+rmq二分
- Redis安装