0007-如何迁移Cloudera Manager节点

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

1.概述

本文档讲述如何将Cloudera Manager在Kerberos环境下迁移至新的CM节点。通过本文档,您将学习到以下知识:

1.如何迁移Cloudera Manager节点

2.如何迁移MySQL元数据库

3.如何迁移Kerberos MIT KDC

文档主要分为以下几步:

1.准备Cloudera Manager新节点

2.MariaDB数据库迁移(可选)

3.迁移Kerberos MIT KDC(可选)

4.将原CM节点数据迁移至新节点

5.迁移后集群服务验证

这篇文档将着重介绍Cloudera Manager节点迁移,并基于以下假设:

1.CDH环境已搭建并正常运行

2.旧Cloudera Manager节点包含Cloudera Manager Server(即cloudera-scm-server)服务和Cloudera Management Service服务(Alert Publisher/Event Server/Host Monitor/Reports Manager/Service Monitor)

3.集群已完成MIT Kerberos的配置,并正常使用

4.集群Hadoop服务HBase/Hive/HDFS/Hue/Kafka/Oozie/Spark/Spark2/Yarn/Zookeeper正常运行

以下是本次测试环境,但不是本操作手册的硬限制:

1.操作系统:Redhat7.2

2.CM版本:CM5.11.1

3.CDH版本:CDH5.11.1

4.采用ec2-user对集群进行部署

2.准备Cloudera Manager新节点

2.1新CM主机前置条件

  1. 操作系统版本与集群操作系统版本一致(Redhat7.2)
  2. 关闭防火墙
  3. 配置时钟同步,根据当前集群时钟同步服务进行配置
  4. swap已设置为10
  5. 关闭透明大页面
  6. 关闭SElinux
  7. 配置/etc/hosts文件或者使用DNS服务
  8. 配置cm和os的yum源
  9. 创建mysql驱动的软链接

2.2新主机信息

新主机IP地址:172.31.18.97

新Hostname:ip-172-31-18-97.ap-southeast-1.compute.internal

1.主机操作系统版本

2.防火墙

3.时钟同步

4.swap信息

5.透明大页面

6.SElinux信息

7.host信息

8.Cloudera Manager和OS的yum 源

9.在/usr/share/java目录下创建mysql驱动包软链

2.3安装Cloudera Manager服务

[email protected] log$ sudo yum  -y install cloudera-manager-server cloudera-manager-agent

安装完成Cloudera Manager后暂时不要启动服务。

注意:新节点的Cloudera Manager版本必须与原Cloudera Manager版本一致;节点上不要安装CDH的其它组件;

2.4安装MariaDB数据库

由于原CM节点安装有MariaDB数据库,所以在新的CM节点也安装MariaDB数据库进行数据迁移(如果不考虑数据库迁移则可以不用安装)

[email protected]  log$ sudo yum -y install mariadb-server mariadb-devel 

初始化MariaDB数据库

 ec2-user @  ip-172-31-18-97 log# sudo systemctl enable mariadb
 [email protected]  log$ sudo systemctl start mariadb
 [email protected]  log$ sudo /usr/bin/mysql\_secure\_installation 

3.MariaDB数据库迁移

如果不做数据库迁移可不跳过该章节

3.1备份原MariaDB数据

将需要迁移的mysql整库导出(可根据需要导出需要的库信息)

[email protected]  ec2-user# mysqldump -u root -p -A >oldmysql.dump 

3.2导入备份数据至新库

1.将备份文件拷贝至新mysql服务上,进行数据导入

[email protected]  ec2-user# mysql -u root -p < oldmysql.dump 

注意:数据导入成功后,需要在mysql client执行命令:FLUSH PRIVILEGES;

4.迁移Kerberos MIT KDC

4.1备份原Kerberos数据库

登录到主KDC服务器上,使用kdb5_util命令备份Kerberos数据库及配置文件

[[email protected] ~]$ sudo kdb5_util dump -verbose kerberosdb.dumpfile

HTTP/[email protected]

HTTP/[email protected]

….

zookeeper/[email protected]

[[email protected] ~]$
/etc/krb5.conf

/var/kerberos/krb5kdc/kdc.conf

/var/kerberos/krb5kdc/kadm5.acl

4.2恢复备份数据至新库

1.在新节点安装Kerberos服务:

yum -y install krb5-server krb5-libs krb5-auth-dialog krb5-workstation

将4.1备份的数据拷贝到新节点上,通过如下操作将数据还原到Kerberos数据库

2.修改krb5.conf文件,将该文件覆盖/etc目录下的krb5.conf

将上述标红部分修改为当前主机ip或者hostname

3.将kdc.conf和kadm5.acl文件拷贝至/var/kerberos/krb5kdc目录下进行覆盖

yum -y install krb5-server krb5-libs krb5-auth-dialog krb5-workstation

4.恢复kerberos数据库,在krb5kdc和kadmin服务停止的情况下进行如下操作

