2010-10-15 17 views
0

Quelqu'un a-t-il ou connaît-il un bon modèle/plan pour effectuer des mises à niveau automatiques du serveur? Dans ce cas, je suis en train de mettre à jour un serveur python/django, mais je vais devoir appliquer cette mise à jour à de nombreuses machines, et je veux être sûr que l'opération est entièrement testable et récupérable en cas de problème.Script de mise à niveau du serveur

Am qui dépeignent quelque chose le long des lignes de:

  • chercher à distance nouveau code
  • vérifier code de téléchargement (par exemple, hachage des fichiers)
  • Démolisation serveur, affichage "vous dialogue mise à niveau"
  • base de données de sauvegarde (s)
  • répertoire du code de sauvegarde
  • appliquer de nouvelles mises à jour de code
  • Vérifiez la mise à jour du code (par ex. hachage des fichiers)
  • appliquer la mise à jour de base de données (si nécessaire)
  • tests d'exécution
  • si le succès
    • serveur de démarrage
    • vérifier la mise à jour du serveur
  • autre
    • restaurer la base de données ancienne
    • restaurer l'ancien code
    • rapport d'erreur
    • serveur de démarrage
    • vérifier la restauration du serveur

Je suis sûr que ce n'est pas exhaustive, et il y a beaucoup d'autres conditions d'erreur à considérer, mais me demande si quelque chose comme ça existe déjà comme une liste formalisée de processus/meilleures pratiques à suivre? Idéalement, tout cela devrait bien sûr être fait par un seul appel de script.

+0

Vous pouvez avoir plus de chance en demandant ceci sur http://serverfault.com –

Répondre

2

Une fois que vous avez un plan (et le vôtre semble plutôt bon), le Fabric site devrait être votre prochain arrêt.

+0

J'utilise le tissu pour déployer mon code à EC2 pendant que je tape. –

0

Je pense que vous couvrez à peu près tout. Identifiez ce qui est important pour vous et vos pratiques commerciales: c'est ce qui compte.