Mapr升级方案(一)——离线升级

对于离线升级包升级过程遵循以下顺序。

  • 1。暂停作业
  • 2。停止群集服务
    • 2A。断开NFS安装和停止NFS服务器
    • 2B。停止蜂房和Apache HBase的服务
    • 2C。停止MAPR核心服务
  • 3。升级包和配置文件
    • 3A。升级或安装HBase的客户端MAPR表
    • 图3b。运行upgrade2maprexecute
  • 4。重新启动群集服务
    • 4A。重新启动MAPR核心服务
    • 图4b。运行简单的健康检查
    • 4C。设置新的集群版本
    • 4D。重新启动蜂房和Apache HBase的服务
  • 5。成功验证每个节点上

在集群中的所有节点上执行这些步骤。对于较大的集群,通常使用脚本和/或远程管理工具并行的所有节点执行这些步骤。

1。暂停作业

当集群中的下列顺序上定义了你的升级计划,停止活动开始升级包前:

  1. 通知利益相关者。
  2. 停止接受新的就业机会。
  3. 在以后的某个点,终止任何正在运行的作业。下面的命令可用于终止MapReduce工作,你可能还需要特定的命令来终止自定义应用程序。

    #hadoop的工作列表
    #hadoop的作业杀
    #hadoop的工作击杀任务

此时集群准备维修,但仍可运行。我们的目标是执行升级,并回到正常操作安全,尽快。

2。停止群集服务

以下序列将正常停止集群服务。当你完成后,集群将处于脱机状态。该maprcli本节中使用的命令可以在群集中的任何节点上执行。

2A。断开NFS安装和停止NFS服务器

使用下面的步骤来停止NFS服务。

  1. 从连接到它的所有客户,包括集群中的其他节点卸载MAPR NFS共享。这允许通过NFS访问集群中的所有进程断开连接正常。假设集群安装在/ MAPR

    #使用umount / MAPR
  2. 停止位置时运行的所有节点上的NFS服务:

    的nodes>-NFS站#maprcli节点服务节点
  3. 验证MAPR NFS服务器没有任何节点上运行。运行下面的命令,并确认NFS不包含任何节点上。

    #maprcli节点列表栏目SVC | grep的NFS

2B。停止蜂房和Apache HBase的服务

对于运行蜂巢或Apache HBase的节点上,停止这些服务,使他们当文件系统脱​​机,不打一个例外。停止服务顺序如下:

  1. HiveServer -该HiveServer运行作为一个节点上的Java进程。您可以使用太平绅士米找到,如果HiveServer是一个节点上运行,并使用KILL -9停止它。例如:

    #太平绅士米
    16704 RunJar / opt/mapr/hive/hive-0.10.0/lib/hive-service-0.10.0.jar org.apache.hadoop.hive.service.HiveServer
    32727 WardenMain的/ opt / MAPR / conf /中warden.conf
    2508 TaskTracker必须
    17993 JPS-M
    #使用kill -9 16704
  2. HBase的主人 -对于运行在HBase的主服务的所有节点上,停止HBase的服务。首先停止HBase的主人,它不会检测到单个regionservers后停止,因此不会触发任何故障转移反应。
    1. 使用以下命令找到运行HBase的主节点的服务,并停止它。

      #maprcli节点列表栏目SVC
      的nodes>-hbmaster停止#maprcli节点服务节点
    2. 您可以尾巴上运行的HBase的主节点的HBase的主日志文件来跟踪关机进步,如下面的例子。该MAPR在日志文件名 ​​匹配群集的运行服务MAPR用户。

      #尾/ opt/mapr/hbase/hbase-0.92.2/logs/hbase-mapr-master-centos55.log
      行...删除...
      2013-04-15 08:10:53,277 INFO org.apache.hadoop.hbase.master.LoadBalancer:跳绳负载平衡,因为平衡群集,服务器= 3 =地区平均3 = 1.0 mostloaded = 2 leastloaded = 0
      周一4月15日8时14分14秒PDT 2013杀害主
  3. HBase的regionservers -停止HBase的法师后不久,停止所有节点上的HBase的regionservers。
    1. 使用以下命令找到运行HBase的Regionserver业务节点,并停止它。它可以采取regionserver几分钟才能关机,这取决于清除任务它必须做。

      #maprcli节点列表栏目SVC
      的nodes>-hbregionserver停止#maprcli节点服务节点
    2. 可以尾巴上运行的HBase的regionserver跟踪关机进展,如下面的示例节点的regionserver日志文件。

      #尾/ opt/mapr/hbase/hbase-0.92.2/logs/hbase-mapr-regionserver-centos58.log
      行...删除...
      2013-04-15 08:15:16,583 INFO org.apache.hadoop.hbase.regionserver.HRegionServer:停止服务器centos58,60020,1366023348995;动物园管理员连接关闭。
      2013-04-15 08:15:16,584 INFO org.apache.hadoop.hbase.regionserver.HRegionServer:regionserver60020退出
      2013-04-15 08:15:16,584 INFO org.apache.hadoop.hbase.regionserver.ShutdownHook:启动FS关闭钩子的线程。
      2013-04-15 08:15:16,585 INFO org.apache.hadoop.hbase.regionserver.ShutdownHook:关闭钩子完成。

      如果regionserver的日志不显示进度和进程不会终止,您可能必须手动杀死它。例如:

      #使用kill -9`猫的/ opt / MAPR /日志/ HBase的 - MAPR-regionserver.pid`

