Question

Nous avons une application métier qui fonctionne essentiellement sur une pile d'os indépendant (tomcat + java + MySQL) mais nous avons couru toujours RedHat ou CentOS.

Il y a un client qui est insistant sur le fait de l'exécuter sur OpenSolaris pour ses propres raisons (un accord de soutien coûteux tout-est-inclus avec Sun).

Comment douloureux peut être une telle migration? Nous avons beaucoup de fichiers de configuration et des scripts support tels que:

  • apache
  • connecteur apache / tomcat
  • interaction email avec postfix
  • démarrage du service personnalisé / arrêt
  • un couple d'emplois Cron (sauvegarde, surveillance)
  • différents utilisateurs et autorisations (java, mysql, e-mail, sauvegarde ...)

Notre processus de construction génère un fichier tar.gz avec notre code d'affaires + quelques scripts shell modifier tous les fichiers OS-configuration.

Toute expérience à ce sujet.

Était-ce utile?

La solution

Les plus grands problèmes seront avec les options non-POSIX (non standard) que vous avez utilisé les outils GNU fournis sur Linux qui ne sont pas dans les commandes standard de Solaris. Vous pouvez décider que le portage des outils pertinents de l'ensemble GNU est plus simple que de modifier votre système. Si vous avez lacé le code avec des commandes chemin absolu (/usr/bin/ls) mais vous décidez d'utiliser les versions GNU à la place, vous devez trouver un moyen de fixer ceux-ci. Je serais extrêmement prudent de remplacer les versions OpenSolaris avec les versions GNU; vous ne savez pas quand vous casser quelque chose que le système repose sur. Donc, vous mettriez les commandes GNU dans un répertoire distinct - probablement pas /usr/local parce que c'est pour les propriétaires de machines à renseigner, pas comme une application-Monger - et prendre des dispositions pour que, pour être utilisé à la place des commandes du système. (Note:. Sur Solaris, /bin est un lien symbolique vers /usr/bin, je suppose que la même chose est vraie de OpenSolaris). Autant que je sache, Postfix n'est pas standard sur OpenSolaris, vous auriez donc devez vous assurer d'obtenir que installé aussi

Tout cela est faisable - il n'y a rien infranchissable. Mais beaucoup dépend de votre base de code.

Autres conseils

Nous courons à la fois, bien que nous n'utilisons OpenSolaris en tant que serveurs Web.

Le bon:

  • OpenSolaris est livré avec les outils gnu, donc, obtenir votre

    droit chemin et qui est ok.
  • La plupart des choses juste construire et exécuter très bien.

La moins bonne:

  • Assurez-vous que vous avez installé et utilisez bash. Sinon, tous les bashismes que vous utilisez que vous ne pensez pas que vous utilisiez vous mordre.

  • Assurez-vous que vous n'êtes pas en utilisant des chemins codés en dur / usr / bin ou / bin. Ces outils ne sont pas ceux GNU et ont donc différentes options. Utilisez / usr / gnu comme mentionné ci-dessus.

  • Vous n'avez pas le grand nombre de paquets que vous pouvez installer d'emblée comme vous le faites avec yum ou apt. Oui, vous avez un gestionnaire de paquets, il est tout simplement pas tout à fait si bien peuplée. Par conséquent, vous serez probablement installer des paquets à la main. Ils devraient installer, il est juste un peu plus de travail pour vos administrateurs système.

  • Êtes-vous sûr que OpenSolaris fonctionne bien sur votre matériel? Il vaut la peine d'un chèque. Vous trouverez peut-être que certains des pilotes matériels ne sont pas aussi bien testés.

Sinon, nous trouvons OpenSolaris d'être gentil. Il a beaucoup de bonnes idées.

Avez-vous regardé Nexenta - http://www.nexenta.org/os C'est la noyau OpenSolaris avec un userland Ubuntu.

OpenSolaris inclut tous les utilitaires GNU déjà, il suffit de pointer vos scripts dans / usr / gnu / bin

L'installation Postfix ne devrait pas poser de problème, et Apache / MySQL sont présents dans une base OpenSolaris installer (en vérité, les choses Stack Cool Web rend aussi facile à administrer que WAMP / Rails instantanée). Au-delà de ce qui, manifeste SMF (SMF est un remplacement pour les scripts rc peu comme le launchd de Mac OS X, mais vous pouvez toujours utiliser des scripts d'initialisation réguliers) peut rendre votre vie plus facile, étant donné que la spécification des dépendances et exécuter l'ordre est un peu plus agréable (ça va récursive démarrer / arrêter tous les services dépendants également).

Tomcat fonctionne certainement, bien que tout le monde je sais que sur OpenSolaris utilise GlassFish. YMMV, mais le déploiement d'une .war est à peu près le même partout.

Il ne peut pas être une mauvaise première étape de déploiement dans une zone de marque LX (pensez prisons FreeBSD ou Linux vServer pour une comparaison), les zones de marque LX peuvent exécuter des binaires Linux, et sont explicitement basés CentOS / RHEL.

Autre que cela, OpenSolaris est un dom0 Xen depuis B77 ou quelque chose, et mettre CentOS / RHEL dans un domU est mort simple, si c'est une option.

Vous pouvez également obtenir tous les goodies Solaris avec elle (DTrace, ZFS, la virtualisation de réseau [via CrossBow], etc.). Qui sait? Vous pouvez même l'aimer! Java est Java, de sorte que ne devrait pas poser de problèmes.

  • vous aurez probablement à réécrire une grande partie de vos scripts (créations d'utilisateur, le lancement du service) car il est probablement différent dans CentOS et OpenSolaris.

  • comme précédemment écrit, demandez à votre client d'installer les outils GNU et vous aurez moins de travail à réécrire vos scripts.

  • Les fichiers de configuration os peuvent aussi ne pas être dans le même format, vous devrez vérifier.

  • votre fichier tar.gz doit être extractibles sans problèmes, mais encore une fois, vous aurez moins de surprises si vous utilisez des outils GNU. certains OS unix ont goudron avec certaines limites

  

Toute expérience à ce sujet.

(peut-être un peu hors-sujet)

nous emballent et distribuent notre java / tomcat / application postgresql / unix avec tous les binaires référencés dans nos scripts. cela implique d'avoir le système 1 de construction pour chaque système d'exploitation que nous soutenons, ce implie nous soutenons notre application, mais aussi les binaires externes, mais à la fin nous n'avons pas de mauvaises surprises @ clients.

nous leur demandons également de faire toutes les opérations de racine (création d'utilisateurs, création de répertoire, configuration sendmail, réglage du système) avant d'installer l'application. nous avons écrit arrêt / scripts de démarrage pour tous les OS pris en charge, et leur installation est la seule chose que nous faisons dans la racine sur la machine client.

En dehors du fait que vous êtes un troll, quelqu'un juste dit plus haut que (Open) Solaris a: - ZFS - DTrace

Nous pouvons comprendre que vous avez peur de ne pas perdre votre emploi RHCE, mais vous me prouvé encore une fois que ma décision en tant qu'employeur d'ignorer toutes les certifications lors des entretiens avec les gens était un bon. Il semble qu'un grand pourcentage de ces personnes (en particulier dans le monde Microsoft) ne sont pas si ... l'esprit ouvert, pour le mettre bien.

Cordialement, Alex

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top