Docker Swarmの新機能です。私が理解するように、Docker Swarmではクラスタリングから抽象化することができます。あなたはどのハードウェアコンテナが配備されているか気にしません。Dockerボリュームは機械固有のものです
一方、Dockerでデータベースを処理する標準的な方法は、Dockerコンテナの外部にデータを書き込むことです(書き込み時のコピー動作を避けるため)。これはVolumeをマウントしてdb関連のデータを書き込むことで実現します。ここで重要なことは - はボリュームのマシン固有ですか? Docker & Docker Swarmは、必要なマシンにボリュームをマウントするのに十分なほど巧妙ですか?
例:
私は3機と3 microservices /コンテナを持っています。それらのすべてはDocker Swarmを通じて配備されています。 1つのマイクロサービス/コンテナのみがデータベースに接続する必要があります。だから私はVolumeを1台のマシンにしか搭載しないでください。しかし、どちらに?
ありがとうございました。あなたが答えを知っているなら、REXRAYがstatefullデータベースのノードに依存しない動作をどのように達成したかについての詳細を追加できますか? Docker/Docker Swarmアーキテクチャで同じ動作を実装するのはなぜ難しいのですか?私はそれが簡単だったとしたら、Dockerはずっと前にマシンに依存しないボリュームを実装していたと思います –
ハードコードされた/制限付きコンテナで特定のノードへの高可用性はどうですか?どのようなワークアラウンドですか? –