docker swarmまたはアプリケーションの一部を実装し始めています。これらの部分のうちの1つは、特定のユーザーに "ライブ"コンテンツをプッシュできるWebソケットサーバーです。docker swarmのすべてのインスタンスにアクセス
私の質問は、オーバーレイネットワーク上で負荷分散されたものではなく、特定のコンテナを休憩したい場合です。もしそうなら、私はそれをどうやってやりますか?
おかげ
ベン
docker swarmまたはアプリケーションの一部を実装し始めています。これらの部分のうちの1つは、特定のユーザーに "ライブ"コンテンツをプッシュできるWebソケットサーバーです。docker swarmのすべてのインスタンスにアクセス
私の質問は、オーバーレイネットワーク上で負荷分散されたものではなく、特定のコンテナを休憩したい場合です。もしそうなら、私はそれをどうやってやりますか?
おかげ
ベン
私が正しくあなたのユースケースを理解している場合、次の例では、始めに役立つかもしれません。あなたがのためにすべてのタスクを見つけることができるコンテナ内
docker run --rm -it --network nginx alpine:edge ash
:
docker network create --driver overlay --attachable nginx
docker service create --name nginx --network nginx --replicas 3 nginx:alpine
あなたはnginxのネットワークに接続された容器を実行することができます:オーバーレイネットワークと複数のレプリカとサービスを考えると
apk add -U drill
drill tasks.nginx
応答には次のようなものが含まれている必要があります。simiこれからは
...
;; ANSWER SECTION:
tasks.nginx. 600 IN A 10.0.1.3
tasks.nginx. 600 IN A 10.0.1.4
tasks.nginx. 600 IN A 10.0.1.5
...
本当に添付可能なネットワークと単一のコンテナは必要ありません。あるいは、nginxのような同じネットワークに別のサービスを作成して、そのサービスがtasks.<service-name>
検索を実行して必要なアクションを実行できるようにすることもできます。
そこにIPを使用して正確なコンテナにアクセスできますか? –
私はswarmの主要なデザインの周りに何かしようとしていると思う - 私は今見ようと思っている、パブ/サブのためにredisまたは同様のものを使用していると、すべてのプロキシをredisに接続して特定のチャンネルを購読する - すべてのコンテナに単一のコマンドを送信したいときは、そこに公開するだけです。 –
ありがとう、これは私が必要としていたものです! –
Swarmがあなたのようなユースケースに該当するかどうかはわかりません。あなたのコンテナをいくつかのレプリカで展開/ロードバランスさせ、必要に応じてSwarmがコンテナの移転を管理できるようにしますか?このような動的な振る舞いを望むように、ユースケースは聞こえません。 – gesellix
保留したい保留中の接続について、特定のコンテナまたはその他のものにリクエストを送信することについて問題がありますか? – gesellix
私はロードバランス "プロキシ"を持っています - そのコンテナに接続されているクライアントに何かを渡すために、実行中の各インスタンスにAPIコールを送信したい –