Moteur de rapport dans Satellite 6.5 : qu'est-ce que c'est et pourquoi ?

Red Hat Satellite est une solution de gestion de système qui facilite 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 personnaliser et de mettre à jour les systèmes pour garantir qu'ils fonctionnent efficacement et en toute sécurité selon diverses normes. En automatisant la plupart des tâches associées au maintien de la santé du système, Satellite aide les organisations à accroître leur efficacité, à réduire leurs coûts d'exploitation et à mieux répondre aux besoins stratégiques de leur entreprise.

Moteur de rapport dans Satellite 6.5 : qu'est-ce que c'est et pourquoi ?

Bien que vous puissiez effectuer des tâches administratives de base à l'aide des services Red Hat inclus avec votre abonnement Red Hat Enterprise Linux, Red Hat Satellite ajoute des fonctionnalités étendues de gestion du cycle de vie.

Parmi ces possibilités :

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

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

Et maintenant nous avons le nouveau Red Hat Satellite 6.5 !

L'un des éléments intéressants de Red Hat Satellite 6.5 est le nouveau moteur de reporting.

Satellite Server est souvent la plaque tournante de toutes les informations sur les systèmes d'entreprise Red Hat, et ce dernier moteur vous permet de créer et d'exporter des rapports contenant des informations sur les hôtes Satellite clients, les abonnements logiciels, les errata applicables, etc. Les rapports sont programmés en Embedded Ruby (ERB).

Satellite 6.5 est livré avec des rapports prêts à l'emploi, et le moteur donne aux utilisateurs la possibilité de personnaliser ces rapports ou de créer les leurs. Les rapports intégrés du Satellite 6.5 sont générés au format CSV, mais dans cet article, nous montrerons comment vous pouvez également générer des rapports au format HTML.

Rapports intégrés au Satellite 6.5