注意:此处需要创建kerberos数据库,然后在做数据导入否则krb5kdc和kadmin服务不能正常启动;

启动krb5kdc和kadmin服务

[email protected] kerberos\_bak$ sudo  systemctl restart krb5kdc

[email protected] kerberos\_bak$ sudo  systemctl stop krb5kdc

验证Kerberos是否正常,使用导入的user_r进行测试

4.3更新集群的krb5.conf配置

将KDC主服务器上的/etc/krb5.conf文件拷贝至集群中所有的节点,并验证Kerberos是否正常。

5.将原CM节点数据迁移至新节点

5.1备份原CM节点数据

主要备份CM的监控数据和管理信息,数据目录包括:

/var/lib/cloudera-host-monitor

/var/lib/cloudera-service-monitor

/var/lib/cloudera-scm-server

/var/lib/cloudera-scm-eventserver

/var/lib/cloudera-scm-headlamp

注意:将备份命令压缩传输,防止目录的属主和权限变化

5.2修改CM的数据库配置信息

修改新CM的数据库配置文件/etc/cloudera-scm-server/db.properties,配置文件内容

根据自己的配置信息对标红部分进行修改

5.3CM备份数据导入新节点

将原CM上备份的数据拷贝到新CM节点上

通过如下命令将备份数据还原至对应目录

5.4更新集群所有节点的CM Server指向

修改集群所有节点上/etc/cloudera-scm-agent/config.ini文件中server_host值为新CM节点的hostname

5.5将原CM节点的Cloudera Management Service角色迁移至新节点

启动新CM节点的cloudera-scm-server和cloudera-scm-agent服务

[email protected] 253back# sudo systemctl  start cloudera-scm-serve

[email protected] 253back# sudo systemctl  start cloudera-scm-agent

注意:在新CM节点上启动cloudera-scm-agent服务后,会将CM节点的信息添加到cm库的HOSTS表中,查看新CM节点对应的HOSTS_ID

登录mysql数据库将,查看cm.HOSTS表中的Cloudera Manager的host信息

未迁移前可以通过CM管理界面看到新CM节点是没有任何角色

通过如下命令,将旧CM的角色迁移至新CM节点上

update ROLES set HOST_ID=11 where NAME like ‘mgmt%‘;

执行操作后,原CM节点的角色被迁移至新CM节点

通过CM管理界面将原CM节点从集群删除

将原CM节点删除

由于集群配置了Kerberos,则需要更新Kerberos的server,如果Kerberos未迁移则不需要考虑此步

如果集群启用Kerberos,则需要为新CM节点生成keytab(如果未启用集群则跳过此步)

通过CM管理界面启动Cloudera Management Service

由于做了数据库迁移,所以需要修改hive/hue/oozie对应的数据库配置(未做数据库迁移可跳过此步)

进行以上修改后重启集群

6.迁移后集群服务验证

原CM的运行界面,历史监控数据

登录CM管理平台,查看集群状态正常

迁移后可以查看正常查看集群的历史监控数据

Hue访问及操作正常

HDFS访问及操作正常

HBase通过hue和shell正常操作

7.常见问题分析

1.问题一

问题现象:

问题原因:

由于cloudera-scm-agent服务于supervisord之间通信异常导致。

解决方法:

将告警节点上的supervisord进程杀死,然后重启agent服务

2.问题二

问题现象:

问题原因:

由于在CM迁移时,未迁移/opt/cloudera/csd目录导致。

解决方法:

将原CM节点上/opt/cloudera/csd目录拷贝至新CM节点对应的目录

重启cloudera-scm-server服务

[[email protected] 253back]# sudo systemctl start cloudera-scm-server

3.问题三

问题现象:

Service Monitor启动失败,异常信息如下

问题原因:

由于CM迁移时,/var/lib/cloudera-service-monitor目录的文件缺失导致

解决方法:

将/var/lib/cloudera-service-monitor目录的数据重新覆盖

4.问题四

现象描述:

在集群迁移完成后,集群启动后做了高可用服务的NameNode和ResourceManager服务均不能正常显示主备节点,HDFS的汇总信息无法正常显示

问题原因:

由于集群配置了kerberos,新CM节点未生成keytab导致

解决方法:

将CM节点的所有服务停掉,然后生成该主机的keytab

8.扩展

如何在不停止集群服务的情况下进行Cloudera Manager迁移,需要满足如下条件:

  1. 新CM节点的hostname与IP地址与旧CM节点一致;
  2. 如果需要迁移数据库,则新数据库的hostname与IP地址与原数据库一致,且需要将原数据库的数据导入到新库中;
  3. 如果需要迁移Kerberos MIT KDC,则新MIT KDC所在节点与旧MIT KDC节点的hostname与IP地址一致,且需要将旧MIT KDC数据库数据导入新MIT KDC数据库中;

注意:如果只做第1步操作,则不需要重启hadoop集群相关服务,并且不会影响hadoop集群现有作业;如果进行2、3步操作会对集群作业造成短暂影响,但不需要重启hadoop集群相关服务;

