似乎无法安装Cassandra包,marathon get卡在部署阶段1/2,dcos Cassandra子命令发出以下堆栈跟踪,感谢任何帮助。
Traceback (most recent call last):
File "/home/azureuser/.dcos/subcommands/cassandra/env/bin/dcos-cassandra", line 5, in <module>
from pkg_resources import load_entry_point
File "/opt/mesosphere/lib/python3.4/site-packages/pkg_resources.py", line 2701, in <module>
parse_requirements(__requires__), Environment()
File "/opt/mesosphere/lib/python3.4/site-packages/pkg_resources.py", line 572, in resolve
raise DistributionNotFound(req)
pkg_resources.DistributionNotFound: requests
Python version: Python 3.4.2
requests version : 1.8.1发布于 2016-04-26 01:47:09
我在构建Cassandra服务的团队中。感谢您的试用!
我们刚刚更新了Cassandra CLI包,以便更好地定义它的pip依赖项。在您的例子中,它看起来像是在尝试重用旧版本的requests库?要将CLI的Cassandra模块升级到最新版本,请尝试运行dcos package uninstall --cli cassandra; dcos package install --cli cassandra。请注意,--cli很重要;省略它可能会导致卸载Cassandra服务本身,而我们所需要的只是重新安装本地CLI模块。
请记住,您还应该能够通过HTTP直接访问Cassandra服务。CLI模块实际上是围绕服务的HTTP API的一个瘦接口。例如,curl -H "Authorization:token=$(dcos config show core.dcos_acs_token)" http://<your-dcos-host>/service/cassandra/v1/plan | jq '.'。有关其他端点,请参阅Cassandra 1.7 docs中的curl示例。
一旦启动并运行了CLI,就可以更深入地了解服务的状态,但是日志可能会提供更全面的信息,特别是在服务无法启动的情况下。您可以通过访问位于http://<your-dcos-host>/的仪表板来直接访问服务日志
Services,然后从列表中选择marathon。Cassandra服务管理器作为马拉松任务运行。cassandra可显示其工作目录,包括可用的日志文件。发布于 2016-04-26 21:08:19
不幸的是,我们仍然有同样的问题,尽管我们已经设法解决了。似乎Azure上的DC/OS存在不止一个明显的问题,无论如何我会提供进一步的反馈。如果使用的是DC/OS 1.7.0的Marketplace版本,Cassandra不会部署,它会在1/2阶段陷入马拉松,在检查日志时,它似乎在访问默认端口时出现了问题。
Pastebin to log file
另一方面,这个问题没有出现在ACS DC/OS上,Cassandra部署正确地出现在DC/OS服务选项卡中以及在Marathon上。DCOS Cassandra CLI在任何系统上都不起作用。根据不是很彻底的检查,当我们使用上面的方法安装DCOS CLI时,似乎存在一些依赖项的问题,特别是考虑到了$PYTHONPATH变量
/opt/mesosphere/lib/python3.4/site-packages我们能够通过采取两个操作来解决依赖关系问题:
cd ~/.dcos/子命令/cassandra source env/bin/activate pip install -Iv requests
我们使用了-Iv,因为通常的更新过程在$PYTHONPATH路径中的外部依赖项失败,所以请求解决依赖项。
Cassandra子命令需要的第二个依赖项是
pip install -Iv docopt
这似乎有点老生常谈,想知道是否有更合适的事情要做。
执行上述步骤后dcos cassandra连接的输出
{
"address": [
"10.32.0.9:9042",
"10.32.0.6:9042",
"10.32.0.8:9042"
],
"dns": [
"node-0.cassandra.mesos:9042",
"node-1.cassandra.mesos:9042",
"node-2.cassandra.mesos:9042"
]
}同样的情况也发生在其他DC/OS子命令上,例如Kafka子命令。
https://stackoverflow.com/questions/36827158
复制相似问题