Rundeck 项目和作业在 2 个实例之间同步,后端为 mysql 集群

Posted

技术标签:

【中文标题】Rundeck 项目和作业在 2 个实例之间同步,后端为 mysql 集群【英文标题】:Rundeck project and job sync between 2 instances with backend as mysql cluster 【发布时间】:2015-09-21 08:16:25 【问题描述】:

我在 2 个 VM 和 mysql 集群中设置了 2 个 rundeck,因此 VM#1 上的 Rundeck #1 连接到 Mysql DB#1,同样,VM#2 上的 Rundeck #2 连接到 Mysql DB#2。

我现在遇到的问题是,每当我在 rundeck #1 中创建项目/作业时,我无法在 rundeck #2 中看到它。我该怎么办?

任何帮助将不胜感激

【问题讨论】:

【参考方案1】:

我会先尝试切换数据库,即 Rundeck#2 连接到 MySql DB#1 以查看作业是否可见。

如果是这种情况,则说明您遇到了同步问题。

如果作业仍然不可见,那么我认为 Rundeck 实例存在一些识别问题。

只要我的 2 美分。

【讨论】:

我设置了一个 mysql 集群,它工作正常,因为在一个中创建的数据库反映在另一个中...但是当我配置 rundeck db 时,它也反映在另一个数据节点中...现在当我创建一个 rundeck 中的一个项目和工作,然后它没有反映在另一个 rundeck 中。请您帮我解决这个问题吗? @KronnorK 很好,所以数据库设置是正确的。我相信这些建议可以帮助你前进:github.com/rundeck/rundeck/issues/757 & groups.google.com/forum/#!topic/rundeck-discuss/aXkDkNeTEp0 让它工作...我不得不将引擎更改为 ndbcluster...使其工作 很高兴听到这个消息。如果您在此处发布您的答案并接受它会很好,这样其他人也可以受益。【参考方案2】:

可以通过维护 my.cnf 中的默认引擎来解决此问题。 所以就我而言,我只是修改了 /etc/my.cnf

在标题[mysqld]下面引入了以下选项:

默认存储引擎=NDBCLUSTER

然后重新启动 mysql 并开始同步表。

在进行任何修改之前删除 rundeck db。

感谢并希望这对面临此类问题的每个人都有帮助。

【讨论】:

以上是关于Rundeck 项目和作业在 2 个实例之间同步,后端为 mysql 集群的主要内容,如果未能解决你的问题,请参考以下文章

如何将节点特定的 SSH 密钥与 Rundeck AWS EC2 资源插件一起使用?

RUNDECK安装

java - 如何在Java中运行类的不同实例的线程之间同步静态变量?

如何以只读方式访问一个,多个或所有Rundeck项目的方式手动创建Rundeck用户

Rundeck 项目 SCM exportUuidBehavior“原始”覆盖我的工作 UUID

Play Framework 1.2.4 在异步线程中同步作业:可能吗?