我们的Cloudera Manager(4.7)生产节点出现问题,因此我们在该节点上安装了新的操作系统。我们正在尝试从(嵌入式)postgresqldb的备份中恢复Cloudera Manager。我们希望通过使用恢复的DB,CM可以使用现有的配置来管理现有的集群。
我们正在进行一些POC,其中我们试图将cloudera管理器移植到一个新的服务器,步骤如下所示。(最终我们将在同一节点上安装CM)
- 安装cloudera服务器守护进程cloudera服务器
- 安装cloudera服务器数据库
- sudo服务cloudera服务器db start=>这将创建基本角色;重新生成密码等
- 因此,我们从pgdumpallfoo.sql中删除了创建角色、密码和数据库的初始语句。
pql -U cloudera-scm -h localhost -p 7432 -f foo.sql postgres
。此操作已成功完成 - 在集群中的每个On节点上,更改/etc/cloudera scm agent/config.ini以指向新节点
- sudo服务cloudera服务器启动。=>我们期望CM获取配置并加载。然而,我们需要安装程序页面
- 安装免费版。要么搜索ips,要么我们看到可用的主机
- 接下来,它更新集群中每个节点上的cdh包,并要求我们安装服务
- 在这之后,这个过程有点不清楚。然而,我们确实设法将角色分配给了适当的节点,例如HDFS使用相同的根目录,它没有格式化,一切似乎都很好。然而,我们所有的配置都丢失了。这似乎表明CM没有读取恢复的DB
以上步骤似乎不是恢复cloudera管理器状态的正确方法。本参考资料可能列出了一种无缝的方法。按照链接中提到的步骤,我们仍然无法让CM读取恢复的DB。有人能指出正确的步骤吗?感谢您的帮助。
经过大量的poc,我们得出结论,数据库转储是无用的。幸运的是,我们有postgresql的/data目录。
我们选择了同一台机器进行重新安装(因此无需在/etc/cloudera scm-agent/config.ini中篡改主机名和ipad地址)因此,我们安装了正确的postgresql版本、cloudera scm服务器、cloudera scm服务器数据库、cloudera scm代理、cloudera scm守护进程及其相关依赖项。
我们遇到的一个问题是,我们丢失了db.mgmt.properties。我们可以更改用户的密码(amon、hmon、smon、nav等)。密码的逻辑是使用postgres中的md5函数的md5(yourPasswordUser)。此外,您还需要在这个密码前面加上"md5"。
启动cloudera scm服务器,所有服务都会显示出来。如果存在数据库连接问题,请转到活动监视器等相关服务,并将密码更改为您的密码。重新启动。
这对我们有效。我们不需要安装或重新配置服务。