2016-02-04 6 views
15

In tutti i tutorial per ECS è necessario creare un cluster e, successivamente, un gruppo di scalabilità automatica, che genera le istanze. In qualche modo in tutte queste esercitazioni le istanze si presentano magicamente nel cluster, ma nessuno dà un suggerimento su cosa sta collegando il gruppo di scalabilità automatica e il cluster.Come posso collegare il mio gruppo di scalabilità automatica al mio cluster ecs?

Il mio gruppo di scalabilità automatica genera le istanze come previsto, ma non si visualizzano sul mio cluster ecs, che detiene le definizioni della finestra mobile.

Dov'è la connessione che mi manca?

risposta

3

Bene, l'ho scoperto. Tutto su ecs-agent e il suo file di configurazione /etc/ecs/ecs.config (Questo file verrà creato attraverso il campo Userdata, quando si creano istanze EC2, anche da una configurazione di scalabilità automatica.) Leggi le sue opzioni di configurazione qui: http://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html

Ma si può anche copiare un ecs.config memorizzato su Amazon S3, fare in questo modo (seguenti linee vanno in Userdata campo):

#!/bin/bash 
yum install -y aws-cli 
aws configure set default.s3.signature_version s3v4 
aws configure set default.s3.addressing_style path 
aws configure set default.region eu-central-1 
aws s3 cp s3://<bucketname>/ecs.config /etc/ecs/ecs.config 

nota: Signature_version v4 è specifico per un po ' regioni, come eu-central-1. Questo ofc funziona solo se il vostro ruolo IAM per l'istanza (nel mio caso la sua ecsInstanceRole) ha l'AmazonS3ReadOnlyAccess destra


Il modo console GUI AWS per questo sarebbe: Utilizzare la procedura guidata cluster alla https://console.aws.amazon.com/ecs/home#/firstRun. Creerà un grou per la scalabilità automatica per il cluster, un loadbalancer di fronte ad esso e lo collegherà in modo ottimale.

10

Un gruppo di scalabilità automatica non è strettamente associato a un cluster. Tuttavia, un gruppo di scalabilità automatica può essere configurato in modo tale che ogni istanza avviata si registri in un cluster specifico.

La registrazione di un'istanza in un cluster è responsabilità dello ECS Agent in esecuzione sull'istanza. Se si utilizza lo Amazon ECS-optimized AMI, l'agente ECS verrà avviato quando l'istanza si avvia e si registra nello configured cluster. Tuttavia, è possibile utilizzare l'agente ECS anche su altre AMI Linux seguendo lo standard the installation instructions.

+0

Per completare un po 'di più la risposta, questo è il comando necessario per ri (iniziare) l'agente: 'sudo iniziare ecs'. Usalo dopo aver configurato l'agente. – RoberMP

14

Ho sofferto per questo tempo. La chiave per ottenere le istanze nel gruppo di scalabilità automatica associato al tuo cluster ECS è nei dati utente. Quando si crea la configurazione di avvio quando si arriva al passaggio 3 "Configura dettagli", fare clic sulla scheda Avanzate e immettere un semplice script di bash come segue per i dati utente.

#!/usr/bin/env bash 
echo ECS_CLUSTER=your_cluster_name >> /etc/ecs/ecs.config 

Tutti i parametri disponibili per la configurazione dell'agente può essere trovato qui http://docs.aws.amazon.com/AmazonECS/latest/developerguide/ecs-agent-config.html

+0

sì, sono già arrivato a quel punto. ma grazie per aver aggiunto questo qui. puoi anche caricare ecs.config da Amazon S3. Lo aggiungo alla mia risposta. – cari