2C。停止MAPR核心服务

按以下顺序停止MAPR核心服务。

  1. 注意:安装CLDB和动物园管理员服务的地方,如果你还不知道。

    #maprcli节点列表的列主机名,CSVC
    centos55 TaskTracker必须,hbmaster,CLDB,文件服务器,hoststats 10.10.82.55
    centos56 TaskTracker必须,hbregionserver,CLDB,文件服务器,hoststats 10.10.82.56
    ...更多节点...
    centos98文件服务器,动物园管理员10.10.82.98
    centos99文件服务器,Web服务器,动物园管理员10.10.82.99
  2. 停止在安装了CLDB所有节点监狱长:

    #服务MAPR-监狱长站
    停止WARDEN
    希望停止不是由监狱长开始MAPR - 核心流程
  3. 停止所有剩余节点监狱长:

    #服务MAPR-监狱长站
    停止WARDEN
    希望停止不是由监狱长开始MAPR - 核心流程
  4. 停止在安装它的所有节点的动物园​​管理员:

    #服务MAPR-饲养员停止
    JMX默认情况下启用
    使用配置:/ opt/mapr/zookeeper/zookeeper-3.4.5/conf/zoo.cfg
    停止饲养员... 已停止

此时集群中完全离线。maprcli命令将不起作用,而基于浏览器的MAPR控制系统将无法使用。

3。升级包和配置文件

请执行下列步骤升级MAPR核心包的每个节点上。

 

  1. 使用以下命令来确定哪个软件包安装在节点上: 
    • 在Red Hat:yum安装列表“MAPR-*'
    • 在Ubuntu:dpkg的-名单“MAPR-*'
    • 在SUSE:zypper的SE-I MAPR
     
  2. 升级以下软件包上,他们存在的所有节点:
    • MAPR-CLDB
    • MAPR核心
    • MAPR - 文件服务器
    • MAPR-HBase的-  -您必须指定一个符合所使用的应用程序的HBase的API版本的版本。见#3A。升级或安装HBase的客户端MAPR表了解详情。
    • MAPR-JobTracker的
    • MAPR度量
    • MAPR-NFS
    • MAPR-TaskTracker必须
    • MAPR-Web服务器
    • MAPR-饲养员
    • MAPR-ZK-内部

      图标

      不要使用通配符,如“ MAPR-* “ 升级所有MAPR包,这可能会错误地包括Hadoop的生态系统组成部分,如MAPR-蜂房MAPR猪

    • 在Red Hat:
      yum的更新MAPR-CLDB MAPR核心MAPR -文件服务器MAPR-HBase的- MAPR-JobTracker的MAPR度量MAPR-NFS MAPR-TaskTracker必须MAPR-web服务器MAPR-饲养员MAPR-ZK-内
    • 在Ubuntu:apt-get的安装MAPR-CLDB MAPR核心MAPR -文件服务器MAPR-HBase的= MAPR-JobTracker的MAPR度量MAPR-NFS MAPR-TaskTracker必须MAPR-web服务器MAPR-饲养员MAPR-ZK-内
    • 在SUSE:zypper的更新MAPR-CLDB MAPR核心MAPR -文件服务器MAPR-JobTracker的MAPR度量MAPR-NFS MAPR-TaskTracker必须MAPR-web服务器MAPR-饲养员MAPR-ZK-内
     
  3. 验证是否已成功在所有节点上安装的软件包。确认安装过程中没有错误,并检查/选择/ MAPR / MapRBuildVersion 。包含预期值
    示例:
    #猫的/ opt / MAPR / MapRBuildVersion
    2.1.2.18401.GA
     
  4. 复制上演配置文件的新版本的/ opt / MAPR / conf目录,如果你创造了他们的一部分准备升级。

3A。升级或安装HBase的客户端MAPR表

如果您是从3.0之前的版本MAPR的升级,你将使用MAPR表,您必须安装(或升级)的MAPR HBase的客户端。如果你是在Apache HBase的组件升级为你的整体升级计划的一部分,那么MAPR HBase的客户端将得到升级作为这一进程的一部分。参见升级HBase的。

访问表数据在地图-FS的所有节点必须具有MAPR HBase的客户端安装。这通常包括所有的TaskTracker必须节点和将要访问的数据在MAPR表中任何其他节点。包的名称是MAPR-HBase的- ,其中匹配的HBase的API版本支持,如0.92.2和0.94.5。这个版本对使用的MAPR-FS文件服务器底层的存储格式没有影响。如果您对HBase的API的特定版本编写的现有应用程序,使用相同的版本安装MAPR HBase的客户端软件包。如果您正在开发新的应用程序使用MAPR表完全是用MAPR HBase的客户端可用的最高版本。

  • 在Red Hat:
    yum的安装MAPR-HBase的,
  • 在Ubuntu:
    apt-get的安装MAPR-HBase的=
  • 在SUSE:
    zypper的安装MAPR-HBase的,

