Depuis le tableau de bord Foreman, nous pouvons exécuter des commandes Linux sur l'hôte enregistré, mais pour cela, nous devons installer le plugin d'exécution à distance dans votre Foreman ou Katello Server.Avec l'aide de ‘foreman-installer ', nous pouvons installer le plug-in d'exécution à distance sur l'installation existante et nouvelle de Foreman ou Katello serveur.
L'option Exécuter le travail dans le tableau de bord Foreman nous permet d'exécuter immédiatement des commandes Linux sur les hôtes de registre. Cette option devient utile chaque fois que nous voulons mettre à jour ou exécuter des commandes sur tout ou groupe d'hôtes à la volée.
Dans ce tutoriel, je suppose que soit le contremaître ou Katello Le serveur est déjà installé et les clients y sont enregistrés. Veuillez consulter les URL ci-dessous pour les éléments suivants
- Étapes d'installation et de configuration du serveur Foreman sur CentOS 7.x
- Comment utiliser Katello Server sur CentOS 7.x
Dans mon cas, j'ai un serveur katello déjà installé qui est opérationnel et un client y est enregistré. Reportez-vous aux étapes suivantes pour installer le plug-in d'exécution à distance et exécuter des commandes sur l'hôte enregistré avec l'option "Exécuter un travail" depuis Foreman ou Katello Dashboard.
Étape 1 Installer le plug-in d'exécution à distance
La commande ci-dessous installera et activera l'option d'exécution à distance (Run Job) dans votre serveur Foreman ou Katello.
[[email protected] ~]# foreman-installer --enable-foreman-plugin-remote-execution --enable-foreman-proxy-plugin-remote-execution-ssh
Une fois la commande ci-dessus exécutée avec succès, nous obtiendrons la sortie comme ci-dessous :
Étape 2 Configurer les clés SSH pour les hôtes cibles ou enregistrés
SSH Le mécanisme est utilisé pour exécuter des commandes sur les hôtes enregistrés ou cibles avec l'option Exécuter la tâche dans le serveur contremaître. Chaque fois que nous installons le plugin d'exécution à distance, le proxy intelligent configure les clés ssh par défaut sous le dossier "/usr/share/foreman-proxy/.ssh “. Nous pouvons créer nos propres clés ssh en suivant les étapes suivantes :
[[email protected] ~]# cd /usr/share/foreman-proxy/.ssh [[email protected] .ssh]# sudo -u foreman-proxy ssh-keygen -f ~foreman-proxy/.ssh/id_rsa_foreman_proxy -N ''
Si SELinux est en cours d'exécution sur votre serveur Foreman, exécutez la commande ci-dessous.
[[email protected] ~]# restorecon -RvF ~foreman-proxy/.ssh
Redémarrez maintenant les services httpd, foreman-tasks et foreman-proxy.
[[email protected] ~]# systemctl restart httpd [[email protected] ~]# systemctl restart foreman-tasks [[email protected] ~]# systemctl restart foreman-proxy
Étape :3 Copiez la clé publique ssh du serveur Foreman sur les serveurs hôtes ou cibles enregistrés.
Utilisez le ssh-copy-id commande pour copier ou distribuer la clé publique ssh aux hôtes enregistrés. Dans mon cas, j'ai CentOS 7 Server enregistré sur mon serveur de contremaître avec le nom "web.example.com"
[[email protected] ~]# ssh-copy-id -i ~foreman-proxy/.ssh/id_rsa_foreman_proxy.pub [email protected]
Assurez-vous également que le dossier "/var/tmp/foreman-proxy/ " a le propriétaire du fichier et les autorisations de propriété du groupe sont définies sur "foreman-proxy ”
[[email protected] ~]# ls -ld /var/tmp/foreman-proxy/ drwxr-xr-x 3 foreman-proxy foreman-proxy 65 Mar 12 22:36 /var/tmp/foreman-proxy/ [[email protected] ~]#
Étape 4 :Exécutez maintenant les commandes sur l'hôte enregistré avec l'option Exécuter la tâche
Connectez-vous au tableau de bord du contremaître et vérifiez d'abord si Dynflow et ssh la fonctionnalité est disponible dans le proxy intelligent.
Depuis l'onglet infrastructure –> cliquez sur Proxies intelligents
Si la fonctionnalité Dynflow et SSH n'est pas visible dans les proxys intelligents, cliquez sur Modifier et vérifiez si vos organisations et emplacements sont mis à jour, puis cliquez sur Soumettre
Exécutons maintenant les commandes sur les hôtes de registre. Depuis l'onglet Hôtes –> Sélectionnez Tous les hôtes
Sélectionnez et cliquez sur l'hôte sur lequel vous souhaitez exécuter des commandes
cliquez sur "Exécuter la tâche option ”
Supposons que je veuille exécuter trois commandes (uptime , uname -r et nom d'hôte ) sur l'hôte. Spécifiez les commandes dans le champ des commandes séparées par un point-virgule (;). L'exemple est illustré ci-dessous :
Cliquez sur Soumettre
Une fois les commandes exécutées avec succès, nous recevrons un message de réussite sur le tableau de bord, comme indiqué ci-dessous
Pour afficher la sortie des commandes, cliquez sur l'option Hôtes dans la fenêtre ci-dessus, puis cliquez sur l'hôte (dans mon cas, web.example.com)
C'est tout de ce tutoriel, j'espère que vous comprenez comment activer le plugin d'exécution à distance et exécuter les commandes Linux à partir de Foreman Dashboard. Veuillez partager vos précieux commentaires et commentaires 🙂