史上最简单的Hadoop环境搭建

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/lyzx_in_csdn/article/details/79505519

hadoop-2.7.3版本
1、安装java环境
2、hadoop/etc/hadoop/hadoop-env.sh
>> JAVA_HOME = /root/java/jdk8
3、在命令行输入hadoop就会有提示信息,说明最基本的环境已经安装完成
4、配置namenode的节点信息 hadoop/etc/hadoop/core-site.xml

<configuration>
  <property>
    <name>fs.defaultFS</name>
    <value>hdfs://master:9000</value>
  </property>
  <property>
     <name>hadoop.tmp.dir</name>
     <value>/root/soft/hadoop/tempData</value>
  </property> 
</configuration>

  >> fs.defaultFS => 即告诉集群哪个机器是namenode
  >> hadoop.tmp.dir => hadoop工作时的临时文件
  
5、格式化namenode
>> hdfs namenode -format
6、发送hadoop文件夹到其他的节点上
>> scp -r hadoop [email protected]:`pwd`
7、开启hadoop集群
在master上启动namenode,在slave上启动datanode
>> (启动HDFS相关进程)hadoop-daemon.sh start|stop    namenode|datanode
8、验证节点是否启动成功了使用jps命令如果看到 namenode/datanode的信息就说明启动了对应的节点
>>以上就是HDFS集群


hdfs dfsadmin -report  可以查看活着的节点
netstat  
9、通过web界面观察hdfs文件系统的情况 http://192.168.29.160:50070
10、通过在每一台机器上执行 hadoop-daemon.sh start xxxnode 来启动对应的节点是在太麻烦
这个时候就可以使用start-all.sh但是在这之前还需要配置每个slave对应的机器
在hadoop/etc/hadoop 
现在可以使用start-all.sh(启动hdfs和yarn) 启动所有节点,通过stop-all.sh 关闭所有的节点 这样就实现了集中式的管理
>>start-dfs.sh 只启动hdfs

分开开启,常用语生产环境  

(启动yarn相关的进程)yarn-daemon.sh    start|stop    resourcemanager|nodemanager

11、操作hdfs
hadoop fs -ls /    查看根目录下的所有文件
hadoop fs -put locationFile destination    把一个本地文件放入HDFS文件系统
>> hadoop fs -put ./xx.tar.gz  / 把xx.tar.gz 放入HDFS的根目录
如果不会使用可以 敲hadoop fs 并回车

12、配置hdfs的备份的数量(下面表示备份数是2即每个block备份两块)

<property>
    <name>dfs.replication</name>
    <value>2</value>
</property>

>>冗余备份:即一个文件F(B2->Node1,B2->Node2,Node3) 当Node1宕机则Node会把会复制一份到Node3上
  关于云计算>>就是分布式计算
yarn
yarn也是主从结构一个ResourceManager带着多个NodeManager
当一个任务来了就向ResourceManager请求资源,然后ResourceManager将这个任务分配给具体的一个NodeManager来计算
一般情况下ResourceManager和HDFS的Namenode不在一台机器上,因为这两个逻辑节点都很费内存
而dataNode和NodeManager在一台机器上就不用把数据搬来搬去了


13、配置yarn  hadoop/etc/hadoop/yarn-site.xml 添加如下配置意在告诉集群yarn的ResourceManager是哪台机器

<property>
    <name>yarn.resourcemanager.hostname</name>
    <value>master</value>
</property>
<property>  
    <name>yarn.nodemanager.aux-services</name>  
    <value>mapreduce_shuffle</value>  
</property>  
<property>
    <name>yarn.nodemanager.auxservices.mapreduce.shuffle.class</name>
    <value>org.apache.hadoop.mapred.ShuffleHandler</value>
</property>


14、修改mapred-site.xml

<property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
</property>

15、通过start-yarn.sh就可以启动yarn yarn会读取slaves文件来知道ResourceManager管理者哪些NodeManager  (yarn和HDFS在逻辑上时可以分开启动的)
通过http://master:8088 就可以访问yarn的web页面,可以通过web页面查看当前运行的任务

猜你喜欢

转载自blog.csdn.net/lyzx_in_csdn/article/details/79505519
今日推荐