马士兵 day2_hdfs集群集中管理和hadoop文件操作

day2_hdfs集群集中管理和hadoop文件操作

启动四台机器

  • master:hadoop-daemon.sh start namenode
  • slave:hadoop-daemon.sh start datanode

观察集群配置情况:

  • 终端查看:hdfs dfsadmin -report | more

  • 浏览器查看:http://192.168.56.100:50070

web界面观察集群运行情况:netstat -ntlp

关闭集群:hadoop-daemon.sh stop namenode hadoop-daemon.sh stop datanode

对集群进行集中管理 vim /usr/local/hadoop/etc/hadoop/slaves

# 删去了原有的localhost,不删估计也行
# 编辑内容如下
slave1
slave2
slave3

使用start-dfs.sh启动集群

  • 需要输入每个节点的密码,对slave进行远程登录

  • 在master上用ssh连接一台slave,需要输入密码slave的密码,ssh slave1,输入密码登陆成功后,使用exit指令退回到master。

免密ssh远程登录

  • 回到根目录 cd /root/.ssh
  • ls.ssh目录下的文件
  • 生成rsa算法的公钥和私钥 ssh-keygen -t rsa,进入 cd /root/.ssh可以看到以下文件生成
    • id_rsa私钥
    • id_rsa.pub公钥
  • 完成免密ssh登录:ssh-copy-id slaveX
    • 在slaveX机器的/root/.ssh目录下多出authorized_keys文件
  • 需要给本机也拷贝一份:ssh-copy-id master,因为本机执行也是远程登录
  • 使用stop-dfs.sh停止集群
  • start-dfs.sh测试免密登录是否成功

测试:

将hadoop的安装文件put到hadoop上的操作:hadoop fs -put ./hadoop-2.7.3.tar.gz /

  • 注意当前目录为 /usr/local/

  • vim /usr/local/hadoop/etc/hadoop/hdfs-site.xmlreplication属性修改为2

  • 为了方便测试,同时需要修改另外一个参数dfs.namenode.heartbeat.recheck-interval,这个值默认为300s,将其修改成10000,单位是ms,这个参数是定期间隔时间后检查slave的运行情况并更新slave的状态。

<configuration>
    <property>
        <name>dfs.replication</name>  
        <value>2</value>
    </property>
    <property>
        <name>dfs.namenode.heartbeat.recheck-interval</name>
        <value>10000</value>
   </property>
</configuration>
  • stop-dfs.sh

  • start-dfs.sh

  • 将jdk put到hadoop上:hadoop fs -put jdk.rmp /

  • 关闭slave3:hadoop-daemon.sh stop datanode

修改本机上的hosts文件,通过名字来访问集群web界面

  • vim /etc/hosts
# 编辑如下内容
192.168.56.100 master
192.168.56.101 slave1
192.168.56.102 slave2
192.168.56.103 slave3
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。