docker容器中的marklogic;准备生产?

问题描述 投票:1回答:1

我看到一些关于在Docker容器中运行markogic集群的文档,但不确定是否有人在Production中运行marklogic docker容器。

有人在docker容器中使用marklogic进行生产服务吗?

marklogic marklogic-9
1个回答
4
投票

如果你问在Docker中是否有人在生产中使用MarkLogic,是的,我知道人们成功地这样做了。如果您要求它“准备好生产”(标题)或者是MarkLogic“支持”或在Docker中经过测试或认证,那么这对您的销售或支持代表来说就是一个问题。通常这种开放式问题有一个类似的开放式答案。例如,有许多Linux操作系统发行版既没有“支持”也没有“认证”,也没有经过测试,但事实上工作,您可能会发现支持可以帮助您解决或修复您报告的错误。类似地,存在“支持的”操作系统,这取决于配置和用例不能很好地工作或者需要比通常的定制量更多的操作系统。

在docker中需要注意的事项 - 这也与VM中的问题相似(并非所有这些问题都得到支持,但在生产站点中使用)。其中许多都可以解决。

  • 内存调整 - 许多Docker容器'看到'主机(或VM)的内存配置。 MarkLogic基于此做出了几个初始内部配置选择。因此,例如,如果你有一个巨大的主机(比如512 GB RAM)但是一个小的docker容器(比如1GB) - ML可以配置内存使用,调整为512 GB运行。这可能导致问题像启动时崩溃一样极端。
  • 核心/处理器使用。与内存使用类似,docker容器可能“看到”主机服务器/ os / vm的总核心数和过度订阅。
  • IO性能。与所有ML安装一样,您可以有效地配置IO资源。对于docker而言,对于主机来说通常更难以这样做。
  • 联网。 Docker正在迅速发展。网络层非常复杂,可以跨实现变化,并且跨配置实现单一实现。 MarkLogic有简单的要求 - 最相关的是,它在ML服务器中设置的主机名可以在群集中的所有其他ML服务器中解析到同一主机。由您来配置docker以便管理此要求。与在云中运行类似,ML默认情况下将ML服务器的生命周期与其数据的生命周期(/ var / opt / MarkLogic)相关联。如果停止并启动docker实例,则不仅主机名可能会更改,而且数据卷可能会更改。由您来配置,所以他们不这样做。

还有许多其他考虑因素。通常,它们在VM或云环境中运行服务器的性质非常相似。有一些关于主机系统行为的基本假设,通常对于'裸机'知识操作系统安装是正确的,但在虚拟机和其他更多软件定义平台中并不容易确定并且具有更高的可变性 - 因此更难测试甚至讨论。

参考文献:在MarkLogic World 2017 https://www.marklogic.com/resources/chicago-lightning-talks/上讨论

开发者网站:https://developer.marklogic.com/code/docker

我个人最喜欢的:https://github.com/DALDEI/ml-docker

© www.soinside.com 2019 - 2024. All rights reserved.