图3b。运行upgrade2maprexecute

如果您是从以 ​​前版本的MAPR升级到2.1.3或更高版本,运行/ opt/mapr/server/upgrade2maprexecute每个节点上的脚本,安装软件包之后,但带来了群集之前,为了申请变更MAPR的与互动sudo的

4。重新启动群集服务

当你在所有节点上升级包,在所有节点上执行下列顺序重新启动集群。

4A。重新启动MAPR核心服务

  1. 运行configure.sh使用下面的选项组中的一个脚本:
    • 如果升级使用过程中对节点的服务保持不变-R选项,如下面的例子。

      #/选择/ MAPR /服务器/ configure.sh-R
      节点安装配置:文件服务器NFS TaskTracker必须
      /选择/ MAPR /日志/ configure.log:日志可以在这里找到
    • 如果您添加或删除程序包的节点上,使用-C-Z选项重新配置预期的服务的节点上,如下面的例子。

      #/选择/ MAPR /服务器/ configure.sh-C -Z [-N ]
      节点安装配置:文件服务器NFS TaskTracker必须
      /选择/ MAPR /日志/ configure.log:日志可以在这里找到
  2. 如果动物园管理员安装在节点上,启动它:

    #服务MAPR,饲养员开始
    JMX默认情况下启用
    使用配置:/ opt/mapr/zookeeper/zookeeper-3.4.5/conf/zoo.cfg
    启动动物园管理员... 入门
  3. 启动监狱长:

    #服务MAPR-监狱长开始
    启动监狱长,记录到/ opt / MAPR /日志/ warden.log。
    对于诊断看的/ opt / MAPR / /日志/为createsystemvolumes.log,warden.log和配置的服务日志文件

此时,MAPR核心服务上的所有节点上运行。

图4b。运行简单的健康检查

运行仅针对文件系统和MapReduce服务,简单的健康检查。解决可能已经提出了在这一点上的任何问题或警示。

4C。设置新的集群版本

在所有节点上重新启动MAPR服务后,发出集群来更新并验证配置的版本中的任何节点上运行以下命令。安装MAPR软件的版本是保存在文件中的/ opt / MAPR / MapRBuildVersion

#maprcli配置保存值{mapr.targetversion:“`猫的/ opt / MAPR / MapRBuildVersion`”}

您可以验证该命令的工作,如下面的例子。

#maprcli配置负载键mapr.targetversion
mapr.targetversion
2.1.2.18401.GA

4D。重新启动蜂房和Apache HBase的服务

对于安装与配置单元和/或Apache HBase的所有节点,重新启动该服务。

  1. HBase的硕士HBase的Regionservers -首先启动HBase的主人服务,紧接着regionservers。在群集中的任何节点上,使用这些命令来启动HBase的服务。

    的nodes>-hbmaster启动#maprcli节点服务节点
    的nodes>-hbregionserver启动#maprcli节点服务节点

    您可以尾巴在特定节点上的日志文件来跟踪状态。例如:

    #尾/ opt/mapr/hbase/hbase- / logs/hbase- - 硕士 - 。日志
    #尾/ opt/mapr/hbase/hbase- / logs/hbase- -regionserver-。日志
  2. HiveServer -本HiveServer或(HiveServer2)过程必须在安装配置单元的节点上启动。初创的方法取决于您是否使用HiveServer或HiveServer2。见与蜂房工作获取更多信息。

5。成功验证每个节点上

下面是一些简单的检查,以确认该包已成功升级:

  • 所有预期的节点出现在一个群集节点列表,和预期的服务是每个节点上配置。例如:

    #maprcli节点列表的列主机名,CSVC
    主机名configuredservice IP
    centos55 TaskTracker必须,hbmaster,CLDB,文件服务器,hoststats 10.10.82.55
    centos56 TaskTracker必须,hbregionserver,CLDB,文件服务器,hoststats 10.10.82.56
    centos57文件服务器,TaskTracker必须,hbregionserver,hoststats,JobTracker的10.10.82.57
    centos58文件服务器,TaskTracker必须,hbregionserver,网络服务器,NFS,hoststats,JobTracker的10.10.82.58
    ...更多节点...

    如果一个节点没有连接到群集,maprcli命令将无法工作。

  • 一个主CLDB处于活动状态,并且所有节点返回相同的结果。例如:

    #maprcli节点cldbmaster
    cldbmaster
    服务器ID:8851109109619685455主机名:centos56
  • 只有一个动物园管理员服务号称是ZooKeeper的领导者,和所有其他饲养员都是追随者。例如:

    #服务MAPR-饲养员QSTATUS
    JMX默认情况下启用
    使用配置:/ opt/mapr/zookeeper/zookeeper-3.4.5/conf/zoo.cfg
    模式:跟随

此时,MAPR包已经升级所有节点上。您准备配置集群为新版本。

你可能感兴趣的:(Mapr——升级)