我们用的是一个稍微修改过的中间层团。这已经安装了mesos dns-所以我们可以解决master.mesos和x.marathon.mesos,没有问题。问题是我们应该使用哪个名称访问cassandra数据库(是使用cqlsh还是使用其他应用程序)?
我在文档中发现了以下内容:cassandra-dcos-node.cassandra.dcos.mesos(https://docs.mesosphere.com/services/cassandra/)但是如果我们改变集群名称(比如说“foo”),会怎么样?哪一位被修改了?我已经玩了所有的组合,但还没有解决它。
2条答案
按热度按时间57hvy0tb1#
cassandra mesos framework提供的cassandra服务器的默认dns名称为
cassandra.dcos.node
. 根据服务的mesos dns规范预先设置的cassandra
然后是域名dcos.mesos
形成cassandra-dcos-node.cassandra.dcos.mesos
.如果您仍然不清楚,确认服务名称的方法是:
使用mesos dns将ssh连接到服务器(我假设它是mesos主服务器)
遵循dns服务:
journalctl -u mesos-dns -f
注册cassandra mesos服务您要查找的记录条目类似于:
du7egjpx2#
如果cassandra在dcos上运行(文档引用了dcos),那么集群名称是
dcos
. 在mesos中注册的框架名称是cassandra.dcos
. 正在运行的cassandra服务器的任务名称是cassandra.dcos.node
,如果将集群名称更改为“foo”,那么框架名称现在将是
cassandra.foo
服务器任务名称现在是cassandra.foo.node
.要访问您的“foo”cassandra集群,您将使用
cassandra-foo-node.cassandra.foo.mesos
.现在解释一下:
mesos dns创建的dns名称遵循特定的模式,所有这些都可以在官方文档[1]中找到。
为了总结此处的文档,mesos dns使用以下格式创建dns名称:
taskName.frameworkName.mesos
.对于cassandra,任务名称是
cassandra.dcos.node
哪些mesos dns变成了cassandra-dcos-node
因为这不是全部.
在任务名称中。框架名称cassandra.dcos
允许有.
在它里面保持不变。mesos是tld的默认值。当我们把它放在一起,这是
cassandra-dcos-node.cassandra.dcos.mesos
.最初的目的是要有一个
node.dcos.cassandra.mesos
但由于时间限制和对mesos dns工作原理的误解,这就是我们剩下的。希望以后能清理干净。[1] http://mesosphere.github.io/mesos-dns/docs/naming.html