企业版-使用PostgreSQL作为后端数据库服务器的故障转移支持


请按照以下步骤在ManageEngine Applications Manager中实现故障转移支持:

单数据库-双AppServer体系结构

该安装程序包括一个主Applications Manager,一个辅助Applications Manager和一个公共数据库。主Applications Manager和辅助Applications Manager仅引用公共数据库。当主Applications Manager与数据库对话时,辅助Applications Manager仅侦听数据库。如果主服务器出现故障,则辅助服务器将接管。之后,初始的主服务器将重新启动,并开始充当辅助服务器。

在安装故障转移之前(对于被管服务器):
  • 登录到Applications Manager的管理控制台,然后转到被管服务器列表。
  • 编辑被管服务器以启用单选按钮以获取故障转移详细信息
  • 在为该被管服务器安装故障转移设置之前,输入主机名,Web服务器SSL端口信息。
  • 保存后,即可开始故障转移服务器安装。

故障转移设置详细信息

假设我们要设置三个节点-node1,node2和node3。
Applications Manager: node1,node2
PostgreSQL数据库: node3


 

Diagrammatic expression for Failover Support

步骤1-在node3中安装PGSQL数据库服务器,并确保PGSQL Server在node3中已启动

从我们的网站下载Applications Manager。Postgres与产品捆绑在一起,我们建议您使用捆绑的数据库。

设置远程Postgres DB Server的步骤:

  • 像通常在需要运行数据库的远程服务器上那样安装Applications Manager。安装为专业版,因为我们仅在此安装中使用数据库。(在Windows中,右键点击并以以管理员身份运行运行安装程序。使用命令提示符时,应遵循相同的命令。命令提示符窗口的标签应显示为Administrator。)
  • 启动此安装,然后停止。
  • 转到Windows服务,并确保ManageEngine Applications Manager服务已停止。
  • 在Applications Manager服务器中,打开管理员命令提示符窗口。转到<Applications Manager主页>文件夹,然后执行以下命令:shutdownApplicationsManager.bat -force
  • 重复上述命令以确保所有进程都已停止。
  • 在Windows中,打开命令提示符窗口,然后转到.. <Applications Manager主页>/bin文件夹,然后运行uninstallservice.bat删除ManageEngine Applications Manager Windows服务。这里不需要它,因为它将成为DB Server。
  • pg_hba.conf文件中的更改:
    • ../<Applications Manager主页>/working/pgsql/data/amdb文件夹下打开pg_hba.conf 。
    • 在#IPv4本地连接下,将地址127.0.0.1/32更改为0.0.0.0/0。(这将允许从远程服务器到该PGSQL DB的连接。)
  • postgresql.conf中的更改:
    • <Applications Manager主页>/working/pgsql/data/amdb文件夹中打开postgresql.conf文件: 取消注释listen_addresses行并将localhost替换为*
  • 在Windows中,从命令提示符转到<Applications Manager主页>/working/bin文件夹,然后运行register_pgdbservice.bat脚本。这会将PGSQL安装为Windows服务。
  • 现在,您可以转到Windows服务并启动ApplicationsManager_Posgresql服务,并且PGSQL DB服务器应该已准备好进行连接。
  • 在Linux中,您可以转到/ ManageEngine/<Applications Manager主页>/working文件夹并运行sh./bin/startPGSQL.sh&,PGSQL DB服务器应已准备好进行连接。

步骤2-在节点1中安装Applications Manager

  • 像通常在远程服务器上那样安装Applications Manager。至少启动一次此安装,然后按以下步骤停止安装:
    • 在Windows服务中,确保ManageEngine Applications Manager服务已停止。
    • 在Applications Manager服务器中,打开管理员命令提示符窗口。
    • 转到<Applications Manager主页>文件夹,然后运行以下命令:shutdownApplicationsManager.bat -force
    • 重复上述命令以确保所有进程都已停止。
  • 在写字板中打开<Applications Manager主页> /conf/AMServer.properties文件,并更新以下条目并保存:

    am.dbserver.type = pgsql的
    am.db.port = 15432(端口号可以从确认<Applications ManagerHome> /working/pgsql/data/amdb/postgres_ext.conf您安装了PGSQL数据库服务器的文件。)
    am.dbport.check = false

  • 更新下面两个位置中显示的database_params.conf文件。它们是相同的文件。只需更改jdbc URL,如下所示。在此处更新运行PGSQL DB的远程服务器的主机名和端口。
    • Urljdbc:postgresql:// paulp0558:15432/amdbdontTrackOpenResources = true&useUnicode = true&characterEncoding = UTF-8 AppModules TopoDB-MapDB-EventDB-AlertDB-PollDB-PolicyDB-USERSTORAGEDB-ApplnDB
      更新位于以下2个位置的database_params.conf文件的相同内容:
      .. <Applications Manager主页>/working/conf/PGSQL
      .. <Applications Manager主页>/working/conf
    • 现在您可以从Windows服务启动Applications Manager,它将连接到在远程服务器上运行的PGSQL,将充当主服务器。检查<Applications Manager主页>/logs/wrapper.log文件。
  • 在Linux中,您可以按照以下步骤启动和跟踪启动过程:nohup sh startApplicationsManager.sh&

    按ENTER

    tail -f nohup.out

