Impostazione locale di un ambiente [AWS]

2

Attualmente, la nostra infrastruttura si trova su AWS (EC2, ElasticBeanstalk, RDS) e consiste in alcuni servizi diversi che lavorano insieme per creare il nostro ambiente di produzione, questi consistono in:

  • Server MySQL
  • server PHP / Apache
  • pochi server NodeJS

Attualmente per lo sviluppo, è un vero problema impostare un ambiente locale che riproduca quello che abbiamo impostato per la produzione. Stiamo utilizzando MAMP per configurare mysql + apache, ma per configurare i server dei nodi e configurare le cose in locale è piuttosto dispendioso in termini di tempo.

Mi piacerebbe mollare MAMP per una soluzione che sia più simile ai box ec2 su cui verrà eseguito ogni servizio. Ho cercato di impostare contenitori docker su vagabondi, perché penso che sia la via da seguire.

La mia domanda è: qual è il modo migliore per configurare un'architettura in stile micro-servizio per lo sviluppo locale usando la finestra mobile Vagrant + (o qualunque altro strumento è meglio) in modo che l'ambiente locale corrisponda strettamente alla produzione?

    
posta Sneaksta 12.05.2015 - 01:56
fonte

1 risposta

3

Vagrant ha diverse opzioni di provisioning , incluso Chef o semplicemente script di Shell. Se stai utilizzando una di queste tecniche per eseguire il provisioning delle istanze EC2, dovresti essere in grado di utilizzare la stessa tecnica per il provisioning delle istanze avviate da Vagrant.

Se, d'altra parte, stai impostando manualmente le istanze EC2, sei sfortunato.

Nota, questo presuppone che tu non sia strettamente integrato con altri servizi AWS come DynamoDB. Se ti affidi ai servizi AWS proprietari, potresti non essere in grado di simulare adeguatamente il tuo ambiente di produzione.

Per sapere se è necessario utilizzare un'istanza di Vagrant per microservizio o un'istanza di Vagrant per tutti i servizi, a seconda che i microservizi possano coesistere o meno. Se possono, li metterei nel minor numero possibile di istanze di Vagrant solo per facilitare la gestione del numero di istanze di Vagrant. Se, tuttavia, hanno requisiti in conflitto (ad esempio nelle versioni Linux), andrei con 1 istanza di Vagrant per microservice.

    
risposta data 12.05.2015 - 03:02
fonte

Leggi altre domande sui tag