Hadoop伪集群搭建实践

环境:CentOS7  1G

前期准备:

1、4台机器(1master+3slave)虚拟机,为减少放开端口的操作,直接关闭防火墙

2、安装java环境,配置环境变量,此处使用JDK8

3、上传hadoop安装包,此处使用2.7.7版本,解压至/usr/local下

4、配置host,在/etc/hosts下(hadoop1,hadoop2,hadoop3,hadoop4)

下面开始搭建过程:

1、修改/usr/local/hadoop-2.7.7/etc/hadoop下的hadoop-env.sh文件中JAVA_HOME为本地的绝对路径

2、修改core-site.xml

<!-- 指定HADOOP所使用的文件系统schema(URI),HDFS的老大(NameNode)的地址 -->
<!--
		<property>
			<name>fs.defaultFS</name>
			<value>hdfs://192.168.108.131:9000</value>
		</property>
-->

	<property>
			<name>fs.defaultFS</name>
			<value>hdfs://hadoop1:9000</value>
		</property>


		<!-- 指定hadoop运行时产生文件的存储目录 -->
		<property>
			<name>hadoop.tmp.dir</name>
			<value>/home/hadoop/hadoopdb/tmp</value>
    </property>

3、修改hdfs-site.xml

<!-- 指定HDFS副本的数量 -->
<property>
	<name>dfs.replication</name>
	<value>1</value>
</property>
<!-- 当不使用hostname而是ip时配置,hostname的配置路径/etc/hosts -->
<!--
<property>
    <name>dfs.namenode.datanode.registration.ip-hostname-check</name>
    <value>false</value>
</property>
-->

4、修改mapred-site.xml

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

5、修改yarn-site.xml

<!-- 此处采用hostname的方式 -->    
<property>
			<name>yarn.resourcemanager.hostname</name>
			<value>hadoop1</value>
    </property>
	<!-- reducer获取数据的方式 -->
    <property>
			<name>yarn.nodemanager.aux-services</name>
			<value>mapreduce_shuffle</value>
     </property>

6、配置Hadoop环境变量

在/etc/profile中添加

export HADOOP_HOME=/itcast/hadoop-2.4.1
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

然后source /etc/profile

7、在其他3个节点上进行相同操作,同样的配置。简便操作就是使用scp传给各个节点

8、格式化namenode,只在namenode节点执行

hdfs namenode -format

9、以下测试单个启动方式:

启动namenode,在1号机器上(ip:131)启动,启动脚本在/usr/local/hadoop-2.7.7/sbin/

 hadoop-daemon.sh start namenode

通过jps命令查看是否启动完成

还可以通过页面的方式查看

ip:50070

启动其他3个datanode

hadoop-daemon.sh start datanode

我之前配置的ip,后面启动成功后又改为hostname,启动节点会失败,需要将/home/hadoop/hadoopdb/tmp文件夹下的文件删除后重新启动。

10、还可以通过hadoop提供的脚本一步启动

在sbin目录下的slave中添加datanode

hadoop2
hadoop3
hadoop4

然后配置ssh免密登录

生成秘钥

ssh-keygen 

分发到本地和远程

ssh-copy-id hadoop1
ssh-copy-id hadoop2
ssh-copy-id hadoop3
ssh-copy-id hadoop4

然后通过sbin下的

 start-all.sh

可以直接全部启动,同样的,全部关闭就是stop-all.sh脚本直接执行就可以

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值