本文已参与「新人创作礼」活动,一起开启掘金创作之路。
环境:以CentOS6.5为例
- 防火墙关闭并关闭自启
- selinux设置关闭
- 设置主机名
- 设置主机映射 jdk1.7
- ssh免密登陆
- hadoop-2.5.2
准备
解压hadoop,并在hadoop根目录下创建 data/tmp目录
配置文件修改
配置文件位置:hadoop目录下的etc/hadoop hadoop-env.sh
export JAVA_HOME=/usr/java/jdk1.7.0_71 #jdk路径
core-site.xml
<!-- 用于设置namenode并且作为Java程序的访问入口 -->
<!-- hadoop1.msk.com 为主机名 -->
<property>
<name>fs.defaultFS</name>
<value>hdfs://hadoop1.msk.com:8020</value>
</property>
<!-- 存储NameNode持久化的数据,DataNode块数据 -->
<!-- 手工创建$HADOOP_HOME/data/tmp -->
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/install/hadoop-2.5.2/data/tmp</value>
</property>
hdfs-site.xml
<!-- 设置副本数量 默认是3 可自行根据需求更改 -->
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<!-- 权限,可省略 -->
<property>
<name>dfs.permissions.enabled</name>
<value>false</value>
</property>
<property>
<name>dfs.namenode.http.address</name>
<value>hadoop1.mask.com:50070</value>
</property>
mapred-site.xml
<!-- yarn 与 MapReduce相关 -->
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
yarn-site.xml
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
slaves 这里配置DataNode的主机名 机器有限,这里节点1即为NameNode也为DataNode
hadoop1.msk.com
配置Hadoop环境变量
在环境变量文件/etc/profile加入
export HADOOP_HOME=(你的Hadoop安装路径)
export path=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
NameNode格式化
目的作用:格式化hdfs系统,并且生成存储数据块的目录
hadoop namenode -format
启动|停止hadoop【在NameNode节点运行】
sbin/start-all.sh
sbin/stop-all.sh
想检验是否启动成功可用jps命令查看进程
shell访问HDFS
- 查看目录结构
hadoop fs -ls 路径
- 创建文件夹
hadoop fs -mkdir /a
hadoop fs -mkdir -p /a/b
- 本地上传文件到hdfs中
hadoop fs -put local_path hdfs_path
- 查看文件内容
hadoop fs dfs -text /a/c
hadoop fs dfs -cat /a/c
- 删除
hadoop fs dfs -rm /a/c
- 删除非空文件夹
hadoop fs dfs -rmr /a
- 从hdfs下载文件到本地
hadoop fs -get hdfs_path local_path
浏览器访问HDFC
hadoop1.msk.com:50070 访问 hdfs hadoop1.msk.com:8088 访问 yarn