本文共 4342 字,大约阅读时间需要 14 分钟。
mac上安装hadoop
1,mac下的java
ll /usr/bin |grep'java'
默认:
/System/Library/Frameworks/JavaVM.framework/Versions/Current/Commands/java
具体的安装路径:
/Library/Java/JavaVirtualMachines/下面,
JAVA_HOME是/Library/Java/JavaVirtualMachines/jdk1.7.0_75/Contents/Home。
2,mac下的ssh
首先测试ssh localhost,
若不成功,看是否启动允许remotelogin,再尝试如果失败则继续下面的
ssh-keygen -t dsa-P '' -f ~/.ssh/id_dsa
ssh-keygen表示生成秘钥;
-t表示秘钥类型;-P用于提供密语;-f指定生成的秘钥文件。
这个命令在”~/.ssh/“文件夹下创建两个文件id_dsa和id_dsa.pub,是ssh的一对儿私钥和公钥。
接下来,将公钥追加到授权的key中去,输入:
cat~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
再次尝试
ssh localhost
若无法打开,解决方法如下:
进入Mac的系统偏好设置 –> 共享–> 勾选remote login,并设置allow access for all users。
3,下载镜像,mirror,选择某一个tar.gz
http://mirror.bit.edu.cn/apache/hadoop/common/
4,设置环境变量
vi ~/.bash_profile 或者/etc/profile中
exportJAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_75/Contents/Home
exportJRE_HOME=$JAVA_HOME/jre
exportHADOOP_HOME=/Users/xiaolong.zhao/ittools/hadoop
#是防止出现:Warning:$HADOOP_HOME is deprecated的警告错误。
exportHADOOP_HOME_WARN_SUPPRESS=1
exportPATH=$JAVA_HOME/bin:$JRE_HOME/bin: $ HADOOP_HOME /sbin:$HADOOP_HOME/bin:$PATH
注意:linux与mac的安装,唯一区别就是mac下会有默认的jdk路径的,以及ssh配置的
5,配置hadoop-env.sh
在/Users/xiaolong.zhao/ittools/hadoop/etc/hadoop目录下,找到hadoop-env.sh,打开编辑进行如下设置:
export JAVA_HOME=${JAVA_HOME}(去掉注释)
export HADOOP_HEAPSIZE=2000(去掉注释)
export HADOOP_OPTS=”-Djava.security.krb5.realm=OX.AC.UK-Djava.security.krb5.kdc=kdc0.ox.ac.uk:kdc1.ox.ac.uk”(去掉注释)
6, 4个核心文件配置
6.1.配置core-site.xml——(defaultFS)指定了NameNode的主机名与端口
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | <? xmlversion = "1.0" encoding = "UTF-8" ?> < configuration > <!-- fs.defaultFS - 这是一个描述集群中NameNode结点的URI(包括协议、主机名称、端口号),集群里面的每一台机器都需要知道NameNode的地址。 DataNode结点会先在NameNode上注册,这样它们的数据才可以被使用。独立的客户端程序通过这个URI跟DataNode交互,以取得文件的块列表。--> < property > < name >fs.defaultFS</ name > < value >hdfs://localhost:8000</ value > </ property > <!-- hadoop.tmp.dir 是hadoop文件系统依赖的基础配置,很多路径都依赖它。 如果hdfs-site.xml中不配置namenode和datanode的存放位置,默认就放在这个路径中--> < property > < name >hadoop.tmp.dir</ name > < value >/Users/time/Documents/hadoop-2.7.3/tmp</ value > < description >A base for othertemporary directories.</ description > </ property > </ configuration > |
6.2. 配置hdfs-site.xml——指定了HDFS的默认参数副本数
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 | <? xmlversion = "1.0" encoding = "UTF-8" ?> < configuration > <!-- dfs.replication -它决定着 系统里面的文件块的数据备份个数。对于一个实际的应用,它应该被设为3。 少于三个的备份,可能会影响到数据的可靠性--> < property > < name >dfs.replication</ name > < value >1</ value > </ property > <!-- datanaode和namenode的物理存储,如果不设置,它的值hadoop.tmp.dir--> < property > < name >dfs.namenode.name.dir</ name > < value >file:/home/hdfs/name</ value > </ property > <!-- 可以不设置,namenode的Web 监控 端口,默认是0.0.0.0:50070--> < property > < name >dfs.namenode.http-address</ name > < value >localhost:57000</ value > </ property > < property > < name >dfs.datanode.data.dir</ name > < value >file:/home/hdfs/data</ value > </ property > </ configuration > |
注意这里的file
如果配置为: file:/path/a/c,则具体的路径就是: /path/a/c
如果配置为:file://path/a/c,则具体的路径就是: /a/c
6.3 mapred-site.xml配置
1 2 3 4 | < property > < name >mapreduce.framework.name</ name > < value >yarn</ value > </ property > |
6.4 Yarn-site.xml 配置
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 | <? xmlversion = "1.0" ?> < configuration > <!-- resourcemanager --> <!-- client visit address --> < property > < name >yarn.resourcemanager.address</ name > < value >localhost:18040</ value > </ property > <!-- ApplicationMaster visit address--> < property > < name >yarn.resourcemanager.scheduler.address</ name > < value >localhost:18030</ value > </ property > <!-- NodeManager visit address --> < property > < name >yarn.resourcemanager.resource-tracker.address</ name > < value > localhost:18025</ value > </ property > <!-- web visit address --> < property > < name >yarn.resourcemanager.webapp.address</ name > < value >localhost:18088</ value > </ property > <!-- NodeManager support mapreduce service--> < property > < name >yarn.nodemanager.aux-services</ name > < value >mapreduce_shuffle</ value > </ property > </ configuration > |
7, 格式化namenode
hdfs namenode-format
8, 启动hadoop
8.1sbin/start-all.sh
8.2 web测试
8.2.1 namenode-web
8.2.2resourcemanager-web
8.2.3 nodemanager-web
http://localhost:8042
本文转自 zhao_xiao_long 51CTO博客,原文链接:http://blog.51cto.com/computerdragon/1939523
转载地址:http://dwroa.baihongyu.com/