1

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
4

2 に答える 2

1

残念ながら、回避策を得ることができましたが、まだ同じ問題が発生しています。Azure 上の DC/OS には複数の明確な問題があるようですが、いずれにせよ、さらにフィードバックを提供します。DC/OS 1.7.0 の Marketplace バージョンを使用している場合、Cassandra がデプロイされず、フェーズ 1/2 で Marathon にスタックします。ログを調べると、デフォルト ポートへのアクセスに問題があるようです。

ログファイルにペーストビン

一方、この問題は ACS DC/OS には表示されず、Cassandra は DC/OS サービス タブと Marathon に正しく表示されます。DCOS Cassandra CLI はどれも機能しません。あまり徹底的な調査ではありませんが、上記の方法を使用して DCOS CLI をインストールした場合、特に $PYTHONPATH 変数を考慮した依存関係にいくつかの問題があるようです。

/opt/mesosphere/lib/python3.4/site-packages

次の 2 つのアクションを実行することで、依存関係の問題を解決することができました。

  • 最初の依存関係の問題は requests モジュールにあり、Cassandra サブコマンドの cli をインストールした後、次のアクションで解決されました。

    cd ~/.dcos/subcommands/cassandra
    source env/bin/activate
    pip install -Iv requests
    

通常の更新手順は $PYTHONPATH パスの外部依存関係で失敗するため、-Iv を使用したため、依存関係が解決されました。

  • cassandra サブコマンドが必要としていた 2 番目の依存関係は docopt でした。これも同じ方法を使用して問題を解決でき、サブコマンドはドキュメントに従って機能するようになりました。

    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"
]
}

Kafka などの他の DC/OS サブコマンドでも同じことが起こります。

于 2016-04-26T13:08:19.497 に答える