无法启动 cloudera-scm-server-db 因为 "The CM is using external DB"
Can not start cloudera-scm-server-db because of "The CM is using external DB"
我已经将 CDH5 的 jdk 从 1.8_131 更新为 1.8_151。所以我需要重启集群才能生效。一开始我使用cloudrea manager网页重启,但是当zookeeper启动时失败了,这是第一步。然后我做出了一个错误的选择,即在终端中关闭 cloudrea 管理器,包括 kill -9 postgresql 进程。在那之后,我无法打开cloudrea manager 网页。
我使用以下说明启动集群。
service cloudera-scm-server-db start
service cloudera-scm-server start
service cloudera-scm-agent start
全部失败,因为/var/log/cloudera-scm-server
和/var/log/cloudera-scm-agent
消失了。
所以我手动创建了这两个文件还包括 dg.log
和 cloudera-scm-agent.log
此时server
和agent
可以启动。但是server-db
还是不行。接下来是一些细节。
Starting cloudera-scm-server-db (via systemctl): Job for
cloudera-scm-server-db.service failed because the control process
exited with error code. See "systemctl status
cloudera-scm-server-db.service" and "journalctl -xe" for details
journalctl -xe
The CM is using external DB. Failed to start embedded DB service, giving up
service --status-all
我做了什么:
那么,我现在该怎么办?谢谢 非常感谢!!!
以上问题已经解决
如果打开这个/etc/cloudera-scm-server/db.properties
文件,如下图。
# cat /etc/cloudera-scm-server/db.properties
Auto-generated by scm_prepare_database.sh
#
Sat Oct 1 12:19:15 PDT 201
#
com.cloudera.cmf.db.type=postgresql
com.cloudera.cmf.db.host=localhost
com.cloudera.cmf.db.name=scm
com.cloudera.cmf.db.user=scm
com.cloudera.cmf.db.password=TXqEESuhj5
com.cloudera.cmf.db.setupType=EXTERNAL
EXTERNAL is the crux.
在我的 CDH 服务中,我使用嵌入式 postgresql 作为我的服务器数据库。但是cloudera官方不推荐使用。我是 Cloudera 的新手,所以我犯了一个错误。
我错误地使用了只为 Cloudera Manager Server 外部数据库准备的命令。
/usr/share/cmf/schema/scm_prepare_database.sh postgresql scm scm scm_password
以上命令可以配置db.properties
只要你运行上面的命令,com.cloudera.cmf.db.setupType
就会被设置为EXTERNAL
(关于这个的更多细节,你可以在Cloudera docs中找到)
最直接有效的方法就是reset password of scm。
然后
- 更新密码
- 将类型设置为嵌入式
- 监听7432端口(可以用
netstat -nltp
查看)
在 db.properties.
#vim cat /etc/cloudera-scm-server/db.properties
Auto-generated by scm_prepare_database.sh
Sat Oct 1 12:19:15 PDT 201
com.cloudera.cmf.db.type=postgresql
com.cloudera.cmf.db.host=localhost:7432
com.cloudera.cmf.db.name=scm
com.cloudera.cmf.db.user=scm
com.cloudera.cmf.db.password=new_password
com.cloudera.cmf.db.setupType=EMBEDDED
现在关闭所有 cloudera-scm 服务并按顺序重新启动 server-db
,server
,agent
.
如果/var/log被错误清除。
您可以手动创建 /var/log/cloudera-scm-server
和 /var/log/cloudera-scm-agent
等文件。
值得注意的是,你应该由用户cloudera-scm
创建这些文件,否则无法写入日志,你也不会从日志文件中找到发生了什么错误。
我已经将 CDH5 的 jdk 从 1.8_131 更新为 1.8_151。所以我需要重启集群才能生效。一开始我使用cloudrea manager网页重启,但是当zookeeper启动时失败了,这是第一步。然后我做出了一个错误的选择,即在终端中关闭 cloudrea 管理器,包括 kill -9 postgresql 进程。在那之后,我无法打开cloudrea manager 网页。
我使用以下说明启动集群。
service cloudera-scm-server-db start
service cloudera-scm-server start
service cloudera-scm-agent start
全部失败,因为/var/log/cloudera-scm-server
和/var/log/cloudera-scm-agent
消失了。
所以我手动创建了这两个文件还包括 dg.log
和 cloudera-scm-agent.log
此时server
和agent
可以启动。但是server-db
还是不行。接下来是一些细节。
Starting cloudera-scm-server-db (via systemctl): Job for cloudera-scm-server-db.service failed because the control process exited with error code. See "systemctl status cloudera-scm-server-db.service" and "journalctl -xe" for details
journalctl -xe
The CM is using external DB. Failed to start embedded DB service, giving up
service --status-all
我做了什么:
那么,我现在该怎么办?谢谢 非常感谢!!!
以上问题已经解决
如果打开这个/etc/cloudera-scm-server/db.properties
文件,如下图。
# cat /etc/cloudera-scm-server/db.properties
Auto-generated by scm_prepare_database.sh
#
Sat Oct 1 12:19:15 PDT 201
#
com.cloudera.cmf.db.type=postgresql
com.cloudera.cmf.db.host=localhost
com.cloudera.cmf.db.name=scm
com.cloudera.cmf.db.user=scm
com.cloudera.cmf.db.password=TXqEESuhj5
com.cloudera.cmf.db.setupType=EXTERNAL
EXTERNAL is the crux.
在我的 CDH 服务中,我使用嵌入式 postgresql 作为我的服务器数据库。但是cloudera官方不推荐使用。我是 Cloudera 的新手,所以我犯了一个错误。 我错误地使用了只为 Cloudera Manager Server 外部数据库准备的命令。
/usr/share/cmf/schema/scm_prepare_database.sh postgresql scm scm scm_password
以上命令可以配置db.properties
只要你运行上面的命令,com.cloudera.cmf.db.setupType
就会被设置为EXTERNAL
(关于这个的更多细节,你可以在Cloudera docs中找到)
最直接有效的方法就是reset password of scm。
然后
- 更新密码
- 将类型设置为嵌入式
- 监听7432端口(可以用
netstat -nltp
查看)
在 db.properties.
#vim cat /etc/cloudera-scm-server/db.properties
Auto-generated by scm_prepare_database.sh
Sat Oct 1 12:19:15 PDT 201
com.cloudera.cmf.db.type=postgresql
com.cloudera.cmf.db.host=localhost:7432
com.cloudera.cmf.db.name=scm
com.cloudera.cmf.db.user=scm
com.cloudera.cmf.db.password=new_password
com.cloudera.cmf.db.setupType=EMBEDDED
现在关闭所有 cloudera-scm 服务并按顺序重新启动 server-db
,server
,agent
.
如果/var/log被错误清除。
您可以手动创建 /var/log/cloudera-scm-server
和 /var/log/cloudera-scm-agent
等文件。
值得注意的是,你应该由用户cloudera-scm
创建这些文件,否则无法写入日志,你也不会从日志文件中找到发生了什么错误。