موتور گزارش دهی در ماهواره 6.5: چیست و چرا

Red Hat Satellite یک راه حل مدیریت سیستم است که استقرار، مقیاس و مدیریت زیرساخت Red Hat را در محیط های فیزیکی، مجازی و ابری آسان می کند. ماهواره به کاربران این امکان را می دهد که سیستم ها را سفارشی و به روز کنند تا اطمینان حاصل کنند که با استانداردهای مختلف کارآمد و ایمن عمل می کنند. با خودکار کردن بیشتر وظایف مرتبط با حفظ سلامت سیستم، ماهواره به سازمان ها کمک می کند تا کارایی را افزایش دهند، هزینه های عملیاتی را کاهش دهند و به نیازهای استراتژیک کسب و کار پاسخ بهتری بدهند.

موتور گزارش دهی در ماهواره 6.5: چیست و چرا

در حالی که می‌توانید کارهای اداری اولیه را با استفاده از خدمات Red Hat که در اشتراک لینوکس Red Hat Enterprise ارائه می‌شود انجام دهید، Red Hat Satellite قابلیت‌های مدیریت چرخه حیات گسترده‌ای را اضافه می‌کند.

از جمله این احتمالات:

  • نصب پچ ها؛
  • مدیریت اشتراک؛
  • مقداردهی اولیه؛
  • مدیریت پیکربندی.

از یک کنسول، می‌توانید هزاران سیستم را به راحتی مدیریت کنید و قابلیت‌های دسترسی، قابلیت اطمینان و ممیزی سیستم را افزایش دهید.

و اکنون ما ماهواره جدید Red Hat 6.5 را داریم!

یکی از چیزهای جالبی که با Red Hat Satellite 6.5 ارائه می‌شود، موتور گزارش‌دهی جدید است.

سرور ماهواره ای اغلب هاب تمام اطلاعات در مورد سیستم های سازمانی Red Hat است و این موتور جدید به شما امکان می دهد گزارش هایی حاوی اطلاعاتی درباره میزبان های ماهواره مشتری، اشتراک های نرم افزار، خطاهای قابل اجرا و غیره ایجاد و صادر کنید. گزارش ها در Embedded Ruby (ERB) برنامه ریزی می شوند.

ماهواره 6.5 با گزارش های آماده ارائه می شود و این موتور به کاربران امکان سفارشی سازی این گزارش ها یا ایجاد گزارش های خود را می دهد. گزارش‌های داخلی Satellite 6.5 در قالب CSV تولید می‌شوند، اما در این پست نشان می‌دهیم که چگونه می‌توانید گزارش‌ها را در قالب HTML نیز تولید کنید.

گزارش های داخلی 6.5 ماهواره ای

ماهواره 6.5 شامل چهار گزارش داخلی است:

  • خطای قابل اجرا – فهرستی از نقص‌های نرم‌افزار (اشتباه) که باید در میزبان‌های محتوا از بین برود (اختیاری توسط میزبان یا نقص فیلتر می‌شود).
  • وضعیت های میزبان - گزارش وضعیت میزبان های ماهواره ای (به صورت اختیاری توسط میزبان فیلتر می شود).
  • میزبان های ثبت شده - اطلاعات در مورد میزبان های ماهواره ای: آدرس IP، نسخه سیستم عامل، اشتراک های نرم افزار (به صورت اختیاری توسط میزبان فیلتر می شود).
  • اشتراک ها - اطلاعات در مورد اشتراک های نرم افزار: تعداد کل اشتراک ها، تعداد موارد رایگان، کدهای SKU (به صورت اختیاری با پارامترهای اشتراک فیلتر می شوند).

