2009-12-22 6 views
2

Nous développons une application de mise en réseau basée sur Linux qui fonctionnera sur plusieurs serveurs. Nous devons développer une solution pour la mise à jour des applications distantes. Tout ce que je peux penser maintenant utilise des paquets rpm/deb mais nous préférons ne pas le verrouiller à une solution spécifique à la distribution. Outre la copie de fichiers via SSH par un script Bash, que recommanderiez-vous?Mise à jour logicielle à distance sur les machines Linux

Merci.

+1

Vous obtiendrez probablement une meilleure réponse si vous utilisez une solution ciblée sur votre plateforme de développement spécifique: Java/Python/Mono/Native? – pufferfish

+0

Cela n'a rien à voir avec la programmation et tout ce qui a trait à l'administration du système. Voter pour passer à ServerFault. –

+0

@David Thornley: Ces programmeurs ne décident-ils pas comment emballer et distribuer leur propre logiciel? À mon humble avis, il a à voir avec la programmation, tout comme la gestion de la version a. – jackhab

Répondre

3

Distros varie énormément en termes d'installation et de dépendances, je vous recommande en fait de créer des packages spécifiques à la distribution et de l'intégrer à son outil de mise à jour - en fin de compte, cela vous épargnera beaucoup de problèmes.

Avec la facilité de la virtualisation, il est assez facile de tourner un vmware/image VirtualBox Foor les différentes distros pour créer/emballage d'essai pour chacun d'eux

1

Découvrez Blueprit et Blueprint I/O. Blueprint est un outil qui détecte tous les paquets, les modifications de fichiers et les installations sources sur un serveur. Il les empaquette dans un format réutilisable appelé blueprint qui peut être appliqué à un autre serveur. Blueprint I/O est un outil pour pousser et tirer d'un autre serveur. Les deux sont open-source. J'espère que cela t'aides.

https://github.com/devstructure/blueprint (Plan directeur @ Github)

https://github.com/devstructure/blueprint-io (Plan E/S @ Github)

0

Je suis huit ans de retard, mais vérifiez Ansible.

Ansible est une plateforme d'automatisation informatique radicalement simple qui facilite le déploiement de vos applications et systèmes . Évitez d'écrire des scripts ou du code personnalisé pour déployer et mettre à jour vos applications - automatiser dans un langage qui se rapproche de l'anglais simple, en utilisant SSH, sans agents à installer sur des systèmes distants.

En outre, vous pouvez vérifier cette guide.

Questions connexes