我有一個亞馬遜的自動調節組,產生服務器實例。亞馬遜ecs代理總是重新啓動
我的AWS-CLI配置是:
[default]
s3 =
signature_version = s3v4
addressing_style = path
region = eu-central-1
我ECS代理配置會從S3與AWS-CLI在啓動時實例讀取如下:
ECS_CLUSTER=cluster-mongodb
ECS_ENGINE_AUTH_TYPE=dockercfg
ECS_ENGINE_AUTH_DATA={"domain.com":{"auth":"bsaewfgvewgf23g9hv3","email":""}}
可悲的是ecs-代理生成的實例始終在10秒後重新啓動,而不是註冊到羣集「cluster-mongodb」。
錯誤日誌是在這裏:
2016-02-05T14:40:47Z [INFO] Starting Agent: Amazon ECS Agent - v1.7.1 (007985c)
2016-02-05T14:40:47Z [INFO] Loading configuration
2016-02-05T14:40:47Z [INFO] Checkpointing is enabled. Attempting to load state
2016-02-05T14:40:47Z [INFO] Loading state! module="statemanager"
2016-02-05T14:40:47Z [INFO] Detected Docker versions [1.17 1.18 1.19 1.20]
2016-02-05T14:40:47Z [INFO] Registering Instance with ECS
2016-02-05T14:41:07Z [ERROR] Could not register module="api client" err="RequestError: send request failed
caused by: Post https://ecs.eu-central-1.amazonaws.com/: net/http: request canceled while waiting for connection"
2016-02-05T14:41:07Z [ERROR] Error registering: RequestError: send request failed
caused by: Post https://ecs.eu-central-1.amazonaws.com/: net/http: request canceled while waiting for connection
有人見過這個? 這是否可能與搞砸安全組/ LB配置有關?
預先感謝
[編輯]中找到的解決方案:
檢查,如果子網被註冊到右路由表(VPC - >路由表)。在我的情況下,這是錯誤的。
此外,我的實例需要由Autoscaling組的啓動配置分配的公有IP,但這對我的設置很特殊。
是的,我不能從實例到達ecs.eu-central-1.amazonaws.com,我得到一個超時。儘管VPC ACL完全開放,但允許所有流量。自動調節組和實例的安全組也一樣。我還能在哪裏搜索? – cari
您是否使用iptables/local防火牆來限制實例的傳出?你能從本地實例訪問https://www.google.com嗎?實例本身是否有安全組?那裏的出境規則是什麼? –
好吧,這些實例擁有公共IP,但無法訪問互聯網。如果我手動附加一個彈性IP到實例,他們可以。但由於實例是從自動縮放開始的,因此我需要另一個解決方案來解決這個問題。你有想法嗎? – cari