0

最近、marathon-lbを使用してDCOSでアプリケーションの負荷分散を行うチュートリアルを行っています(例:nginxの一部のコンテナ:https://dcos.io/docs/1.9/networking/marathon-lb/marathon-lb-advanced-tutorial/)。私はこのアプローチを使用して、自分のカスタムアプリケーションの負荷を内部的にバランスさせようとしています。私が使っているカスタムアプリは、プレイスカラアプリです。私は内部マラソン - ポンドをセットアップして、それをnginxのコンテナに使用することはできますが、自分のドッカーイメージを使用しようとすると、これを動作させることができません。私は自分のカスタムイメージでサービスを開始し、割り当てられたIPとポートを使用してサービスにアクセスできます(つまり、サービスが10.0.0.0にデプロイされ、ポート1234で利用可能な場合、curl http://10.0.0.0:1234/は期待通りに機能し、アプリケーションルートで定義されているように私のapi呼び出しを行うこともできます)。私は(10002サービスポートがあるcurl -i http://marathon-lb-internal.marathon.mesos:10002、)ロード・バランサを介してアプリにアクセスしようとすると、しかし、その後、私はこのメッセージを得る:参考DCOSを使用してMarathon-lb経由でサービスに接続できません

HTTP/1.0 503 Service Unavailable 
Cache-Control: no-cache 
Connection: close 
Content-Type: text/html 

<html><body><h1>503 Service Unavailable</h1> 
No server is available to handle this request. 
</body></html> 

を、ここで私は起動に使用しています私のJSONファイルがあります私のカスタムサービス:

{ 
    "id": "my-app", 
    "container": { 
    "type": "DOCKER", 
    "docker": { 
     "image": "my_repo/my_image:1.0.0", 
     "network": "BRIDGE", 
     "portMappings": [ 
     { "hostPort": 0, "containerPort": 9000, "servicePort": 10002, "protocol": "tcp" } 
     ], 
     "parameters": [ 
     { "key": "env", "value": "USER_NAME=user" }, 
     { "key": "env", "value": "USER_PASSWORD=password" } 
     ], 
     "forcePullImage": true 
    } 
    }, 
    "instances": 1, 
    "cpus": 1, 
    "mem": 1000, 
    "healthChecks": [{ 
     "protocol": "HTTP", 
     "path": "/v1/health", 
     "portIndex": 0, 
     "timeoutSeconds": 10, 
     "gracePeriodSeconds": 10, 
     "intervalSeconds": 2, 
     "maxConsecutiveFailures": 10 
    }], 
    "labels":{ 
    "HAPROXY_GROUP":"internal" 
    }, 
    "uris": [ "https://s3.amazonaws.com/my_bucket/my_docker_credentials" ] 
} 
+0

こんにちは、これを解決しましたか?もしそうでなければ、私はそれを送るでしょう!ありがとう! –

答えて

0

私は同じ問題を抱えていたし、を追加する必要があり、ここで

marathon-lb health check failing on all spray.io containers

解決策を見つけました「HAPROXY_0_BACKEND_HTTP_HEALTHCHECK_OPTIONS」:「HTTP-お送り名ヘッダをホスト\ n個のタイムアウトチェック{healthCheckTimeoutSeconds}の\ n」はREST層はマラソンからのヘルスチェックに吠えないようにご設定へ

関連する問題