hadoop完全分布式的部署

1、先决条件

a) 至少三台虚拟机

b) 每台虚拟机关闭防火墙

c) 三台虚拟机的系统时间相差不能超过30

d) 每台虚拟机都需要安装好jdk1.7jdk的安装目录最好一致),配置好jdk的环境变量(vim ~/.bash_profile添加)

e) 完成主机名和IP的映射

  1. vim /etc/hosts*
  2. 添加三行代码

192.168.45.129 zlj02

192.168.45.131 my02

192.168.45.133 my01   

2、上传并解压hadoop-2.5.2*),删除hadoop-2.5.2/share/doc目录(里面文件太多,以后拷贝不方便)

3、修改配置文件vim /root/hadoop-2.5.2/etc/hadoop/hadoop-env.sh里的JAVA_HOME的环境变量为本虚拟机的JAVA_HOME的路径

4、配置hadoop的环境变量:vim ~/.bash_profile*)添加

export HADOOP_HOME=/root/hadoop-2.5.2

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

5、配置namenodevim /root/hadoop-2.5.2/etc/hadoop/core-site.xml

<configuration>

<!-- 配置ndfsnamenode节点 -->

<property>

        <name>fs.defaultFS</name>

        <value>hdfs://zlj02:9000</value>

    </property>

<property>

<!-- 指定元数据的位置 -->

<name>hadoop.tmp.dir</name>

<value>/opt/hadoop</value>

</property>

</configuration>

6、配置secondarynamenote

vim /root/hadoop-2.5.2/etc/hadoop/hdfs-site.xml

<!-- 指定ndfssecondarynamenode主机名 -->

<property>

<name>dfs.namenode.secondary.http-address</name>

<value>my01:50090</value>

</property>

<property>

<name>dfs.namenode.secondary.https-address</name>

<value>my01:50091</value>

</property>

7、指定datanode节点:vim /root/hadoop-2.5.2/etc/hadoop/slaves

datanode的所有主机名)

zlj02

my02

my01

8、设置远程免密登录:

a) 生成密钥:ssh-keygen

b) 拷贝主节点的公钥到所有节点中去。ssh-copy-id -i id_rsa.pub root@my01

9、复制上面带(*)的所有文件到其他虚拟机上 scp -r dir root@hosts

10、在各个虚拟机上执行:source ~/.bash_profile,加载配置文件

11、NameNode的机器下执行:hdfs namenode -format

posted @ 2018-04-10 10:36  llll1  阅读(31)  评论(0)    收藏  举报