Satellite 6.5 comprend quatre rapports intégrés :

  • Errata applicables – une liste des défauts logiciels (errata) qui doivent être éliminés sur les hébergeurs de contenus (éventuellement filtrés par hébergeurs ou défauts) ;
  • Statuts d'hôte – rapport sur l'état des hôtes satellite (éventuellement filtré par hôte) ;
  • Hôtes enregistrés – informations sur les hôtes Satellite : adresse IP, version du système d'exploitation, abonnements logiciels (éventuellement filtrés par hôte) ;
  • abonnements – informations sur les abonnements logiciels : nombre total d'abonnements, nombre d'abonnements gratuits, codes SKU (éventuellement filtrés par paramètres d'abonnement).

Pour générer un rapport, ouvrez le menu Surveillersélectionner Modèles de rapport et cliquez sur le bouton Générer à droite du rapport souhaité. Laissez le champ de filtre vide pour inclure toutes les données dans le rapport, ou entrez quelque chose ici pour limiter les résultats. Par exemple, si vous souhaitez que le rapport Hôtes enregistrés affiche uniquement les hôtes RHEL 8, spécifiez un filtre os = RedHat et os_major = 8, comme le montre la capture d'écran ci-dessous :

Moteur de rapport dans Satellite 6.5 : qu'est-ce que c'est et pourquoi ?

Une fois le rapport généré, vous pouvez le télécharger et l'ouvrir dans une feuille de calcul comme LibreOffice Calc, qui importera les données depuis CSV et les organisera en colonnes, par exemple sous forme de rapport. Errata applicables sur l'écran ci-dessous :

Moteur de rapport dans Satellite 6.5 : qu'est-ce que c'est et pourquoi ?

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

Personnalisation des rapports intégrés

Examinons la personnalisation en utilisant l'exemple d'un rapport intégré abonnements. Par défaut, ce rapport affiche le nombre total d'abonnements (1), ainsi que le nombre d'abonnements disponibles, c'est-à-dire gratuits (2). Nous y ajouterons une autre colonne avec le nombre d'abonnements utilisés, qui est défini comme (1) – (2). Par exemple, si nous avons un total de 50 abonnements RHEL et que 10 d’entre eux sont gratuits, alors 40 abonnements sont utilisés.

Étant donné que la modification des rapports intégrés est verrouillée et qu'il n'est pas recommandé de les modifier, vous devrez cloner le rapport intégré, lui donner un nouveau nom, puis modifier cette copie clonée.

Donc, si nous voulons modifier le rapport abonnements, alors il doit d'abord être cloné. Alors ouvrons le menu Surveiller, choisir Modèles de rapport et dans le menu déroulant à droite du modèle abonnements choisir Cloner. Saisissez ensuite le nom du rapport cloné (appelons-le Abonnements personnalisés) et entre les lignes Disponible и Quantité ajoutez-y la ligne 'Utilisé' : piscine.quantité - piscine.disponible, – faites attention à la virgule à la fin de la ligne. Voici à quoi cela ressemble sur la capture d'écran :

Moteur de rapport dans Satellite 6.5 : qu'est-ce que c'est et pourquoi ?

Ensuite, nous appuyons sur le bouton Envoyerce qui nous ramène à la page Modèles de rapport. Là, nous cliquons sur le bouton Générer à droite du rapport nouvellement créé Abonnements personnalisés. Laissez le champ de filtre Abonnements vide et cliquez sur Envoyer. Après quoi un rapport est créé et chargé, qui contient la colonne que nous avons ajoutée Occasion.

Moteur de rapport dans Satellite 6.5 : qu'est-ce que c'est et pourquoi ?

L'aide pour le langage Ruby intégré se trouve dans l'onglet d’aide dans la fenêtre d'édition du rapport. Il fournit un aperçu de la syntaxe et des variables et méthodes disponibles.

Créez votre propre rapport

Voyons maintenant créer nos propres rapports en utilisant l'exemple d'un rapport sur les rôles Ansible attribués aux hôtes dans Satellite. Ouvrir le menu Surveiller, Cliquez sur Modèles de rapport puis appuyez sur le bouton Créer un modèle. Appelons notre rapport Rapport sur les rôles Ansible et insérez-y le code ERB suivant :

<%#
name: Ansible Roles Report
snippet: false
template_inputs:
- name: hosts
 required: false
 input_type: user
 description: Limit the report only on hosts found by this search query. Keep empty
   for report on all available hosts.
 advanced: false
model: ReportTemplate
-%>
<% load_hosts(search: input('hosts'), includes: :ansible_roles).each_record do |host| -%>
<%   report_row({
       'Name': host.name,
       'All Ansible Roles': host.all_ansible_roles
     }) -%>
<% end -%>
<%= report_render -%>

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

Allez ensuite dans l'onglet Contributions et cliquez sur le bouton + Ajouter une entrée. On dit que ce nom est égal à hôtes, et type de description – Filtrer par hôtes (facultatif). Puis clique Envoyer puis appuyez sur le bouton Générer à droite du rapport nouvellement créé. Ensuite, vous pouvez définir un filtre d'hôte ou cliquer immédiatement sur Envoyerpour générer un rapport sur tous les hôtes. Le rapport généré ressemblera à ceci dans LibreOffice Calc :

Moteur de rapport dans Satellite 6.5 : qu'est-ce que c'est et pourquoi ?

Génération de rapports HTML

Le moteur de reporting Satellite vous permet de générer des rapports non seulement au format CSV. À titre d'exemple, nous allons créer un rapport personnalisé basé sur le rapport hôte intégré. Les statuts, mais uniquement sous forme de tableau HTML avec des cellules codées par couleur en fonction du statut. Pour ce faire, nous clonons Statuts de l'hôte, puis remplacez son code ERB par ce qui suit :

<!DOCTYPE html>
<html>
<head>
   <title>Host Statuses</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> Hostname </th>
       <th> Status </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"> Warning </td>
   <% else -%>
       <td class="red"> Error (<%= 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"> Warning </td>
       <% else -%>
           <td class="red"> Error (<%= value %>) </td>
       <% end -%>
   <% end -%>
   </tr>
<% end -%>

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

Ce rapport génère du code HTML qui ressemblera à ceci dans un navigateur :

Moteur de rapport dans Satellite 6.5 : qu'est-ce que c'est et pourquoi ?

Exécuter des rapports à partir de la ligne de commande

Pour exécuter un rapport à partir de la ligne de commande, utilisez la commande marteau, et l'utilitaire cron vous 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 vers un fichier, puis configurer cron pour exécuter un script shell afin de générer un rapport et de l'envoyer par e-mail. Le format HTML s'affiche parfaitement dans les clients de messagerie, ce qui vous permet d'organiser la livraison régulière de rapports aux parties intéressées sous une forme facile à lire.

Ainsi, le moteur de reporting de Satellite 6.5 est un outil puissant pour exporter les données importantes dont les entreprises disposent dans Satellite. Il est très flexible et vous permet d'utiliser à la fois les rapports intégrés et leurs versions modifiées. De plus, les utilisateurs peuvent créer leurs propres rapports à partir de zéro. Apprenez-en davantage sur le moteur de rapports satellite dans notre vidéo YouTube.

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

Notre intervenant est Aram Kananov, responsable du département de développement de plateformes et de systèmes de gestion chez Red Hat en Europe, au Moyen-Orient et en Afrique. Le travail d'Aram chez Red Hat comprend une analyse complète du marché, de l'industrie et de la concurrence, ainsi que le positionnement et le marketing des produits pour l'unité commerciale Plateformes, ce qui comprend la gestion de l'ensemble du cycle de vie du produit, de son introduction à sa fin de vie.

Source: habr.com

Ajouter un commentaire