1 通过log文件查看
cd ${HADOOP_INSTALL}/logs
cat hadoop-ubuntu-namenode-bogon.log ; cat hadoop-ubuntu-namenode-bogon.out ///查看namenode的日志
cat hadoop-ubuntu-datanode-bogon.log ; cat hadoop-ubuntu-datanode-bogon.out
2 通过web UIs查看日志或者集群情况
http://localhost:50070/ ///for the namenode,可以在宿主机通过IP+端口号访问
http://localhost:8088/ ///for the resource manager,只能在本机访问,hadoop集群信息
http://localhost:19888/ ///for the history server
可以看到有端口,必然对应有侦听
netstat -lnpt
获取到虚拟机IP后,也可以在宿主机访问http://192.168.64.130:50070/
Overview里面localhost:8080为namenode的对外开放端口,用于与datanode进行连接
Datanodes里面50010为datanode与namenode进行交互的端口
必然涉及到socket编程,hadoop用的是netty框架,可以进到hadoop的安装目录下查看一下是不是有netty的jar包(cd ${HADOOP_INSTALL} find . | grep netty)
打开utilities,Browse the file system,输入/后可以看到整个hdfs文档目录及文件,目录是没有副本的,文件的副本数根据配置,128MB一个快,文件太大就会切割成多个块
hadoop fs -ls -R hdfs://hocalhost/ 等同于hadoop fs -ls -R / 等同于hadoop fs -ls -R hdfs:/ ///以hdfs协议查看文件目录
hadoop fs -ls -R file:/ ///以file:/协议查看文档,结果看到的是本地文档目录结构
查看log文件(重要),以后出现很多错误都要从此处查找
1 通过log文件查看
cd ${HADOOP_INSTALL}/logs
cat hadoop-ubuntu-namenode-bogon.log ; cat hadoop-ubuntu-namenode-bogon.out ///查看namenode的日志
cat hadoop-ubuntu-datanode-bogon.log ; cat hadoop-ubuntu-datanode-bogon.out
2 通过web UIs查看日志或者集群情况
http://localhost:50070/ ///for the namenode,可以在宿主机通过IP+端口号访问
http://localhost:8088/ ///for the resource manager,只能在本机访问,hadoop集群信息
http://localhost:19888/ ///for the history server
可以看到有端口,必然对应有侦听
netstat -lnpt
获取到虚拟机IP后,也可以在宿主机访问http://192.168.64.130:50070/
Overview里面localhost:8080为namenode的对外开放端口,用于与datanode进行连接
Datanodes里面50010为datanode与namenode进行交互的端口
必然涉及到socket编程,hadoop用的是netty框架,可以进到hadoop的安装目录下查看一下是不是有netty的jar包(cd ${HADOOP_INSTALL} find . | grep netty)
打开utilities,Browse the file system,输入/后可以看到整个hdfs文档目录及文件,目录是没有副本的,文件的副本数根据配置,128MB一个快,文件太大就会切割成多个块
hadoop fs -ls -R hdfs://hocalhost/ 等同于hadoop fs -ls -R / 等同于hadoop fs -ls -R hdfs:/ ///以hdfs协议查看文件目录
hadoop fs -ls -R file:/ ///以file:/协议查看文档,结果看到的是本地文档目录结构
搭建完全分布式hadoop集群
1、安装java
2、创建user
略
3、安装hadoop
略
4、配置SSH
略
5、格式化
略
6、启动进程
start-dfs.sh
start-yarn.sh
7、创建目录
8、配置hadoop
除了各种伪分布式配置的XML文档外,最重要的一个是slaves纯文本文件,一行一个机器,会运行datanode和nodemanager
伪分布式下的slaves写入的就是localhost
a)克隆虚拟机4台, 用hostname查看虚拟机的主机名,修改各主机名
su root
nano /etc/hostname
b)
c)配置hadoop配置文件
${hadoop_install}etc/hadoop/*-site.xml
<!-- core-site.xml -->
<configuration>
<property>
<name>fs.defaultFS</name>
<!--url:protocal(协议如hdfs或file )+host+port+path-->
<value>hdfs://localhost/</value> ///此处的localhost改为namenode主机名或者IP地址,一般主机名即可
</property>
</configuration>
<?xml version="1.0"?>
<!-- hdfs-site.xml -->
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value> ///此处的1改为3
</property>
</configuration>
<?xml version="1.0"?>
<!-- mapred-site.xml -->
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
<?xml version="1.0"?>
<!-- yarn-site.xml -->
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>localhost</value> ///此处改为namenode的主机名
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
注意修改下面的文件
<!--slaves -->
s200
s300
s400
<!--/etc/hosts -->
开机克隆机,收集到各ip地址,写一份hosts文件,scp到各个主机
d)远程复制/etc/hosts到远程主机的/etc/下
scp hosts root@s200:/etc/