CDH4 将 Cloudera Manager 还原到现有集群
Posted
技术标签:
【中文标题】CDH4 将 Cloudera Manager 还原到现有集群【英文标题】:CDH4 Restore Cloudera Manager to existing cluster 【发布时间】:2015-02-14 05:53:33 【问题描述】:我们的 Cloudera Manager (4.7) 生产节点出现问题,因此我们在该节点上安装了新的操作系统。 我们正在尝试从(嵌入式)postgresql 数据库的备份中恢复 Cloudera Manager。我们希望通过使用恢复的 DB,CM 可以使用现有配置管理现有集群。
我们正在做一些 POC,我们正在尝试将 cloudera 管理器移植到新服务器,步骤如下所述。 (最终我们会在同一个节点上安装CM)
-
安装 cloudera-server-daemons cloudera-server
安装 cloudera-server-db
sudo service cloudera-server-db start => 这将创建基本角色;重新生成密码等。
因此,我们从 pg_dumpall foo.sql 中删除了创建角色和密码以及数据库的初始语句。
pql -U cloudera-scm -h localhost -p 7432 -f foo.sql postgres
。这已成功完成。
在集群中的每个 on 节点上,将 /etc/cloudera-scm-agent/config.ini 更改为指向新节点
sudo 服务 cloudera-server 启动。 => 我们期待 CM 获取配置并加载。但是它需要我们安装程序页面
安装免费版。要么搜索 ips,要么我们看到可用的主机。
接下来,它会更新集群中每个节点上的 cdh 包,并要求我们安装服务。
在此之后,过程有点不清楚。但是,我们确实设法将角色分配给适当的节点,例如。 HDFS 使用相同的根目录,它没有被格式化,一切看起来都很好。但是,我们所有的配置都丢失了。这似乎表明 CM 没有读取恢复的 DB。
上述步骤似乎不是恢复cloudera manager状态的正确方法。这个Reference 可能列出了一种无缝的方式来做到这一点。按照链接中提到的步骤,我们仍然无法让 CM 读取恢复的数据库。有人可以指出正确的步骤吗? 任何帮助表示赞赏。
【问题讨论】:
【参考方案1】:经过大量 poc 后,我们得出的结论是 db 转储是无用的。 幸运的是,我们有 postgresql 的 /data 目录。
我们为重新安装选择了同一台机器(因此无需在 /etc/cloudera-scm-agent/config.ini 中搞乱主机名和 IP 地址) 因此我们安装了正确的 postgresql 版本、cloudera-scm-server、cloudera-scm-server-db、cloudera-scm-agent、cloudera-scm-daemons 及其相关的依赖项。
我们遇到的一个问题是我们丢失了 db.mgmt.properties。我们能够更改用户的密码(amon、hmon、smon、nav 等)。密码的逻辑是 md5(yourPasswordUser) 使用 postgres 中可用的 md5 函数。 此外,您需要在此密码前加上“md5”。
启动 cloudera-scm-server,所有服务都会出现。如果存在数据库连接问题,请转到相关服务,例如活动监视器并将密码更改为 yourPassword。重启。
这对我们有用。我们不需要安装或重新配置服务。
【讨论】:
以上是关于CDH4 将 Cloudera Manager 还原到现有集群的主要内容,如果未能解决你的问题,请参考以下文章
pentaho水壶无法连接到cloudera cdh4 HDFS