CentOs7 minimal 安装Hadoop

前几天参考了hadoop.apache.org的文档以及csdn学院上的一个视频,在一个破旧刀片机上安装了hadoop,暂且把流程做个记录。

由于刀片机好久没用了,所以首先做的是安装操作系统。发现一共4台刀片,每个刀片只有200多G的硬盘空间,真是好小。安装重启过程中又发现原来每个刀片配置了2个286G的硬盘并且做了raid1,为了进行空间扩容,果断把打算做datanode用的刀片改成raid0,做namenode的刀片继续用raid1.不过其中一台datanode坏了一块硬盘,所以只好继续用raid1.于是最后结果是2台raid0刀片,2台raid1刀片。

分区时给/目录只分配了50G左右,绝大部分空间分配给了/hdfs目录,这里也可以设置为其他的想要存储hadoop数据文件的目录​

安装完操作系统后,把namenode的机器命名为hadoop0,datanode机器命名为1、2、3、4,并修改了各个机器的/etc/hosts文件把对其他机器的ip解析加进去。按照官方文档要求,安装了jdk和rsync​,并且用ssh-keygen制作了免密码登陆的验证文件,按照文档要求分别部署在各个机器的/root/.ssh/里面。

修改了hadoop里面的etc/hadoop/core-site.html文件,增加了下面这段:其实就是指定了​hdfs的入口,namenode的ip。

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

​接着修改hdfs-site.xml,用类似上面的格式,设置了下面几个参数

<property>
    <name>dfs.name.dir</name>  //namenode存储文件的路径
    <value>/hdfs/namenode</value>
</property>

<property>
    <name>dfs.data.dir</name> //datanode存储文件的路径
    <value>/hdfs/datanode</value>
</property>

<property>
    <name>dfs.tmp.dir</name>  //临时文件路径
    <value>/hdfs/tmp</value>
</property>

<property>
    <name>dfs.replication</name>  hdfs内文件备份数目,必须大于1
    <value>2</value>
</property>                     

接着修改slaves这个文件,这个文件定义了哪些节点为datanode节点,把hadoop1-3加进去就ok了~。

之后把hadoop复制到所有的节点上,在namenode上执行hadoop文件夹里的sbin/start-dfs.sh​,就可以启动hdfs了

之后理论上通过http://hadoop0/50070就可以看到hdfs的状态了​。但是这时候我却无法访问这个网址,后来发现是iptables把端口封掉了。关掉namenode上面的iptables的规则后,这个网址可以访问了,但是却只有namenode的信息,看不到datanode,而datanode上面的hadoop进程却存在。这时依然是iptables的问题,导致datanode和namenode无法通信。关掉所有datanode上面的iptables的规则后,重启hadoop,终于正常了。接下来就可以用命令行来放几个文件上去进行测试了~

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值