DC/OS:服务与马拉松应用

DC/OS: Service vs Marathon App

我有以下两个问题:

1) DC/OS 服务只是马拉松式应用程序吗? (或者:DC/OS 服务(如 Cassandra)和通过 Marathon 安装的 Cassandra 应用程序有什么区别?)

2) 扩展:像 Cassandra 这样的 DC/OS 服务会自动扩展到集群中的所有可用节点(给定足够的工作负载)吗?

感谢您的帮助:)

1) 为了回答您问题的第一部分,让我添加另一个概念:DC/OS 套餐,所以我们有 DC/OS 套餐 vs DC/OS 服务 vs 马拉松应用

a) DC/OS 服务与马拉松应用 它们是相同的,一个长期的 运行 服务,马拉松将自动保持 运行ning。例如,您在创建新的 DC/OS 服务时会看到这一点,您可以使用马拉松应用程序定义来完成此操作。

b) DC/OS 包(我相信你问题的核心) dcos package install cassandra 将部署 DC/OS Apache Cassandra 包。 Cassandra package is the scheduler 中有趣的部分,这是一个管理 Cassandra 集群的软件(例如,通过引导集群或自动重启失败的任务),还提供用于扩展、升级的端点,... 如果需要,它是 Cassandra 集群管理员的自动化版本。

现在我们还必须确保此管理员始终可用(即,如果 administrator/scheduler task/node 失败会怎样?)。 这就是 Marathon 部署调度程序的原因,它会自动重启。

Marathon | Cassandra Scheduler | Cassandra Cluster

2) 你问题的第二部分:Autoscaling

该软件包提供了用于扩展的端点,因此典型的模式是提供一个脚本(例如,marathon-autoscale)来扩展 cassandra 集群。您需要自己的脚本的原因是缩放对于每个用户来说都是非常个性化的,尤其是缩小。 请记住,您正在扩展持久服务,那么如何 select 要删除的节点?您是否首先从该节点排出流量?您是否将数据迁移到其他节点?