Implementazione di applicazioni con Puppet

3

Recentemente ho svolto ricerche su puppet e penso che potrebbe essere utile integrarlo nella mia pipeline di distribuzione.

Attualmente, distribuisco le mie app aggiungendo manualmente gli utenti, creando vhosts, impostando le directory, e poi git clonando il mio repository da GitHub. Distribuisco le modifiche con una semplice estrazione Git (gli hook Git si occupano delle migrazioni del database, della cancellazione della cache, ecc.).

Con puppet, potrei installare un manifest per fare la creazione di directory, i permessi e la gestione dell'host virtuale per me. Per distribuire un'applicazione in un ambiente di sviluppo / sviluppo, estrarre il manifest da GitHub ed eseguirlo localmente. Stavo anche pensando di aggiungere il processo manifest di Puppet al gancio Git così ogni tiro, Puppet potrebbe garantire che i permessi delle directory siano OK.

Ci sono problemi con questo approccio? Cose che potrei fare meglio?

    
posta Brandon Wamboldt 08.02.2013 - 16:51
fonte

1 risposta

2

Sembra un approccio efficace; Mi piace la creatività. Dal momento che hai chiesto commenti, ne offrirò alcuni:

1) Mentre puppet è uno strumento molto potente, sembra un po 'eccessivo per la sola creazione di directory e permessi. Un semplice script di bash potrebbe fare il trucco in tante righe quante sono le puppet, senza dipendenza puppet eseguibile.

2) Prendi in considerazione l'utilizzo di Puppet anche per la tua implementazione: PuppetLabs fornisce un manifest per controllare un repository git . Quindi puoi eseguirlo periodicamente o in qualche altra forma di trigger. Ovviamente ciò invertirà la direzionalità della distribuzione, trasformandola da modello "push" a modello "pull". Può avere vantaggi, inclusa la semplicità.

3) Un uso più avanzato di Puppet ti consente di configurare da zero l'intero ambiente di produzione, inclusa l'installazione dell'app. Ciò creerebbe un'istanza completamente automatizzata della tua app, rendendo le istanze virtualizzate facili e portabili e determinando la semplicità del ridimensionamento orizzontale.

    
risposta data 09.02.2013 - 04:04
fonte

Leggi altre domande sui tag