Hadoop之——分布式集群安装过程简化版
转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46352315
1.hadoop的分布式安装过程
1.1 分布结构
主节点(1个,是hadoop0):NameNode、JobTracker、SecondaryNameNode
从节点(2个,是hadoop1、hadoop2):DataNode、TaskTracker
主机名映射ip: vi /etc/sysconfig/network ip地址=主机名 比如 192.168.106.130=hadoop0
1.2 各节点又一次产生ssh加密文件
ssh-keygen -t rsa 一路回车
进入/root/.ssh文件夹 cat id_rsa.pub >> authorized_keys
1.3 编辑各个节点的/etc/hosts,在该文件里含有全部节点的ip与hostname的映射信息
1.4 两两节点之间的SSH免password登陆
ssh-copy-id -i hadoop1 把公钥复制到hadoop1主机
scp /root/.ssh/authorized_keys hadoop1:/root/.ssh/ 把authorized.keys文件复制到hadoop1主机下
1.5 把hadoop0的hadoop文件夹下的logs和tmp删除
1.6 把hadoop0中的jdk、hadoop目录拷贝到hadoop1和hadoop2节点
scp -r /usr/local/jdk hadoop1:/usr/local/
1.7 把hadoop0的/etc/profile拷贝到hadoop1和hadoop2节点,在目标节点中运行source /etc/profile
1.8 编辑hadoop0的配置文件slaves,改为从节点的hostname。各自是hadoop1和hadoop2,编辑hadoop1,hadoop2的配置文件masters,改为主节点的hostname。即hadoop0。注意:masters文件中配置的是secondarynamenode所在的主机名
1.9 格式化,在hadoop0节点运行hadoop namenode -format
1.10 启动,在hadoop0节点运行start-all.sh
改动hadoop配置文件
1.hadoop-env.sh
export JAVA_HOME=/usr/local/jdk/
2.core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://hadoop0:9000</value>
<description>change your own hostname</description>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/tmp</value>
</property>
</configuration>
3.hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>
4.mapred-site.xml
<configuration>
<property>
<name>mapred.job.tracker</name>
<value>hadoop0:9001</value>
<description>change your own hostname</description>
</property>
</configuration>
****注意:对于配置文件core-site.xml和mapred-site.xml在全部节点中都是同样的内容。
core-site.xml主要是配置namenode,mapred-site.xml主要是配置jobtracker,而namenode和jobtracker主要是分配到一台主机上,所以配置文件core-site.xml和mapred-site.xml在全部节点中都是同样的内容。
2.动态的添加一个hadoop节点
2.1 配置新节点的环境
2.2 把新节点的hostname配置到主节点的slaves文件里
2.3 在新节点,启动进程
hadoop-daemon.sh start datanode
hadoop-daemon.sh start tasktracker
2.4 在主节点运行脚本 hadoop dfsadmin -refreshNodes
3.动态的下架一个hadoop节点
3.1、在hadoop0上改动conf/hdfs-site.xml文件
<property>
<name>dfs.hosts.exclude</name>
<value>/usr/local/hadoop/conf/excludes</value>
</property>
3.2、确定要下架的机器
dfs.hosts.exclude定义的文件内容为,每一个须要下线的机器,一行一个。
3.3、强制又一次载入配置
#hadoopdfsadmin -refreshNodes
3.4、关闭节点
hadoopdfsadmin -report
能够查看到如今集群上连接的节点
正在运行Decommission,会显示:
DecommissionStatus : Decommission in progress
运行完成后,会显示:
DecommissionStatus : Decommissioned
3.5、再次编辑excludes文件
一旦完毕了机器下架,它们就能够从excludes文件移除了
登录要下架的机器,会发现DataNode进程没有了,可是TaskTracker依旧存在,须要手工处理一下
Hadoop之——分布式集群安装过程简化版的更多相关文章
- hadoop学习之hadoop完全分布式集群安装
注:本文的主要目的是为了记录自己的学习过程,也方便与大家做交流.转载请注明来自: http://blog.csdn.net/ab198604/article/details/8250461 要想深入的 ...
- Hadoop学习---CentOS中hadoop伪分布式集群安装
注意:此次搭建是在ssh无密码配置.jdk环境已经配置好的情况下进行的 可以参考: Hadoop完全分布式安装教程 CentOS环境下搭建hadoop伪分布式集群 1.更改主机名 执行命令:vi / ...
- Hadoop完全分布式集群安装
转载请注明原地址,谢谢! 本文目的是教大家配置Hadoop的完全分布式的集群,除了完全分布式还有两种分别是单节点和伪分布式部署.伪分布式只需要一台虚拟机,配置的东西也相对较少,大多用作代码调试,大家稍 ...
- 大数据学习之hadoop伪分布式集群安装(一)公众号undefined110
hadoop的基本概念: Hadoop是一个由Apache基金会所开发的分布式系统基础架构. 用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群的威力进行高速运算和存储. Hadoo ...
- 吴超老师课程---Hadoop的分布式集群安装
1.hadoop的分布式安装过程 1.1 分布结构 主节点(1个,是hadoop0):NameNode.JobTracker.SecondaryNameNode 从节点(2个,是 ...
- CentOS7+Hadoop2.7.2(HA高可用+Federation联邦)+Hive1.2.1+Spark2.1.0 完全分布式集群安装
1 2 2.1 2.2 2.3 2.4 2.5 2.6 2.7 2.8 2.9 2.9.1 2.9.2 2.9.2.1 2.9.2.2 2.9.3 2.9.3.1 2.9.3.2 2.9.3.3 2. ...
- HBase 1.2.6 完全分布式集群安装部署详细过程
Apache HBase 是一个高可靠性.高性能.面向列.可伸缩的分布式存储系统,是NoSQL数据库,基于Google Bigtable思想的开源实现,可在廉价的PC Server上搭建大规模结构化存 ...
- hadoop学习通过虚拟机安装hadoop完全分布式集群
要想深入的学习hadoop数据分析技术,首要的任务是必须要将hadoop集群环境搭建起来,可以将hadoop简化地想象成一个小软件,通过在各个物理节点上安装这个小软件,然后将其运行起来,就是一个had ...
- 超详细从零记录Hadoop2.7.3完全分布式集群部署过程
超详细从零记录Ubuntu16.04.1 3台服务器上Hadoop2.7.3完全分布式集群部署过程.包含,Ubuntu服务器创建.远程工具连接配置.Ubuntu服务器配置.Hadoop文件配置.Had ...
随机推荐
- java.net.BindException: Address already in use: JVM_Bind <null>:8080错误
今天打开myeclipse出现java.net.BindException: Address already in use: JVM_Bind <null>:8080错误 从网上搜了一下大 ...
- Postfix+Sasl+Courier-authlib+Dovecot+MySQL+extmail 邮件系统部署
# yum remove postfix ##删除系统自带postfix# userdel postfix# groupdel postdrop# groupadd -g 2525 postfix# ...
- Linux下kill命令
首先了解什么是信号:信号是进程级的中断请求,系统定义了30余种信号,kill是管理员用来发送信号的一种手段. 功能说明:删除执行中的程序或工作. 语 法:kill [-s <信息名称或编号> ...
- linux mint 自动挂载windows的D盘和E盘
终端敲udisksctl mount -p block_devices/sda后双击tab键补全分区,如下: 如我的E盘是sda6,执行 udisksctl mount -p block ...
- 百度之星初赛(A)——T1
小C的倍数问题 Problem Description 根据小学数学的知识,我们知道一个正整数x是3的倍数的条件是x每一位加起来的和是3的倍数.反之,如果一个数每一位加起来是3的倍数,则这个数肯定是3 ...
- quartz 调度
1.POI文件中导入包 <dependency> <groupId>org.quartz-scheduler</groupId> <artifact ...
- [LeetCode] Combinations 回溯
Given two integers n and k, return all possible combinations of k numbers out of 1 ... n. For exampl ...
- elasticsearch配置文件(elasticsearch.yml)详解
来自:http://www.searchtech.pro/articles/2013/02/18/1361194291548.html elasticsearch的config文件夹里面有两个配置文 ...
- 基于django rest framework的mock server实践
网上找了一下mock server的实现,发现python的基本都是基于flask来实现的,因最近在学django,就尝试用drf实现了下: A brief introduction of sui_m ...
- Python_Tips[1] -> 利用 Python 的字典实现 Switch 功能
利用 Python 的字典实现 Switch 功能 Python是没有switch语句的,当遇到需要实现switch语句的功能时,一般可以用if/else进行代替,但是还有一种更加简洁的实现方法,利用 ...