我正在尝试使用healthcheck应用服务器监控Marklogic服务器主机,但服务器正在抛出SEC-DEFAULTUSERDNE: Default user does not exist: HealthCheck error.
kakula @ ops3r:〜/ monitor $ curl -s --connect-timeout 2 -m 1 http://Hostname:7997
<pre><body>
<span class="error">
<h1>500 Internal Server Error</h1>
<dl>
<dt>SEC-DEFAULTUSERDNE: Default user does not exist: HealthCheck/ = 10784468014522530524</dt>
<dd></dd>
<dt> [1.0-ml]</dt>
<dd></dd>
</dl>
</span>
答案 0 :(得分:5)
与任何其他应用程序一样,HealthCheck application设置为app-server。它附带应用级安全性,并具有名为 HealthCheck 的默认用户。此用户通常也附带ML。
因此,根据提供的有限信息,您的默认用户HealthCheck似乎丢失了。
验证用户是否存在:管理界面 - &gt;安全 - &gt;用户
如果您需要重新创建它,请注意它配置了角色 healthcheck-user 。
最后,也许ErrorLog提供了更多信息?
答案 1 :(得分:2)
首先确保您的服务器正常运行。 该错误可能表示服务器没有连接到安全数据库 否则,这可能是由于在使用未知用户ID安装HealthCheck用户时偶尔会发生的已知升级问题。 HealthCheck仅由具有群集管理功能的Amazon AWS安装上的产品使用,但随所有安装(通过RPM)一起安装。 为了解决这个问题,大卫正走在正确的道路上。
请注意,HealthCheck 应用程序非常简单,如果需要,可以自定义以适应您自己的用例。默认情况下,HealthCheck应用程序只是一个静态页面,但通过使用与a关联的非默认用户隐式验证主机是否已正确初始化并加入群集(或者是1&#39;的群集)角色。如果服务器至少没有在基本级别运行,那将失败。
为了您的目的,您可以随意扩充应用程序代码,以便为您自己的目的做任何有意义的事情。如果您未在AWS上运行托管群集功能,则该功能未被使用且打算进行自定义。