Moteur de rapports dans Satellite 6.5 : Qu'est-ce que c'est et à quoi ça sert.

Red Hat Satellite est une solution de gestion système qui simplifie le déploiement, la mise à l'échelle et la gestion de l'infrastructure Red Hat dans des environnements physiques, virtuels et cloud. Satellite permet aux utilisateurs de configurer et de mettre à jour les systèmes pour assurer leur fonctionnement efficace et sécurisé conformément à divers standards. En automatisant la plupart des tâches liées à la maintenance opérationnelle du système, Satellite aide les organisations à améliorer leur efficacité, réduire leurs coûts opérationnels, et à répondre plus rapidement aux demandes stratégiques de l'entreprise.

Moteur de rapports dans Satellite 6.5 : Qu'est-ce que c'est et à quoi ça sert.

Bien que vous puissiez effectuer des tâches administratives de base à l'aide des services Red Hat inclus dans l'abonnement Red Hat Enterprise Linux, Red Hat Satellite ajoute de larges capacités de gestion sur l'ensemble du cycle de vie.

Parmi ces capacités :

  • Installation de patches ;
  • Gestion des abonnements ;
  • Initialisation ;
  • Gestion de la configuration.

Depuis une seule console, vous pouvez gérer des milliers de systèmes aussi facilement qu'un seul, augmentant ainsi la disponibilité, la fiabilité et offrant des possibilités d'audit système.

Et maintenant, nous avons le nouveau Red Hat Satellite 6.5 !

Une des nouveautés intéressantes dans Red Hat Satellite 6.5 est le nouveau moteur de rapports.

Le serveur Satellite sert souvent de centre où converge toute l'information sur les systèmes d'entreprise Red Hat, et ce tout nouveau moteur permet de créer et d'exporter des rapports contenant des informations sur les hôtes clients de Satellite, les abonnements aux logiciels, ainsi que les défauts logiciels applicables (applicable errata), etc. Les rapports sont programmés dans un langage intégré Ruby (ERB).

Satellite 6.5 est livré avec des rapports préconfigurés, et le moteur donne aux utilisateurs la possibilité de personnaliser ces rapports ou de créer les leurs. Les rapports intégrés de Satellite 6.5 sont générés au format CSV, cependant dans cet article, nous allons montrer comment créer des rapports au format HTML.

Rapports intégrés de Satellite 6.5

Satellite 6.5 comprend quatre rapports intégrés :

  • Errata applicables – liste des défauts logiciels (errata) à corriger sur les hôtes de contenu (filtrable par hôtes ou défauts) ;
  • Statuts des hôtes – rapport sur l'état des hôtes Satellite (filtrable par hôtes) ;
  • Hôtes enregistrés – informations sur les hôtes Satellite : adresse IP, version du système d'exploitation, abonnements logiciels (filtrable par hôtes) ;
  • Abonnements – informations sur les abonnements logiciels : nombre total d'abonnements, nombre disponibles, codes SKU (filtrables selon les paramètres des abonnements).

Pour générer un rapport, ouvrez le menu Surveillance, choisissez Modèles de rapports et cliquez sur le bouton Générer à droite du rapport souhaité. Laissez le champ de filtrage vide pour inclure toutes les données dans le rapport, ou saisissez quelque chose pour limiter les résultats. Par exemple, si le rapport des Hôtes inscrits doit afficher uniquement les hôtes RHEL 8, indiquez le filtre os = RedHat and os_major = 8, comme indiqué dans la capture d'écran ci-dessous :

Moteur de rapports dans Satellite 6.5 : Qu'est-ce que c'est et à quoi ça sert.

Une fois le rapport généré, vous pouvez le télécharger et l'ouvrir dans un tableur comme LibreOffice Calc, qui importe les données CSV et les répartit dans les colonnes, par exemple, comme le rapport Errata applicables dans la capture d'écran ci-dessous :

Moteur de rapports dans Satellite 6.5 : Qu'est-ce que c'est et à quoi ça sert.

Notez que dans les propriétés des rapports intégrés, l'option est activée Par défaut (Par défaut), donc ils sont automatiquement ajoutés à toutes les nouvelles organisations et emplacements que vous créez dans Satellite.

Personnalisation des rapports intégrés

Nous allons examiner la personnalisation en utilisant le rapport intégré comme exemple Abonnements. Par défaut, ce rapport reflète le nombre total d'abonnements (1), ainsi que le nombre disponibles, c'est-à-dire d'abonnements libres (2). Nous ajouterons une colonne supplémentaire avec le nombre d'abonnements utilisés, qui est défini comme (1) – (2). Par exemple, si nous avons au total 50 abonnements RHEL et 10 d'entre eux sont libres, alors 40 abonnements sont utilisés.

Étant donné que l'édition des rapports intégrés est bloquée et qu'il n'est pas conseillé de les modifier, nous devrons cloner le rapport intégré, lui donner un nouveau nom, puis modifier cette copie clonée.

Donc, si nous voulons modifier le rapport Abonnements, il faut d'abord le cloner. Ouvrez donc le menu Surveillance, choisissez Modèles de rapports et dans le menu déroulant à droite du modèle Abonnements choisissez Clone. Ensuite, saisissez le nom du rapport cloné (appelons-le Abonnements personnalisés) et entre les lignes Disponible et Quantité ajoutez la ligne 'Utilisé' : pool.quantity — pool.available, – notez la virgule à la fin de la ligne. Voici à quoi cela ressemble dans la capture d'écran :

Moteur de rapports dans Satellite 6.5 : Qu'est-ce que c'est et à quoi ça sert.

Ensuite, appuyez sur le bouton Submit, ce qui nous ramène à la page Modèles de rapports. Cliquez sur le bouton Générer à droite du rapport récemment créé Abonnements personnalisés. Laissez le champ de filtre des Abonnements vide et cliquez sur Submit. Cela crée et charge le rapport, qui contient la colonne ajoutée Utilisé.

