重新安装cloudera-manager接管已有集群

由于数据库数据丢失导致CDH集群无法使用,这时hadoop等集群可能在正常运行  但无法通过cloudera-manager来进行管理,需要重新安装cloudera-manager来接管之前的集群并恢复数据。

解决办法:

关闭service 和 agent服务

保证数据库运营正常

在数据库中重新创建所有库和表

重新安装cloudera-manager

重新安装CDH(集群部署要和之前的保持一直,这是能恢复数据的关键)

具体步骤:

1. 停掉server和所有的agent

        

2. 执行脚本 重建数据库

            cd /opt/cloudera-manager/cm-5.3.6/share/cmf/schema/

            ./scm_prepare_database.sh mysql -h n1 -utemp -ptemp --scm-host n1 scm scm scm

            格式:数据库类型、数据库、数据库服务器、用户名、密码、cm server 服务器

INFO  Successfully connected to database

执行成功

3. 启动server和agent并检查日志,这时如果之前的集群处在运行状态,启动时会自动停止之前的所有集群

4.打开cm管理界面,登录后重新安装cdh(关键步骤)

选择机器(与之前的机器保持一致)

这里不用修改  直接默认选项

继续后等待安装完成

激活后点击继续,到这一步后点击左上角返回主页

安装Activity Monitor,需要为它创建一个数据库,这里选到MySQL去创建数据库

创建数据库        create database ACTIVIMONTOR default character set utf8;

再回到web继续添加Activity Monitor

填写数据库机器,刚刚建好的数据库名称,用户名以及密码  测试连接

如果这里报驱动错误,连接失败,需要把MySQL驱动复制到/usr/share/java/  下并改名 mysql-connector-java.jar(名字必须要改)

连接后一直继续----完成

添加服务

这里根据情况选择自己之前安装的服务一次进行恢复,以hdfs为例(这里的机器部署尽量和接管的那个集群安装位置完全一直,否则数据可能会恢复不了)

经过测试SecondaryNameNode、datanode不与接管的集群相同,数据也能恢复,以防外一,所有的配置尽量保持一致。

如果接管的hdfs集群配置了HA,因为安装时不能直接安装HA模式,这里namenode安装的机器要选择那个集群第一次安装时的机器(重点)

例如接管的集群安装分布如下

namenode1    n1(首次安装的机器)

namonode2    n2(集群安装好后升级到HA配置的机器)

datanode    n1,n2,n3

这时要选择安装到n1上而不是n2

如果这里选错了,可能会导致启动失败并报一下错误

这时需要删掉这个集群重新添加服务

这里根据具体情况修改,如果之前安装的就是默认的那就不用改

显示格式化失败,是因为之前的集群已经格式化过了,直接返回首页

选择重启hdfs集群

所有服务已经正常启动,这里有个警告是因为只安装了两个datanode

打开webUI验证数据是否完整(之前创建的test目录都还在)

5. 恢复HDFS高可用模式(停止服务,修改 JournalNode和namenode目录)

        如果不配置namenode目录会导致linux下无法使用hadoop命令

    

启用HA

配置服务安装的节点(与接管的集群保持一直)--继续  --等待安装完成

--继续

这里 NameNode 格式化失败是正常的,直接继续--完成

n2已经添加完成


重新安装cloudera-manager接管已有集群
https://www.hechunyu.com/archives/1698219973450
作者
chunyu
发布于
2021年08月25日
许可协议