Hadoop之——分布式集群安装过程

转载请注明出处http://blog.csdn.net/l1028386804/article/details/46316051

集群的概念

计算机集群是一种计算机系统,它通过一组松散集成的计算机软件和/或硬件连接起来高度紧密地协作完成计算工作。

集群系统中的单个计算机通常称为节点,通常通过局域网连接。

集群技术的特点:

1、通过多台计算机完成同一个工作。达到更高的效率

2、两机或多机内容、工作过程等完全一样。如果一台死机,另一台可以起作用

集群模式安装步骤

      (在伪分布模式下继续)

  • 安装jdk
  • 关闭防火墙
  • 修改ip
  • 修改hostname
  • 设置ssh自动登录
  • 解压hadoop

Hadoop集群搭建准备

Step1:各服务器安装JDK6

上传jdk-6u24-linux-i586.bin到/home/

#cd /home/

#./jdk-6u24-linux-i586.bin

#mvjdk-6u24-linux-i586.bin jdk

#vi /etc/profile,在文件尾部添加

export JAVA_HOME=/home/jdk

export PATH=$JAVA_HOME/bin:$PATH

保存退出

#source/etc/profile

#java -version

Step2:各服务器的网络设置

修改机器名

#hostname <机器名>

#vi /etc/sysconfig/network

HOSTNAME=<机器名>     保存退出,重启

修改/etc/hosts

修改/etc/sysconfig/network-scripts/相应的网络配置

关闭防火墙

#service iptables stop

附录:

hosts文件参考:

192.168.1.240 hadoop0

192.168.1.241 hadoop1

192.168.1.242 hadoop2

192.168.1.243 hadoop3

ifcfg-eth0文件参考:

DEVICE="eth0"

BOOTPROTO="static"

ONBOOT="yes"

TYPE="Ethernet"

IPADDR=192.168.1.240

PREFIX=24

GATEWAY=192.168.1.1

C:\WINDOWS\system32\drivers\etc\hosts

Step3:SSH免密码登录

从namenode到本身及各datanode免密码登录

在各机器上执行

#ssh-keygen -b 1024 -t rsa 一路回车

在~/.ssh/生成文件id_rsa  id_rsa.pub

在namenode机器上执行:

#cd ~/.ssh/

#scp id_rsa.pub [email protected]<各datanode的IP>:/home

在各datanode机器上执行:

#cd /home/

#cat id_rsa.pub>>/root/.ssh/authorized_keys

 Hadoop运行过程中需要管理远端Hadoop守护进程,在Hadoop启动以后,NameNode是通过SSH(Secure Shell)来无密码登录启动和停止各个DataNode上的各种守护进程的同样原理,DataNode上也能使用SSH无密码登录到NameNode。

Step4:在namenode安装Hadoop

1.用软件上传hadoop-1.0.4.tar.gz到/home

#cp hadoop-1.0.4.tar.gz /home

2.解压文件

#cd /home

#tar -zxvf hadoop-1.0.4.tar.gz

#mv hadoop-1.0.4 hadoop

3.修改/etc/profile

#vi /etc/profile

export JAVA_HOME=/home/java

export HADOOP_HOME=/home/hadoop

exportPATH=$JAVA_HOME/bin:$PATH::$HADOOP_HOME/bin

保存退出

#source /etc/profile

Step5:修改Hadoop的配置文件

1.修改conf/hadoop-env.sh

export JAVA_HOME=/home/java

export HADOOP_HEAPSIZE=1024

export HADOOP_PID_DIR=/home/hadoop/pids

保存退出

2.配置conf/core-site.xml,增加以下内容

<property>

<name>fs.default.name</name>

<value>hdfs://hadoop0:9000</value>

</property>

<property>

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

<value>/home/hadoop/tmp</value>

</property>

3.配置conf/hdfs-site.xml

<property>

<name>dfs.replication</name>

<value>2</value>

</property>

<property>

<name>dfs.hosts.exclude</name>

<value>/home/hadoop/conf/excludes</value>

</property>

4.配置conf/mapred-site.xml

<property>

<name>mapred.job.tracker</name>

<value>hadoop0:9001/</value>

</property>

5、配置conf/masters

hadoop0

6、配置conf/slaves

hadoop1

hadoop2

hadoop3

7、复制hadoop到各datanode并修改

把hadoop0的hadoop目录、jdk目录、/etc/hosts、/etc/profile复制到hadoop1,hadoop2、hadoop3节点

#cd $HADOOP_HOME/..

#scp -r hadoop hadoop1:/home

