Heureusement, cette question n’a pas été posée auparavant, bien que j’ai cherché et j’ai trouvé que rien
Tout d’abord, mon problème: j’ai 2 instances linux EC2 fonctionnant derrière un équilibreur de charge élastique. ça marche bien! très heureux avec elle.
Mes problèmes commencent quand il s’agit de placer / mettre à jour le code de l’application sur les serveurs. En ce moment, je suis en train de modifier le code sur ma machine locale. en le compressant, en le téléchargeant sur mon hôte personnel, puis en descendant sur chaque instance ec2 et en décompressant ..
Y a-t-il un moyen plus facile de le faire? Est-ce que je peux créer une sorte de dossier partagé couvrant les deux instances?
En bref: quel est le moyen le plus simple de mettre à jour ma racine WWW sur 2 serveurs?
Merci beaucoup,
À M.
1. La seule façon de résoudre ce problème consiste à utiliser une continuous integration qui peut transférer vos fichiers avec rsync
et créer le projet sur les serveurs. Ce n’est pas encore le cas.
Il y a pas mal de plugins disponibles (PHPUnit, Code Coverage, Code Analysis, etc.):
Jenkins
Comment:
Référence:
2. Vous avez besoin d’un contrôle de version de code, cela vous aide à maintenir un code stable et à les diffuser de manière égale dans tous les environnements.
Il existe deux versions principales du système disponible: Git & Subversion
Que peut-on faire (pour votre situation):
svn add
& svn commit .
svn checkout
qui récupérera le code sur la machine. Si vous avez des mises à jour / modifications apscopes à un fichier, alors:
svn update
sur la machine où votre code est extrait du référentiel. Suivez ces étapes dans toute autre machine EC2.
Cheatsheet
GIT – http://help.github.com/git-cheat-sheets/ SVN – http://www.abbeyworkshop.com/howto/misc/svn01/
Utilisez un outil tel que Puppet pour gérer vos configurations de serveur.
@tornup
c’est une solution plus viable. Si vous ne connaissez pas Jenkins
ou Puppet
vous pouvez le faire comme suit:
allez sur bitbucket.com
et lancez un repository
créer un repository là-bas
poussez votre code source local vers ce référentiel avec sourcetree
à partir de vos deux machines, effectuez un git pull
sort (suivez les instructions du bitbucket)
après cela, modifiez votre code local, faites plusieurs commits pour le tester
puis allez à la fois sur vos serveurs et émettez git pull
........................................ bitbucket.repo/your main source ...........local...server1.server2 share the same source as bitbucket repo
repousser du repo local au bitbucket repo
Une fois que vous avez terminé avec cette configuration, essayez puppet
ou jenkins*
– puppet est plus pour les serveurs debout.