Moteur de rapports dans Satellite 6.5 : Qu'est-ce que c'est et à quoi ça sert.

La documentation de Ruby intégrée se trouve dans l'onglet Aide dans la fenêtre d'édition du rapport. Elle contient un aperçu de la syntaxe ainsi que des variables et méthodes disponibles.

Création de votre propre rapport

Examinons maintenant la création de rapports personnalisés à travers un exemple de rapport sur les rôles Ansible attribués aux hôtes dans Satellite. Ouvrons le menu Surveillance, cliquons Modèles de rapports et ensuite appuyons sur le bouton Create Template. Appelons notre rapport Rapport sur les Rôles Ansible et insérons-y le code ERB suivant :


Ce code génère un rapport sur les hôtes, affichant pour eux l'attribut « all_ansible_roles ».

Ensuite, nous passons à l'onglet Inputs et cliquons sur le bouton + Add Input. Indiquons que le nom est égal à hosts, et le type de description est Filtrer par hôtes (facultatif). Ensuite, cliquons Submit et ensuite appuyons sur le bouton Générer à droite du rapport que nous venons de créer. Ensuite, nous pouvons définir un filtre pour les hôtes ou simplement cliquer sur Submit, pour générer un rapport sur tous les hôtes. Le rapport généré apparaîtra dans LibreOffice Calc comme suit :

Moteur de rapports dans Satellite 6.5 : Qu'est-ce que c'est et à quoi ça sert.

Création de rapports HTML

Le moteur de rapports Satellite permet de générer des rapports non seulement au format CSV. À titre d'exemple, nous allons créer un rapport basé sur le rapport intégré Host Statuses, mais seulement sous forme de tableau HTML avec un code couleur pour les cellules basé sur l'état. Pour cela, nous clonons État des hôtes, puis remplaçons son code ERB par le suivant :

<!DOCTYPE html>
<html>
<head>
   <title>État des hôtes</title>
   <style>
       th {
           background-color: black;
           color: white;
       }
       td.green {
           background-color:#92d400;
           color:black;
       }
       td.yellow {
           background-color:#f0ab00;
           color:black;
       }
       td.red {
           background-color:#CC0000;
           color:black;
       }
       table,th,td {
               border-collapse:collapse;
               border: 1px solid black;
       }
   </style> 
</head>
<body>
<table>
<tr> 
       <th> Nom d'hôte </th>
       <th> Statut </th> 
<% load_hosts(search: input('hosts'), includes: :host_statuses).each_record do |host| -%>
   <% all_host_statuses_hash(host).each do |key, value|  -%>
       <th> <%= key %> </th>
   <% end -%>
   <% break -%>
<% end -%>
</tr>

<%- load_hosts(search: input('hosts'), includes: :host_statuses).each_record do |host| -%>
   <tr> 
   <td> <%= host.name   %> </td> 
   <% if host.global_status == 0 -%>
       <td class="green"> OK </td>
   <% elsif host.global_status == 1 -%>
       <td class="yellow"> Avertissement </td>
   <% else -%>
       <td class="red"> Erreur (<%= host.global_status %>) </td>
   <% end -%>

   <% all_host_statuses_hash(host).each do |key, value|  -%>
       <% if value == 0 -%>
           <td class="green"> OK </td>
       <% elsif value == 1  -%>
           <td class="yellow"> Avertissement </td>
       <% else -%>
           <td class="red"> Erreur (<%= value %>) </td>
       <% end -%>
   <% end -%>
   </tr>
<% end -%>

</table>
</body>
</html>

Ce rapport génère du HTML, qui apparaîtra dans le navigateur comme suit :

Moteur de rapports dans Satellite 6.5 : Qu'est-ce que c'est et à quoi ça sert.

Exécution de rapports à partir de la ligne de commande

Pour exécuter un rapport à partir de la ligne de commande, on utilise la commande hammer, et l'utilitaire cron permet d'automatiser ce processus.

Utilisez la commande hammer report-template generate —name « », par exemple :

# hammer report-template generate —name "Host statuses HTML"

Le contenu du rapport sera reflété sur la console. Les informations peuvent être redirigées dans un fichier, puis configurer cron pour qu'il exécute un script shell pour générer le rapport et l'envoie par e-mail. Le format HTML s'affiche parfaitement dans les clients de messagerie, ce qui permet d'organiser une livraison régulière de rapports aux parties prenantes sous une forme agréable à lire.

Ainsi, le moteur de rapports dans Satellite 6.5 est un outil puissant pour exporter des données importantes que les entreprises détiennent dans Satellite. Il est très flexible et permet d'utiliser à la fois des rapports intégrés et leurs versions améliorées. De plus, les utilisateurs peuvent créer leurs propres rapports à partir de zéro. Des détails sur le moteur de reporting Satellite sont disponibles dans notre vidéo sur YouTube.

Ne manquez pas le webinaire sur la nouvelle version de Red Hat Enterprise Linux 8 le 9 juillet à 11h00, heure de Moscou.

Notre intervenant est Aram Kanannov, responsable du département de développement des plateformes et des systèmes chez Red Hat en Europe, au Moyen-Orient et en Afrique. Le travail d'Aram chez Red Hat inclut une analyse approfondie du marché, de l'industrie et des concurrents, ainsi que le positionnement et le marketing des produits pour la division commerciale des plateformes, ce qui comprend la gestion de l'ensemble du cycle de vie du produit depuis son déploiement jusqu'à sa phase de retrait.

Source : habr.com

Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS 🔥 Acheter un hébergement fiable pour les sites avec protection DDoS, serveurs VPS VDS | ProHoster