#scp -r hadoop hadoop2:/home

#scp -r hadoop hadoop3:/home

8、启动/停止Hadoop集群

在hadoop0上

第一次启动Hadoop,必须先格式化namenode

#cd $HADOOP_HOME /bin

#hadoop namenode –format

启动Hadoop

#cd $HADOOP_HOME/bin

#./start-all.sh

如果启动过程,报错safemode相关的Exception

执行命令

# hadoop dfsadmin -safemode leave

然后再启动Hadoop

停止Hadoop

cd $HADOOP_HOME/bin

#./stop-all.sh

终端查看集群状态:

#hadoop dfsadmin -report

增加节点

1.修改新节点的/etc/hosts,增加namenode的主机名与IP

2.修改namenode的配置文件conf/slaves

添加新增节点的ip或host

3.在新节点的机器上,启动服务

#cd $HADOOP_HOME/bin

#./hadoop-daemon.sh start datanode

#./hadoop-daemon.sh start tasktracker

4.在NameNode节点执行

# hadoop dfsadmin  -refreshNodes

5.均衡block

在新节点上执行(如果是增加多个节点,只需在一个新节点)

#cd $HADOOP_HOME/bin

# ./start-balancer.sh

注意事项:

1. 必须确保slave的firewall已关闭;

2. 确保新的slave的ip已经添加到master及其他slaves的/etc/hosts中,反之也要将master及其他slave的ip添加到新的slave的/etc/hosts中

删除节点

1、在hadoop0上修改conf/hdfs-site.xml文件

<property>

  <name>dfs.hosts.exclude</name>

  <value>/usr/local/hadoop/conf/excludes</value>

</property>

2、确定要下架的机器

dfs.hosts.exclude定义的文件内容为,每个需要下线的机器,一行一个。

3、强制重新加载配置

#hadoopdfsadmin  -refreshNodes

4、关闭节点

hadoopdfsadmin -report

可以查看到现在集群上连接的节点

正在执行Decommission,会显示:

DecommissionStatus : Decommission in progress

执行完毕后,会显示:

DecommissionStatus : Decommissioned

5、再次编辑excludes文件

一旦完成了机器下架,它们就可以从excludes文件移除了

登录要下架的机器,会发现DataNode进程没有了,但是TaskTracker依然存在,需要手工处理一下

节点的安全机制

准许进入dfs.hosts/mapred.hosts

必须排除dfs.hosts.exclude/mapred.hosts.exclude

安全模式

         在分布式文件系统启动的时候,开始的时候会有安全模式,当分布式文件系统处于安全模式的情况下,文件系统中的内容不允许修改也不允许删除,直到安全模式结束。安全模式主要是为了系统启动的时候检查各个DataNode上数据块的有效性,同时根据策略必要的复制或者删除部分数据块。运行期通过命令也可以进入安全模式。在实践过程中,系统启动的时候去修改和删除文件也会有安全模式不允许修改的出错提示,只需要等待一会儿即可。        NameNode在启动的时候首先进入安全模式,如果datanode丢失的block达到一定的比例(1-
dfs.safemode.threshold.pct),则系统会一直处于安全模式状态即只读状态。 dfs.safemode.threshold.pct(缺省值0.999f)表示HDFS启动的时候,如果DataNode上报的block个数达到了 元数据记录的block个数的0.999倍才可以离开安全模式,否则一直是这种只读模式。如果设为1则HDFS永远是处于SafeMode。

hadoop dfsadmin-safemode enter | leave | get |wait

基准测试

hadoop-test-*.jar  TestDFSIO -write  -nrFiles 10 -fileSize  1000

hadoop-test-*.jar  TestDFSIO -read   -nrFiles 10 -fileSize  1000

Hadoop管理员常用命令

hadoop job –list  #列出正在运行的Job

hadoop job –kill <job_id> #kill job

hadoop fsck / #检查HDFS块状态,是否损坏

hadoop fsck / -delete #检查HDFS块状态,删除损坏块

hadoop dfsadmin –report #检查HDFS状态,包括DN信息

hadoop dfsadmin –safemode enter | leave

常见分布模式安装错误

         Namenode与Datanode是互相都可以ssh无密码访问

         在hosts文件中127.0.0.1 不要与hadoop0一起设置

时间: 2024-09-29 20:46:30

Hadoop之——分布式集群安装过程的相关文章

Hadoop之——分布式集群安装过程简化版

