Rubrique précédente: Installation d'appliances pour les distributions Linux d'Ubuntu

Rubrique suivante: Kit d'appliances

Installation de l'appliance Solaris

Fichiers
Compatibilité

Les versions apk-*-solaris sont compatibles avec les distributions de système d'exploitation suivantes :

L'installation d'APK nécessite l'un des éléments suivants :

Préparation de l'image

Les étapes suivantes peuvent varier, selon la méthode d'installation initiale du système d'exploitation. Elles ne sont pas effectuées par le script d'installation d'APK, et restent à la discrétion de l'opérateur, parce que certaines d'entre eux sont invasives et peuvent être destructrices, si elles sont réalisées accidentellement sur un système actif (plutôt que sur l'image en cours de préparation) - par conséquent, il peut être inopportun de les exécuter dans un script automatisé.

Ignorez toutes les étapes inappropriées.

REMARQUE : Après avoir été nettoyé, le volume peut être "compacté" pour produire une image du volume de démarrage plus petite pour l'appliance, assurez-vous toutefois qu'au moins 5-10 Mo de l'espace disponible est conservé, afin d'avoir l'espace pour installer APK, ainsi que pour les fichiers journaux, les fichiers temporaires, etc.

Installation d'APK

Montez l'image du SE dans votre système de fichiers. Si l'image est déjà installée en tant que volume sur une grille AppLogic, vous pouvez y accéder en utilisant la commande 'vol manage'. Copiez les fichiers APK dans le répertoire /tmp sur l'image proprement dite ou dans un répertoire temporaire sur l'hôte contenant l'image montée. Si l'image est déjà sur une grille, copiez les fichiers sur l'image proprement dite à l'aide de l'interface Web. (Si ceci n'est pas fait sur une grille : notez que les opérations suivantes doivent être réalisées en tant qu'utilisateur 'root')

Décompactez l'archive binaire de l'APK dans le répertoire racine de l'image, par ex. :

cd /mnt/vol
gtar -zxf tmp/apk-2.0.1-solaris.tar.gz 

Installation sur une image OpenSolaris préparée pour s'exécuter en tant qu' appliance paravirtualisée (`uname -i` == i86xpv)

bash tmp/apk-install pvm 

Si l'installation s'effectue sur une image Solaris 10 ou OpenSolaris qui sera exécutée en tant que machine virtuelle aidée par un matériel (HVM) :

bash tmp/apk-install 

S'il est exécuté avec l'option 'pvm' et si l'image cible comporte un noyau para-virtualisé, le script remplacera le fichier de configuration de démarrage. L'ancien sera enregistré asboot/grub/menu.lst.apksave. Si ce n'est pas ce que vous souhaitiez (et si vous allez exécuter l'appliance en tant que HVM) restaurez le fichier manuellement. Si aucun noyau para-virtualisé n'est présent mais que 'pvm' a été spécifié, le script d'installation imprimera un avertissement ; l'installation ne sera pas interrompue et l'image sera encore utilisable comme appliance HVM.

Le script d'installation (et les fichiers TAR, s'ils ont été copiés dans l'image proprement dite) peut/peuvent maintenant être supprimés :

rm tmp/apk-install  tmp/apk-*.tar.gz 

Démontez l'image et importez-la dans votre grille AppLogic (ou fermez simplement le shell 'vol manage', si l'image se trouvait déjà sur votre grille et a été modifiée à l'aide de 'vol manage').

Si l'image était celle d'une appliance existante : modifiez la classe (en utilisant l'éditeur d'interface utilisateur graphique) et supprimez le noyau et les noms de fichier initrd. Définissez le mode de configuration sur 'dhcp'.

Personnalisation du comportement de l'appliance - Référence rapide

Pour de plus amples détails, veuillez consulter le Manuel de l'utilisateur.

Configuration initiale de l'appliance

Si le fichier /etc/sysconfig/applogic_init est présent, le script d'initialisation APK l'interprète comme un script d'inclusion shell (avec la commande "."). Vous pouvez définir les paramètres suivants dans /etc/sysconfig/applogic_init :

APK_AUTH_KEY_PATH

Emplacement dans lequel stocker la clé publique d'accès SSH de l'appliance. La commande '3 t comp ssh' se connecte aux appliances à l'aide de la clé privée correspondante. La valeur par défaut est /root/.ssh. Si elle est définie sur une chaîne vide, la clé n'est stockée nulle part.
Si l'emplacement spécifié est un fichier existant, son propriétaire et ses autorisations sont préservés. Dans le cas contraire le fichier est créé avec le propriétaire 'racine'.

APK_CONFIG_FILES

Liste de fichiers séparée par des espaces auxquels appliquer des propriétés de l'appliance. Ceci remplace la liste du fichier de configuration spécifiée dans la boîte de dialogue "Modifier le périmètre" dans l'interface utilisateur graphique (pour les appliances qui n'utilisent pas APK). Une appliance dotée d'APK utilise la liste APK_CONFIG_FILES située dans l'appliance proprement dite et non celle spécifiée dans l'interface utilisateur graphique.
Important : si vous installez APK dans une appliance existante - contrôlez dans le descripteur de classe (à l'aide de l'interface utilisateur graphique de l'éditeur) la présence de fichiers de configuration dans l'onglet "Fichiers de configuration" de la boîte de dialogue Classe d'affichage / Modifier le périmètre. Transférez la liste de fichiers vers le paramètre APK_CONFIG_FILES dans l'appliance.

Important : le fichier /etc/sysconfig/applogic_init est exécuté avant que des données de configuration soient récupérées ou appliquées, par conséquent le script ne peut compter sur la présence d'aucun des fichiers de configuration de l'appliance. N'utilisez pas ce fichier pour exécuter un code d'initialisation, mais uniquement pour les variables de configuration définies ci-dessus.

Exemple

/etc/sysconfig/applogic_init: 
APK_CONFIG_FILES=/etc/httpd/conf.d/myconfig.conf 
APK_AUTH_KEY_PATH=/root/.ssh/alternate_keys 

Contrôle postérieur au démarrage de l'appliance

Si le fichier /etc/sysconfig/applogic_appliance est présent, le script APK "late init"  l'interprète comme script de shell include (avec la commande "."), après le démarrage de tous les autres services de l'appliance. Le statut de retour du script indique si l'appliance doit être considérée comme "démarrage OK" ou "échoué". Si le script imprime un message dans stderr et renvoie une erreur, la dernière ligne de ce message sera utilisée comme message d'erreur envoyé au contrôleur.

Fichier de contrôle postérieur au démarrage de l'échantillon pour une appliance de serveur Web - Vérifie que le serveur est opérationnel et répond à HTTP GET sur la page d'accueil :

if ! wget -q -O /dev/null http://localhost/ ; 
echo "start failed - Web server is not responding" >&2
renvoie 1
fi
renvoie 0 

Important : certaines appliances du catalogue système utilisent un script personnalisé situé dans /appliance pour initialiser les services. Cette option n'est plus prise en charge. Ce répertoire est supprimé lorsque l'APK est installé, pour conserver l'intégrité de la structure du répertoire racine et sa conformité à la norme de hiérarchie de système de fichiers. Il est possible de déplacer le code de ces scripts dans /etc/sysconfig/applogic_appliance, pour émuler l'ancien comportement sauf cela n'est pas l'objet du fichier de contrôle post-démarrage et ce n'est pas recommandé. Désormais un service installé doit avoir son propre script d'initialisation et doit en général pouvoir fonctionner entièrement de façon autonome en dehors de CA 3Tera AppLogic.