搭建分布式Hadoop

1. 安装虚拟机

virtualbox和centos6.9
Centos6.9_x64百度网盘地址:https://pan.baidu.com/s/11RDISh4yB36lVcX_RROSdw
Mac版本的VirtualBox百度网盘下载:https://pan.baidu.com/s/1MaGt8HHP-QSxnkYaDCnQzg
JDK1.7_x64百度网盘下载:https://pan.baidu.com/s/1synxei5fFqsc29BV4RWHjg
Hadoop2.5.2百度网盘下载:https://pan.baidu.com/s/1pNX4hJge8m1DnXm1NOZ8xw

1、网卡配置设置成桥接网卡;

关闭防火墙service iptables stop
永久关闭防火墙关机重启:chkconfig iptables off
关闭SELinux, 将SELINUX设置为disabled

vim /etc/selinux/config

2、Onboot

/etc/sysconfig/network-scripts/ifcfg-eth0文件中的onboot设置为yes

3、配置hosts

192.168.3.170 node1
192.168.3.169 node2
192.168.3.168 node3
192.168.3.167 node4

复制虚拟机后操作

1、修改hostname/etc/sysconfig/network/etc/hosts

2、修改MAC地址/etc/sysconfig/network-scripts/ifcfg-eth0

3、删除/etc/udev/rules.d/70-persistent-net.rules,然后重启reboot

分配四台虚拟机

虚拟机名称 NameNode SecondaryNameNode DataNode
node1 True
node2 True True
node3 True
node4 True

其中分配node1为NameNode;node2为SecondaryNameNode和DataNode;node3和node4为DataNode。

2、 时间同步

时间可以从网上搜索ntp服务器(http://www.ntp.org.cn/pool.php)

$ yum install ntp -y
$ ntpdate -u [URL]

3、 安装jdk1.7

 rpm -ivh jdk-7u67-linux-x64.rpm

在/etc/profile/配置JAVA_HOME

export JAVA_HOME=/usr/lib/jvm/jre-1.7.0-openjdk/
export PATH=$PATH:$JAVA_HOME/bin

4、配置免秘钥

node1 到node1-node4

# node1上生成id_dsa.pub公钥文件
ssh-keygen
# node1自身免秘钥
ssh-copy-id root@node1
# 发送到node2-node4
ssh-copy-id root@node2
ssh-copy-id root@node3
ssh-copy-id root@node4

5、 node1上传解压Hadoop

# 解压hadoop至home
tar -zxvf hadoop-2.5.2.tar.gz -c /home
# 在/etc/profile中配置
export HADOOP_HOME=/home/hadoop-2.5.2
export PATH=$PATH:$HADOOP_HOME/bin

6、 修改配置文件

6.1 hadoop-env.sh中的JAVA_HOME

​ export JAVA_HOME=/usr/java/jdk1.7.0_67

6.2 core-site.xml

 <configuration>
            <property>
                <name>fs.defaultFS</name>
                <value>hdfs://node1:9000</value> <!-- 配置NN的ip和端口 -->
            </property>
            <property>
                <name>hadoop.tmp.dir</name>
                <value>/opt/hadoop</value> <!-- 配置hadoop的临时目录 -->
            </property>
        </configuration>

6.3 hdfs-site.xml

<configuration>
            <property>
                <name>dfs.replication</name>
                <value>3</value> <!-- 配置block默认副本数 -->
            </property>
            <property>
                <name>dfs.namenode.secondary.http-address</name>
                <value>node2:50090</value><!-- 配置SNN的web-UI端口 -->
            </property>
        </configuration>

6.4 手动创建masters文件,指定SNN

位于$HADOOP_HOME/etc/hadoop/

node2

6.5 手动创建slaves文件,指定DN

位于$HADOOP_HOME/etc/hadoop/

node2
node3
node4

7、 同步配置文件

删除share/doc可以减少文件占用

从node1中scp至node2-4

8、格式化NN

$ hdfs namenode -format

9、启动start-dfs.sh

$ start-dfs.sh

10、测试是否成功

访问web-ui:http://node1:50070

访问SNN-web-ui:http://node2:50090

猜你喜欢

转载自blog.csdn.net/weixin_34041003/article/details/87429757
今日推荐