转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46352315 1.hadoop的分布式安装过程 1.1 分布结构 主节点(1个,是hadoop0):NameNode.JobTracker.SecondaryNameNode 从节点(2个,是hadoop1.hadoop2):DataNode.TaskTracker 1.2 各节点重新产生ssh加密文件 ssh-keygen -t rsa    一路回车 进入/root/.ssh

Hadoop完全分布式集群安装

转载请注明原地址,谢谢! 本文目的是教大家配置Hadoop的完全分布式的集群,除了完全分布式还有两种分别是单节点和伪分布式部署.伪分布式只需要一台虚拟机,配置的东西也相对较少,大多用作代码调试,大家稍微查阅资料,或者对我的配置进行一些删减,就可以实现伪分布式,所以我这里还是使用完全分布式,开了三台虚拟机,都只分配了1G,1核的默认内存,跑得无压力,所以你的笔记本大概需要4G+的内存,就可以完成这个实验. 基于Hadoop 2.x版本和1.x版本的巨大差异,而我更熟悉1.x版本,所以本次使用的Ha

hadoop3.0.0 分布式集群安装过程

1. 环境 主机名 ip 角色 hdp01 192.168.184.61 ResourceManager/NameNode/SecondaryNameNode hdp02 192.168.184.62 NodeManager/DataNode hdp03 192.168.184.63 NodeManager/DataNode (1个namenode 2个datanode) 2.准备工作 windows10(物理机系统) VMware12 workstation(虚拟机软件) centos7.0(

CentOS7+Hadoop2.7.2(HA高可用+Federation联邦)+Hive1.2.1+Spark2.1.0 完全分布式集群安装

1       VM网络配置... 3 2       CentOS配置... 5 2.1             下载地址... 5 2.2             激活网卡... 5 2.3             SecureCRT. 5 2.4             修改主机名... 6 2.5             yum代理上网... 7 2.6             安装ifconfig. 8 2.7             wget安装与代理... 8 2.8       

redis3.2.5 分布式集群安装+错误解决过程

redis3.2.5 分布式集群安装详细步骤 --(centos5.X-6.X _X64系统) 版本历史 时间 版本 说明 编写者 2015-06-5 1.0 redis3.0.2 分布式集群安装详细步骤 崔四超 2016-11-25 1.1 redis3.2.5 分布式集群安装详细步骤 崔四超 一: redis cluster介绍篇 1:redis cluster的现状 目前redis支持的cluster特性(已亲测): 1):节点自动发现 2):slave->master 选举,集群容错 3

超详细从零记录Hadoop2.7.3完全分布式集群部署过程

超详细从零记录Ubuntu16.04.1 3台服务器上Hadoop2.7.3完全分布式集群部署过程.包含,Ubuntu服务器创建.远程工具连接配置.Ubuntu服务器配置.Hadoop文件配置.Hadoop格式化.启动.(首更时间2016年10月27日) 主机名/hostname IP 角色 hadoop1 192.168.193.131 ResourceManager/NameNode/SecondaryNameNode hadoop2 192.168.193.132 NodeManager/

(转)ZooKeeper伪分布式集群安装及使用

转自:http://blog.fens.me/hadoop-zookeeper-intro/ 前言 ZooKeeper是Hadoop家族的一款高性能的分布式协作的产品.在单机中,系统协作大都是进程级的操作.分布式系统中,服务协作都是跨服务器才能完成的.在ZooKeeper之前,我们对于协作服务大都使用消息中间件,随着分布式系统的普及,用消息中间件完成协作,会有大量的程序开发.ZooKeeper直接面向于分布式系统,可以减少我们自己的开发,帮助我们更好完成分布式系统的数据管理问题. 目录 zook

HBase集群安装过程中的问题集锦

1.HRegionServer启动不正常 在namenode上执行jps,则可看到hbase启动是否正常,进程如下: [[email protected] bin]# jps26341 HMaster26642 Jps7840 ResourceManager7524 NameNode7699 SecondaryNameNode 由上可见,hadoop启动正常.HBase少了一个进程,猜测应该是有个节点regionserver没有启动成功. 进入节点slave1 ,执行jps查看启动进程: [[e

redis3.0.2 分布式集群安装详细步骤

redis3.0.2 分布式集群安装详细步骤 --(centos5.8 X64系统) 版本历史 时间 版本 说明 编写者 2015-06-5 1.0 redis3.0.2 分布式集群安装详细步骤 csc 一: redis cluster介绍篇 1:redis cluster的现状 目前redis支持的cluster特性(已亲测): 1):节点自动发现 2):slave->master 选举,集群容错 3):Hot resharding:在线分片 4):进群管理:cluster xxx 5):基于