برای ایجاد گزارش، منو را باز کنید مانیتوررا انتخاب کنید الگوهای گزارش و روی دکمه Generate در سمت راست گزارش مورد نظر کلیک کنید. فیلد فیلتر را خالی بگذارید تا همه داده‌ها در گزارش گنجانده شود، یا چیزی را برای محدود کردن نتایج در آنجا وارد کنید. به عنوان مثال، اگر می‌خواهید گزارش میزبان‌های ثبت شده فقط میزبان‌های RHEL 8 را نشان دهد، یک فیلتر مشخص کنید. os = RedHat و os_major = 8، همانطور که در تصویر زیر نشان داده شده است:

موتور گزارش دهی در ماهواره 6.5: چیست و چرا

پس از ایجاد گزارش، می‌توانید آن را دانلود کنید و در صفحه‌گسترده‌ای مانند LibreOffice Calc باز کنید، که داده‌ها را از CSV وارد می‌کند و آن‌ها را در ستون‌هایی سازماندهی می‌کند، مثلاً به‌عنوان گزارش. خطای قابل اجرا در صفحه زیر:

موتور گزارش دهی در ماهواره 6.5: چیست و چرا

لطفا توجه داشته باشید که در ویژگی های گزارش های داخلی این گزینه فعال است به طور پیش فرض (پیش‌فرض)، بنابراین به‌طور خودکار به همه سازمان‌ها و مکان‌های جدیدی که در ماهواره ایجاد می‌کنید اضافه می‌شوند.

سفارشی سازی گزارش های داخلی

بیایید با استفاده از مثال یک گزارش داخلی به سفارشی سازی نگاه کنیم اشتراک ها. به طور پیش فرض، این گزارش تعداد کل اشتراک ها (1) و همچنین تعداد اشتراک های موجود، یعنی رایگان (2) را نشان می دهد. ستون دیگری با تعداد اشتراک های استفاده شده به آن اضافه می کنیم که به صورت (1) – (2) تعریف می شود. به عنوان مثال، اگر در مجموع 50 اشتراک RHEL داشته باشیم و 10 تای آنها رایگان باشد، 40 اشتراک استفاده می شود.

از آنجایی که ویرایش گزارش‌های داخلی قفل شده است و توصیه نمی‌شود آنها را تغییر دهید، باید گزارش داخلی را شبیه‌سازی کنید، نام جدیدی به آن بدهید و سپس این کپی شبیه‌سازی را تغییر دهید.

بنابراین، اگر بخواهیم گزارش را اصلاح کنیم اشتراک ها، سپس ابتدا باید شبیه سازی شود. پس بیایید منو را باز کنیم مانیتورانتخاب کنید الگوهای گزارش و در منوی کشویی سمت راست الگو اشتراک ها را انتخاب کنید کلون. سپس نام گزارش کلون را وارد کنید (بیایید آن را صدا کنیم اشتراک های سفارشی) و بین خطوط در دسترس и مقدار خط را به آن اضافه کنید "استفاده شده": pool.quantity - pool.available, – به کاما انتهای سطر دقت کنید. این چیزی است که در تصویر به نظر می رسد:

موتور گزارش دهی در ماهواره 6.5: چیست و چرا

سپس دکمه را فشار می دهیم ارسالکه ما را به صفحه بازمی گرداند الگوهای گزارش. در آنجا روی دکمه کلیک می کنیم تولید در سمت راست گزارش جدید ایجاد شده است اشتراک های سفارشی. قسمت فیلتر اشتراک ها را خالی بگذارید و کلیک کنید ارسال. پس از آن یک گزارش ایجاد و بارگذاری می شود که حاوی ستونی است که اضافه کردیم استفاده می شود.

موتور گزارش دهی در ماهواره 6.5: چیست و چرا

راهنما برای زبان روبی داخلی در برگه قرار دارد کمک در پنجره ویرایش گزارش این یک نمای کلی از نحو و متغیرها و روش های موجود را ارائه می دهد.

گزارش خود را ایجاد کنید

