此页面包含了以下主题:
概观
在滚动升级过程,升级MAPR软件的一个节点的时间,使集群作为一个整体在整个过程中保持运行。每个节点上的文件服务器服务处于脱机状态,而包升级,但其缺乏足够短群集不会引发下复制的报警数据。
滚动升级过程如下下图所示的步骤。在图中,每一个表格单元格代表一个节点上运行的服务。例如,Ŧ代表运行MAPR现有版本的一个TaskTracker必须的服务,和T'代表的TaskTracker必须服务升级到新的版本。的MAPR文件服务器服务被假设为每一个节点上运行,并且它被提升的同时作为TaskTracker必须。
规划节点顺序
在开始升级之前计划节点的顺序。每个节点上运行的特定服务,决定了为了升级。运行节点主动 JobTracker的是特别感兴趣的,因为它可以随时间而改变。
您将升级的节点按以下顺序:
- 升级动物园管理员对所有ZooKeeper的节点。这将建立一个稳定的动物园管理员法定人数的新版本,将通过升级过程的其余部分仍然有效。
- 在所有CLDB节点升级MAPR包。升级后的CLDB节点可以同时支持现有的和文件服务器,使所有文件服务器留在整个服务升级的新版本。
- 上一半的节点,包括所有的JobTracker节点升级MAPR包除了活性JobTracker的节点。这一步升级文件服务器,TaskTracker必须及(如存在)JobTracker的新版本。
- 升级活动JobTracker的节点。这个节点标志着中途点的升级。停止活动的JobTracker的(运行现有版本)会导致群集故障转移到备用JobTracker的(在运行新版本)。在这个交叉点,所有新的TaskTracker变得活跃。所有现有版本的TaskTracker变得不活跃,因为他们无法从新JobTracker的接受任务。
- 在集群中的所有剩余节点升级MAPR包。集群的MapReduce容量的增大与被升级的每一个TaskTracker必须节点。
展望节点一个节点地具有以下效果:
- 你避免影响高可用性(HA)服务,如CLDB和JobTracker的,通过网上留下尽可能多的冗余节点尽可能在整个升级过程。
- 你避免触发侵略性的数据复制(或使某些数据完全不可用),这可能会导致如果有太多的文件服务器脱机一次。集群报警VOLUME_ALARM_DATA_UNDER_REPLICATED可能触发当一个节点的文件服务器脱机。默认情况下,群集将不会开始复制数据数分钟,它允许每个节点的升级过程中不会产生任何负担的复制完成。每个节点宕机时间为1分钟左右。
为了找到当前正在运行的活动的JobTracker的节点
开始升级节点前不久,确定其中的有效JobTracker的运行。下面的命令列出了每个节点上运行的主动服务。在JobTracker的
服务将出现在一个节点上。
寻找到动物园管理员和CLDB正在运行
请使用下面的命令列出哪些节点都配置了动物园管理员和CLDB服务。
该节点listcldbzks
命令不是之前MAPR 2.0版本。
为什么节点顺序事项
Hadoop和的MAPR软件的以下几个方面是在为什么节点顺序问题的根源升级时。
- 整个升级过程中保持一个动物园管理员法定人数是至关重要的。较新版本的动物园管理员的向后兼容。因此,我们升级动物园管理员包第一个拿到这一步出的方式,同时确保整个升级的其余部分稳定的法定人数。
- 较新版本的CLDB服务可以识别旧版本的文件服务器服务。相反的是不正确的,但是。因此,在升级的节点(也更新了文件服务器的节点上),这两个升级文件服务器和文件服务器存在的CLDB服务后,仍然可以访问CLDB。
- MapReduce的二进制文件和文 件系统的二进制文件安装在同一时间,而不能分离。当您升级
MAPR -文件服务器
包,二进制文件MAPR-TaskTracker必须
和MAPR-JobTracker的
也得到安装,反之亦然。
移动CLDB节点的JobTracker的服务关闭
如果你还没有这样做的话为准备升级,移动JobTrackers非CLDB节点的一部分。这是一个制备步骤,以容纳一个事实,即MAPR安装程序不能独立的JobTracker的升级CLDB二进制文件。看移动JobTrackers关闭CLDB节点在准备升级的详细信息。
升级动物园管理员包上的所有ZooKeeper的节点
升级MAPR -动物园管理员
在配置为运行ZooKeeper的服务的所有节点上的新版本。升级一个节点的时间,使一个动物园管理员法定人数整个过程保持在任何时候。
-
停止ZooKeeper的。
-
升级
MAPR-饲养员
包。在RedHat和CentOS ...在Ubuntu上...在SUSE ... -
重新启动ZooKeeper的。
-
验证法定地位,以确保该服务已启动。
升级一半的节点,一个接一个,直至活动JobTracker的
现在,您将开始在节点上升级包,继续一个节点的时间。
执行以下步骤,一次一个节点,升级你的计划订单下,直到您已升级一半的集群中的节点。不升级主动 JobTracker的节点。
-
停止监狱长:
- 升级如存在以下软件包:
MAPR-CLDB
MAPR核心
MAPR - 文件服务器
MAPR-HBase的,<VERSION>
MAPR-JobTracker的
MAPR度量
MAPR-NFS
MAPR-TaskTracker必须
-
MAPR-Web服务器
在RedHat和CentOS在Ubuntu在SUSE
-
验证成功的安装的软件包。确认安装过程中没有错误,并检查
/选择/ MAPR / MapRBuildVersion
包含预期值。例如: -
如果您要升级到MAPR版本2.1.3或更高版本,运行
upgrade2maprexecute
造就集群,以应用更改MAPR与交互之前脚本sudo的
。 -
启动监狱长:
-
验证节点识别CLDB主人,而
maprcli节点列表
预期命令返回的结果。例如: - 复制上演配置文件的新版本
的/ opt / MAPR / conf目录
,如果你创造了他们的一部分准备升级。
升级所有剩余节点,与Active JobTracker的开始
在这一点上,一半在集群中的节点被更新。在现有(旧)JobTracker的仍在运行,只有现有的TaskTracker活跃。当您升级活动JobTracker的节点,你会停止活动JobTracker的,和优美的故障转移事件将激活待机JobTracker的。在新的 JobTracker的运行新版本,因此发出的任务只有新的TaskTracker。现有的TaskTracker将成为非活动状态,直到您将它们升级。
从活动JobTracker的节点开始,请升级你的计划订单,并继续提升集群中的其余节点。使用一节中列出的相同指示#升级一半的节点,一个接一个,直至活动JobTracker的。
升级最后,积极JobTracker的之后,验证了新的JobTracker的是积极的。
此时,MAPR包已经升级所有节点上。您准备配置集群为新版本。