醉酒鞭名马,少年多浮夸! 岭南浣溪沙,呕吐酒肆下!挚友不肯放,数据玩的花!
温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

原文地址:http://blog.51cto.com/14049791/2317550

时间: 2024-08-30 02:05:25

0007-如何迁移Cloudera Manager节点的相关文章

CDH使用秘籍(二):cloudera Manager中监控数据的存储

概述 上一篇文章分析了cloudera manager中监控数据.中心数据的存储方式,怎样配置外部表等.这一篇文章进一步分析监控数据的存储,配置,调优等. Service Monitor 和 Host Monitor 角色在cloudera manager中存储了时间序列.健康数据.Impla查询和Yarn应用的元数据.经过查看相应的Cloudera Manager的存储连接,发现Service Monitor和Host Monitor的存储使用的是levelDB的解析类,由此可以推断出本地存储

CDH秘籍(两):cloudera Manager存储监控数据

概述 上一篇文章分析了cloudera manager中监控数据.中心数据的存储方式,如何配置外部表等.这一篇文章进一步分析监控数据的存储,配置,调优等. Service Monitor 和 Host Monitor 角色在cloudera manager中存储了时间序列.健康数据.Impla查询和Yarn应用的元数据.经过查看对应的Cloudera Manager的存储连接,发现Service Monitor和Host Monitor的存储使用的是levelDB的解析类,由此能够判断出本地存储

cloudera manager集群节点更换IP的启动方法

机器ip修改后,主机名不要动,修改/etc/hosts文件,将各主机名对应的ip修改 登陆cloudera manager 的mysql数据库mysql -uroot -pxxxxxxuse cm;修改CM_VERSION表的HOSTNAME字段和HOSTS表的IP_ADDRESS 启动集群:/opt/cm-5.9.0/etc/init.d/cloudera-scm-server start/opt/cm-5.9.0/etc/init.d/cloudera-scm-agent start 不出意

[How to]Cloudera manager 离线安装手册

1.简介 本文介绍在离线环境下安装Cloudera manager和简单使用方法 2.环境 OS:CentOS 6.7 Cloudera manager版本:5.5.1 CDH版本:5.4.2 安装用户:root 资源: 10.211.55.16 xufeng-1 CM主节点,CM代理节点 10.211.55.17 xufeng-2 CM代理节点 10.211.55.18 xufeng-3 CM代理节点 3.介质准备 由于是要求在离线环境下进行安装,所以我们必须是先下载好安装所需要的所有介质.

CDH 2、Cloudera Manager的安装

1.Cloudera Manager • Cloudera Manager是一个管理CDH的端到端的应用. • 作用: – 管理 – 监控 – 诊断 – 集成 • 架构 • Server – 管理控制台服务器和应用程序逻辑 – 负责软件安装.配置,启动和停止服务 – 管理服务运行的群集 • Agent – 安装在每台主机上 – 负责启动和停止进程,配置,监控主机 • Management Service – 由一组角色组成的服务,执行各种监视.报警和报告功能 • Database • Cloud

转Cloudera Manager 和 CDH 4 终极安装

系统环境 操作系统:CentOS 6.5 Cloudera Manager 版本:4.8.1 CDH版本:4.5.0 各机器准备工作: yum -y groupinstall "Development tools" yum -y install wget  Cloudera-manager压缩包地址:    http://archive.cloudera.com/cm4/cm/4/cloudera-manager-el6-cm4.8.1_x86_64.tar.gz CDH 下载地址:

Cloudera Manager 5和CDH5离线安装

CDH (Cloudera's Distribution, including Apache Hadoop),是Hadoop众多分支中的一种,由Cloudera维护,基于稳定版本的Apache Hadoop构建,并集成了很多补丁,可直接用于生产环境. Cloudera Manager则是为了便于在集群中进行Hadoop等大数据处理相关的服务安装和监控管理的组件,对集群中主机.Hadoop.Hive.Spark等服务的安装配置管理做了极大简化. 相关包的下载地址: Cloudera Manager

离线安装Cloudera Manager 5.3

离线安装ClouderaManager 5.3   关于CDH和ClouderaManager CDH (Cloudera's Distribution, including Apache Hadoop),是Hadoop众多分支中的一种,由Cloudera维护,基于稳定版本的ApacheHadoop构建,并集成了很多补丁,可直接用于生产环境(本次项目环境使用了4个节点的CDH5.1.3版本). Cloudera Manager则是为了便于在集群中进行Hadoop等大数据处理相关的服务安装和监控管

Centos6.5安装配置Cloudera Manager CDH5.6.0 Hadoop

环境规划操作系统版本:CentOS-6.5-x86_64-minimal.iso 192.168.253.241    master   虚拟机4G内存192.168.253.242    slave1    虚拟机2G内存192.168.253.243    slave2    虚拟机2G内存 一.环境初始化1.修改主机名(每台机器都执行) 192.168.253.241    master 192.168.253.242    slave1 192.168.253.243    slave2