cloudera manager server迁移

1、迁移背景

  服务器出了问题,致使整个cm server界面呈现出不可用的状态,也就是获取不到各个大数据组件以及主机相关的状态的信息,整个cm server的前端界面处于瘫痪的状态,不可用,刚开始怀疑是存放元数据的mysql有问题,可是通过验证,一点问题也没有,后面发现登录服务器很卡顿,可是发现cpu和内存都没怎么使用,查看/var/log/messages日志,发现不少MCE错误,网上都说只有硬件有问题才会出现这样的错误,后来重启机器,看看这样还会不会继续报错,重启电脑也不能解决问题,暂时断定服务器硬件有问题:这样的话影响到了不少的服务,主要有CM server,datanode,nodemanager,JournalNode等,因为CM server和JournalNode很重要,因此考虑迁移到其余的机器。html

/var/log/messages报错信息以下:前端

Jan 31 17:13:13 lgh kernel: sbridge: HANDLING MCE MEMORY ERROR
Jan 31 17:13:13 lgh kernel: CPU 36: Machine Check Exception: 0 Bank 10: cc002003000800c1
Jan 31 17:13:13 lgh kernel: TSC 0 ADDR 1200417000 MISC 90000b00374068c PROCESSOR 0:406f1 TIME 1612084393 SOCKET 0 APIC 13
Jan 31 17:13:13 lgh kernel: [Hardware Error]: Machine check events logged
Jan 31 17:13:14 lgh kernel: EDAC MC1: CE row 0, channel 0, label "CPU_SrcID#0_Ha#0_Channel#0_DIMM": 128 Unknown error(s): memory scrubbing on FATAL area OVERFLOW: 
cpu=36 Err=0008:00c1 (ch=1), addr = 0x1200417000 => socket=0, ha=0, Channel=0(mask=1), rank=0 Jan 31 17:13:14 lgh kernel: Jan 31 19:37:31 lgh kernel: sbridge: HANDLING MCE MEMORY ERROR Jan 31 19:37:31 lgh kernel: CPU 39: Machine Check Exception: 0 Bank 10: cc002003000800c1 Jan 31 19:37:31 lgh kernel: TSC 0 ADDR 1200417000 MISC 90000b00374068c PROCESSOR 0:406f1 TIME 1612093051 SOCKET 0 APIC 19 Jan 31 19:37:31 lgh kernel: [Hardware Error]: Machine check events logged Jan 31 19:37:32 lgh kernel: EDAC MC1: CE row 0, channel 0, label "CPU_SrcID#0_Ha#0_Channel#0_DIMM": 128 Unknown error(s): memory scrubbing on FATAL area OVERFLOW:
cpu=39 Err=0008:00c1 (ch=1), addr = 0x1200417000 => socket=0, ha=0, Channel=0(mask=1), rank=0 Jan 31 19:37:32 lgh kernel:

  几经查看,基本肯定是内存出现了问题,可是不彻底是故障,就是有隐患。node

2、迁移步骤

官方网址:https://docs.cloudera.com/documentation/enterprise/latest/topics/cm_ag_restore_server.htmlmysql

其实查看官方的迁移步骤很简单,可是有些状况不适合咱们的集群,官方迁移的方式只适合只安装了自带组件的,若是经过jar包安装了streamsets和spark2等,这些服务就会出现问题,因此须要作一些响应的处理,整个迁移的过程整理以下;sql

一、选择一台合适的机器安装cloudera manager server服务,这里咱们使用的是yum源的方式安装,首先配置好yum源,而后使用以下命令安装:数据库

安装官方网址:https://docs.cloudera.com/documentation/enterprise/latest/topics/install_cm_cdh.htmlbash

yum install –y cloudera-manager-daemons cloudera-manager-server

 

二、将原来的机器(原来的CM server主机)目录/var/lib/cloudera-scm-server/下的全部文件复制到新的主机的相同的目录下,并保持原有的权限服务器

scp –r root@source_ip:/var/lib/cloudera-scm-server/* /var/lib/cloudera-scm-server/
chown –R cloudera-scm: cloudera-scm /var/lib/cloudera-scm-server/

  

三、这一步是本身调整的,官网没说很清楚,符合本身的集群,由于咱们有streamsets和spark2服务,操做以下,在/opt/cloudera下有以下目录:(这些都是在cm server的机器上)socket

 

 

因此要把这两个目录也复制到新cm server机器上的相同目录下:大数据

scp -r root@source_ip:/opt/cloudera/csd /opt/cloudera
scp -r root@source_ip:/opt/cloudera/parcel-repo /opt/cloudera
#而后进行权限修改
chown -R cloudera-scm:cloudera-scm csd parcel-repo
chmod 644 csd/*

 

四、数据库的配置(可选,若是原来数据库没问题,就跳过这一步,由于数据库没问题,因此这步是没有操做的)

可参考安装:https://docs.cloudera.com/documentation/enterprise/latest/topics/cm_ig_installing_configuring_dbs.html#cmig_topic_5

安装完毕后,把原来的是数据库备份还原到新的数据库(这里只说cm相关的元数据库)

 

五、修改新机器cm server的配置/etc/cloudera-scm-server/db.properties,把里面的数据库的信息进行修改为原来的数据库或者是新安装备份还原事后的数据库。

 

六、修改原来全部cm agent机器的/etc/cloudera-scm-agent/config.ini配置,只要修改指向为新的cm server机器就好。若是是新建的数据,而且没有石油备份还原的方式,则还须要删除/var/lib/cloudera-scm-agent/cm_guid,修改配置后,重启agent

service cloudera-scm-agent restart


七、关停掉原先的cm server 

service cloudera-scm-server stop

  

八、启动新的cm server 

service cloudera-scm-server start

  

九、从新安装相关服务 

到这里为止cm server算是迁移完了,可是当本身登录cm前端的时候,发现cm相关的全部服务仍是不可用,由于这些服务仍是安装在原来有问题的机器上,好比Activity Monitor、Alert Publisher、Event Server、Host Monitor、Reports Manager、Service Monitor。因此整个cm前端页面仍是瘫痪不可用的状态。其实仔细想一想,这些个服务其实就是用来作监控,收集信息的一些服务,因此最终选择的方案就是:

把这些服务从有问题的机器上进行删除操做,而后再在新的机器上从新安装这些全部的服务,而后启动起来,就ok了。

相关文章
相关标签/搜索