Centos下hadoop2.4.1伪分布式搭建

版权声明:本文为博主原创文章,转载注明地址:http://blog.csdn.net/wang704987562 https://blog.csdn.net/wang704987562/article/details/73176691

1.环境准备
系统:Centos7
JDK:1.7
hadoop:2.4.1
IP:192.168.31.84

2.安装hadoop2.4.1
下载hadoop2.4.1安装包hadoop-2.4.1.tar.gz,上传到虚拟机,修改$HADOOP_HOME/etc/hadoop下5个配置文件。

2.1修改hadoop-env.sh,修改JAVA_HOME:

export JAVA_HOME=/usr/java/jdk1.7.0_80

2.2修改core-site.xml:

<!-- 制定HDFS的老大(NameNode)的地址 -->
<property>
    <name>fs.defaultFS</name>
    <value>hdfs://itcast01:9000</value>
</property>
<!-- 指定hadoop运行时产生文件的存储目录 -->
<property>
    <name>hadoop.tmp.dir</name>
    <value>/itcast/hadoop-2.4.1/tmp</value>
</property>

2.3修改hdfs-site.xml:

<!-- 指定HDFS副本的数量 -->
<property>
    <name>dfs.replication</name>
    <value>1</value>
</property>

2.4先修改mapred-site.xml.template为mapred-site.xml,再添加以下内容:

<!-- 指定mr运行在yarn上 -->
<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>

2.5修改yarn-site.xml

<!-- 指定YARN的老大(ResourceManager)的地址 -->
<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>itcast01</value>
</property>
<!-- reducer获取数据的方式 -->
<property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
</property>

2.6添加hadoop到环境变量

export JAVA_HOME=/usr/java/jdk1.7.0_80
export HADOOP_HOME=/soft/hadoop-2.4.1
export HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native
export HADOOP_OPTS='-Djava.library.path=$HADOOP_HOME/lib'
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

2.7格式化namenode(是对namenode进行初始化)

hdfs namenode -format (hadoop namenode -format)

2.8启动hadoop,再启动YARN:

sbin/start-dfs.sh

sbin/start-yarn.sh

2.9使用jps命令验证是否启动成功:

[root@zk01 hadoop]# jps
13473 DataNode
12159 ResourceManager
28657 Jps
14270 SecondaryNameNode
12251 NodeManager
14047 NameNode
51474 QuorumPeerMain
6295 jar

3.查看管理页面
3.1HDFS管理界面:

3.2ResourceManager运行在主节点master上,可以Web控制台查看状态,MR管理界面:

3.3NodeManager运行在从节点上,可以通过Web控制台查看对应节点的资源状态:

4.配置ssh免登陆

#生成ssh免登陆密钥
#进入到我的home目录
cd ~/.ssh

ssh-keygen -t rsa (四个回车)

执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥):

[root@zk01 .ssh]# ls
authorized_keys  id_rsa  id_rsa.pub  known_hosts

将公钥拷贝到要免登陆的机器上:

ssh-copy-id localhost

没有更多推荐了,返回首页