Reporting engine v Satellite 6.5: Co to je a proč

Red Hat Satellite je řešení pro správu systému, které usnadňuje nasazení, škálování a správu infrastruktury Red Hat ve fyzických, virtuálních a cloudových prostředích. Satelit umožňuje uživatelům přizpůsobovat a aktualizovat systémy, aby bylo zajištěno, že budou fungovat efektivně a bezpečně podle různých standardů. Automatizací většiny úkolů spojených s udržováním stavu systému pomáhá Satellite organizacím zvýšit efektivitu, snížit provozní náklady a lépe reagovat na strategické obchodní potřeby.

Reporting engine v Satellite 6.5: Co to je a proč

Zatímco základní administrativní úkoly můžete provádět pomocí služeb Red Hat, které jsou součástí vašeho předplatného Red Hat Enterprise Linux, Red Hat Satellite přidává rozsáhlé možnosti správy životního cyklu.

Mezi tyto možnosti:

  • Instalace záplat;
  • Správa předplatného;
  • Inicializace;
  • Správa konfigurace.

Z jedné konzoly můžete spravovat tisíce systémů stejně snadno jako jeden, čímž se zvyšuje dostupnost, spolehlivost a možnosti auditu systému.

A teď tu máme nový Red Hat Satellite 6.5!

Jednou ze skvělých věcí, které přichází s Red Hat Satellite 6.5, je nový nástroj pro vytváření zpráv.

Satelitní server je často centrem všech informací o podnikových systémech společnosti Red Hat a tento nejnovější engine vám umožňuje vytvářet a exportovat zprávy obsahující informace o klientských satelitních hostitelích, předplatných softwaru, příslušných chybách atd. Zprávy jsou naprogramovány v Embedded Ruby (ERB).

Satellite 6.5 přichází s hotovými zprávami a engine dává uživatelům možnost tyto zprávy přizpůsobit nebo vytvořit vlastní. Vestavěné zprávy Satellite 6.5 jsou generovány ve formátu CSV, ale v tomto příspěvku si ukážeme, jak můžete vytvářet zprávy také ve formátu HTML.

Vestavěné zprávy satelitu 6.5

Satellite 6.5 obsahuje čtyři vestavěné zprávy:

  • Použitelné errata – seznam softwarových defektů (errata), které musí být odstraněny na hostitelích obsahu (volitelně filtrovány podle hostitelů nebo defektů);
  • Stavy hostitele – hlášení o stavu satelitních hostitelů (volitelně filtrováno podle hostitele);
  • Registrovaní hostitelé – informace o hostitelích satelitu: IP adresa, verze OS, předplatné softwaru (volitelně filtrováno podle hostitele);
  • Odběry – informace o předplatném softwaru: celkový počet předplatných, počet bezplatných, kódy SKU (volitelně filtrované podle parametrů předplatného).

Chcete-li vygenerovat zprávu, otevřete nabídku monitorvybrat Šablony zpráv a klikněte na tlačítko Generovat napravo od požadovaného přehledu. Ponechte pole filtru prázdné, chcete-li do sestavy zahrnout všechna data, nebo tam zadejte něco, čím omezíte výsledky. Pokud například chcete, aby sestava Registrovaní hostitelé zobrazovala pouze hostitele RHEL 8, zadejte filtr os = RedHat a os_major = 8, jak je znázorněno na snímku obrazovky níže:

Reporting engine v Satellite 6.5: Co to je a proč

Jakmile je sestava vygenerována, lze ji stáhnout a otevřít v tabulce, jako je LibreOffice Calc, která importuje data z CSV a uspořádá je do sloupců, například jako sestavu. Použitelné errata na obrazovce níže:

Reporting engine v Satellite 6.5: Co to je a proč

Upozorňujeme, že ve vlastnostech vestavěných sestav je tato možnost povolena Ve výchozím nastavení (Výchozí), takže se automaticky přidají do všech nových organizací a míst, které vytvoříte v Satellite.

Přizpůsobení vestavěných reportů

Podívejme se na přizpůsobení na příkladu vestavěné sestavy Odběry. Ve výchozím nastavení tento přehled zobrazuje celkový počet předplatných (1) a také počet dostupných, tedy bezplatných předplatných (2). Přidáme do něj další sloupec s počtem použitých odběrů, který je definován jako (1) – (2). Pokud máme například celkem 50 předplatných RHEL a 10 z nich je zdarma, pak je použito 40 předplatných.

Vzhledem k tomu, že úpravy vestavěných sestav jsou uzamčeny a nedoporučuje se je měnit, budete muset vestavěnou sestavu naklonovat, dát jí nový název a poté tuto klonovanou kopii upravit.