步骤3-在node2中安装Applications Manager。这将充当辅助服务器

  • 像通常在远程服务器上那样安装Applications Manager。至少启动一次此安装,然后按以下步骤停止安装:
    • 在Windows服务中,确保ManageEngine Applications Manager服务已停止。
    • 在Applications Manager服务器中,打开管理员命令提示符窗口。
    • 转到<Applications Manager主页>文件夹,
      然后运行以下命令:shutdownApplicationsManager.bat -force
    • 重复上述命令以确保所有进程都已停止。
  • 在写字板中打开<Applications Manager主页> /conf/AMServer.properties文件,并更新以下条目并保存:

    am.dbserver.type = pgsql
    am.db.port = 15432(端口号可以从确认<Applications ManagerHome>\workingpgsql\DATA\AMDB\ postgres_ext.conf你安装了PGSQL数据库服务器的文件。)
    am.dbport.check = false

  • 更新下面2个位置中显示的database_params.conf文件。它们是相同的文件。只需对jdbc URL进行更改,如下所示。

在此处更新运行PGSQL DB的远程服务器的主机名和端口。
网址jdbc:postgresql:// paulp0558:15432/amdbdontTrackOpenResources = true&useUnicode = true&characterEncoding = UTF-8 AppModules TopoDB-MapDB-EventDB-AlertDB-PollDB-PolicyDB-USERSTORAGEDB-ApplnDB

  • 对位于以下2个位置的database_params.conf文件进行相同的更新:

    .. <Applications Manager主页>/working/conf/PGSQL
    .. <Applications Manager主页>/working/conf

现在,您可以从Windows服务启动Applications Manager。由于主数据库已启动并正在运行,因此该安装将无法完全开始。它将启动并监听主服务器。可以从<Applications Manager主页> /logs/wrapper.log文件中确认相同的内容。

注:
在Linux中,你就可以开始和跟踪启动过程如下:
nohup sh startApplicationsManager.sh&
按ENTER
tail -f nohup.out

示例Nohup输出

INFO | jvm 1 | 2013/08/05 01:00:06 | Checking for the availability of the Primary Server in the Database. Found an entry.
INFO | jvm 1 | 2013/08/05 01:00:06 |
INFO | jvm 1 | 2013/08/05 01:00:06 | Trying to connect to the Primary Server at 192.168.1.3
INFO | jvm 1 | 2013/08/05 01:00:06 |
INFO | jvm 1 | 2013/08/05 01:00:07 | Please wait ...
INFO | jvm 1 | 2013/08/05 01:00:08 | ....Connected
INFO | jvm 1 | 2013/08/05 01:00:08 |
INFO | jvm 1 | 2013/08/05 01:00:08 |
INFO | jvm 1 | 2013/08/05 01:00:08 | Starting AdventNet Web NMS Standby Server. The Modules will be started once it takes over as the Primary Server.
INFO | jvm 1 | 2013/08/05 01:00:08 |
INFO | jvm 1 | 2013/08/05 01:00:08 | Monitoring the Primary Server at 192.168.1.3

当node1 Applications Manager发生故障时,node2 Applications Manager将完全启动并充当辅助服务器。发生故障转移时将触发电子邮件通知,在该故障转移中,您必须纠正发生故障的节点的问题。然后将其作为辅助服务器重新启动,现在将侦听另一个故障。

INFO | jvm 1 | 2013/08/05 01:09:47 | Monitoring the Primary Server at 192.168.1.3
INFO | jvm 1 | 2013/08/05 01:10:48 | Starting to do FailOver Tasks.
INFO | jvm 1 | 2013/08/05 01:11:08 | Process : AlertFE [ Started ]
INFO | jvm 1 | 2013/08/05 01:11:08 | Process : NmsMainFE [ Started ]
INFO | jvm 1 | 2013/08/05 01:11:08 |
INFO | jvm 1 | 2013/08/05 01:11:08 | Verifying connection with web server... verified
INFO | jvm 1 | 2013/08/05 01:11:08 |
INFO | jvm 1 | 2013/08/05 01:11:08 | Applications Manager started successfully.
INFO | jvm 1 | 2013/08/05 01:11:08 |
INFO | jvm 1 | 2013/08/05 01:11:08 | Please connect your client to the web server on port: 9095
INFO | jvm 1 | 2013/08/05 01:11:08 |
INFO | jvm 1 | 2013/08/05 01:11:09 | The new primary server is 192.168.1.4

注意:需要对企业安装程序中的每个探针实施以上步骤以进行故障转移。