حال بیایید به ایجاد گزارش های خودمان با استفاده از مثال گزارشی در مورد نقش های Ansible اختصاص داده شده به میزبان ها در ماهواره نگاه کنیم. منو را باز کنید مانیتور، کلیک الگوهای گزارش و سپس دکمه را فشار دهید ایجاد الگوی. بیایید با گزارش خود تماس بگیرید گزارش نقش های پاسخگو و کد ERB زیر را در آن قرار دهید:

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

این کد گزارشی از هاست تولید می کند و ویژگی "all_ansible_roles" را برای آنها نمایش می دهد.

سپس به تب بروید ورودی ها و روی دکمه کلیک کنید + افزودن ورودی. می گوییم آن اسم برابر است با میزبانو نوع توضیحات – فیلتر بر اساس میزبان (اختیاری). سپس کلیک کنید ارسال و سپس دکمه را فشار دهید تولید در سمت راست گزارش جدید ایجاد شده است. بعد، می توانید یک فیلتر میزبان تنظیم کنید یا بلافاصله کلیک کنید ارسالبرای ایجاد گزارش در مورد همه هاست ها. گزارش تولید شده در LibreOffice Calc چیزی شبیه به این خواهد بود:

موتور گزارش دهی در ماهواره 6.5: چیست و چرا

تولید گزارش های HTML

موتور گزارش دهی ماهواره ای به شما امکان می دهد گزارش ها را نه تنها در قالب CSV تولید کنید. به عنوان مثال، ما یک گزارش سفارشی بر اساس گزارش داخلی Host ایجاد خواهیم کرد اساسنامه، اما فقط به عنوان یک جدول HTML با سلول های رنگی بر اساس وضعیت. برای انجام این کار ما کلون می کنیم وضعیت میزبانو سپس کد ERB آن را با کد زیر جایگزین کنید:

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

این گزارش HTML را تولید می کند که در مرورگر چیزی شبیه به این خواهد بود:

موتور گزارش دهی در ماهواره 6.5: چیست و چرا

اجرای گزارش ها از خط فرمان

برای اجرای یک گزارش از خط فرمان، از دستور استفاده کنید چکشو برنامه cron به شما امکان می دهد این فرآیند را خودکار کنید.

برای مثال از دستور hammer report-template generate --name "" استفاده کنید:

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

محتوای گزارش بر روی کنسول منعکس خواهد شد. اطلاعات را می توان به یک فایل هدایت کرد و سپس cron را برای اجرای یک اسکریپت پوسته برای تولید گزارش و ارسال آن از طریق ایمیل پیکربندی کرد. فرمت HTML کاملاً در کلاینت‌های ایمیل نمایش داده می‌شود، که به شما امکان می‌دهد تحویل منظم گزارش‌ها را در قالبی خوانا به افراد علاقه‌مند سازماندهی کنید.

بنابراین، موتور گزارش دهی در Satellite 6.5 ابزار قدرتمندی برای صادرات داده های مهمی است که شرکت ها در Satellite دارند. این بسیار انعطاف پذیر است و به شما امکان می دهد از هر دو گزارش داخلی و نسخه های اصلاح شده آنها استفاده کنید. علاوه بر این، کاربران می توانند گزارش های خود را از ابتدا ایجاد کنند. در ویدیوی YouTube ما درباره موتور گزارش ماهواره ای بیشتر بیاموزید.

در 9 جولای ساعت 11:00 به وقت مسکو، وبینار مربوط به نسخه جدید Red Hat Enterprise Linux 8 را از دست ندهید.

سخنران ما آرام کانانوف، مدیر بخش توسعه پلت فرم و سیستم های مدیریت در Red Hat در اروپا، خاورمیانه و آفریقا است. کار آرام در Red Hat شامل تجزیه و تحلیل جامع بازار، صنعت و رقبا و همچنین موقعیت یابی محصول و بازاریابی برای واحد تجاری پلتفرم است که شامل مدیریت کل چرخه عمر محصول از معرفی تا پایان عمر می شود.

منبع: www.habr.com

اضافه کردن نظر