Pokud tedy chceme upravit sestavu Odběry, pak musí být nejprve naklonován. Otevřeme tedy nabídku monitorvybrat Šablony zpráv a v rozevírací nabídce napravo od šablony Odběry zvolit klon. Poté zadejte název zprávy o klonu (říkejme tomu Vlastní předplatné) a mezi řádky Dostupný и Množství přidejte k tomu řádek 'Used': pool.quantity - pool.available, – pozor na čárku na konci řádku. Takto to vypadá na snímku obrazovky:

Reporting engine v Satellite 6.5: Co to je a proč

Poté stiskneme tlačítko Odeslatcož nás přivádí zpět na stránku Šablony zpráv. Tam klikneme na tlačítko Generovat napravo od nově vytvořeného přehledu Vlastní předplatné. Ponechte pole Filtr odběrů prázdné a klikněte Odeslat. Poté se vytvoří a načte sestava, která obsahuje námi přidaný sloupec Použitý.

Reporting engine v Satellite 6.5: Co to je a proč

Nápověda k vestavěnému jazyku Ruby se nachází na kartě Pomoc v okně pro úpravu sestavy. Poskytuje přehled syntaxe a dostupných proměnných a metod.

Vytvořte si vlastní zprávu

Nyní se podívejme na vytváření vlastních sestav na příkladu sestavy o rolích Ansible přiřazených hostitelům v Satellite. Otevřete nabídku monitor, klikněte Šablony zpráv a poté stiskněte tlačítko Vytvořit šablonu. Zavolejme na naši zprávu Zpráva Ansible Roles a vložte do něj následující ERB kód:

<%#
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 -%>

Tento kód vygeneruje zprávu o hostitelích, která pro ně zobrazí atribut „all_ansible_roles“.

Poté přejděte na kartu Vstupy a klikněte na tlačítko + Přidat vstup. Říkáme, že jméno se rovná hostsa typ popisu – Filtrovat podle hostitelů (volitelné). Pak klikněte Odeslat a poté stiskněte tlačítko Generovat napravo od nově vytvořeného přehledu. Dále můžete nastavit hostitelský filtr nebo rovnou kliknout Odeslatvygenerovat zprávu o všech hostitelích. Vygenerovaná sestava bude v LibreOffice Calc vypadat nějak takto:

Reporting engine v Satellite 6.5: Co to je a proč

Generování HTML reportů

Satelitní reporting engine umožňuje generovat reporty nejen ve formátu CSV. Jako příklad vytvoříme vlastní sestavu založenou na vestavěné sestavě hostitele Stavy, ale pouze jako HTML tabulku s buňkami barevně odlišenými podle stavu. Abychom to udělali, klonujeme Stavy hostitelea poté jeho ERB kód nahraďte následujícím:

<!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>

Tento přehled vygeneruje HTML, které bude v prohlížeči vypadat takto:

Reporting engine v Satellite 6.5: Co to je a proč

Spouštění sestav z příkazového řádku

Chcete-li spustit sestavu z příkazového řádku, použijte příkaz kladivoa obslužný program cron vám umožňuje automatizovat tento proces.

Použijte příkaz hammer report-template generation --name "", například:

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

Obsah sestavy se projeví na konzole. Informace lze přesměrovat do souboru a poté nakonfigurovat cron tak, aby spustil skript shellu pro vygenerování zprávy a její odeslání e-mailem. HTML formát se perfektně zobrazuje v emailových klientech, což umožňuje organizovat pravidelné doručování reportů zájemcům ve snadno čitelné podobě.

Proto je reportovací modul v Satellite 6.5 mocným nástrojem pro export důležitých dat, která mají společnosti v Satellite. Je velmi flexibilní a umožňuje používat jak vestavěné reporty, tak jejich upravené verze. Uživatelé mohou navíc vytvářet své vlastní sestavy od začátku. Další informace o Satellite Reporting Engine naleznete v našem videu na YouTube.

9. července v 11:00 moskevského času si nenechte ujít webinář o nové verzi Red Hat Enterprise Linux 8

Naším řečníkem je Aram Kananov, manažer oddělení vývoje platforem a systémů řízení ve společnosti Red Hat v Evropě, na Středním východě a v Africe. Aramova práce ve společnosti Red Hat zahrnuje komplexní analýzu trhu, odvětví a konkurentů, stejně jako určování pozice produktu a marketing pro obchodní jednotku Platforms, což zahrnuje řízení celého životního cyklu produktu od uvedení až po konec životnosti.

Zdroj: www.habr.com

Přidat komentář