【问题标题】:Set cassandra.yaml settings like seeds through a script通过脚本设置 cassandra.yaml 设置,如种子
【发布时间】:2015-03-18 23:53:50
【问题描述】:

设置 yaml 设置的最佳方法是什么?我正在使用 docker 容器,并希望自动化设置 cassandra.yaml 设置的过程,例如种子、listen_address 和 rpc_address。

我在其他 yaml 工具中看到过类似的东西:

提前致谢

【问题讨论】:

    标签: cassandra cassandra-2.0 cassandra-cli


    【解决方案1】:

    我不知道“最佳”方式,但是当我在几个 vagrant vm 上设置脚本化的 cassandra 服务器集群时,我使用 puppet 在 cassandra.yaml 中设置种子等。

    我确实编写了一些脚本,而不是使用 puppetdb 来跟踪主机的地址,但这并不是非常成功。问题是最先出现的节点只有自己在种子列表中,因此倾向于自己创建一个集群。然后其余的将作为一个单独的集群出现。所以我不得不关闭单节点,清除它并使用正确的配置重新启动它

    如果我现在这样做,我会将地址设置为静态 ip,然后使用它们为所有节点上的 cassandra.yaml 文件填写模板。然后希望节点能对其他集群成员提出正确的想法。

    我对 Docker 没有任何经验,但他们确实说使用 puppet+Docker 的方法是在启动之前在 Docker 容器上使用 puppet

    请注意,您需要大量内存才能完成这项工作。我有一台 16GB 的机器,这有点可疑。

    【讨论】:

      【解决方案2】:

      感谢您提供信息。

      我正在考虑使用https://github.com/go-yaml/yaml

      但这家伙成功了:https://github.com/abh1nav/docker-cassandra

      谢谢

      【讨论】:

        【解决方案3】:

        如果您在 Docker 中运行 Cassandra,请使用以下示例:https://github.com/tobert/cassandra-docker 您可以在启动时覆盖集群名称/种子,因此您用于部署容器的任何配置管理工具都可以执行类似的操作。

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 1970-01-01
          • 2021-06-04
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2012-11-11
          • 2019-08-14
          • 2011-07-05
          相关资源
          最近更新 更多