Диспетчер за лицензиране LMTOOLS. Извеждане на списък на лицензите за потребителите на продуктите на Autodesk

Добър ден, уважаеми читатели.

Ще бъда максимално кратък и ще разделя статията на точки.

Проблеми от организационен характер

Броят на потребителите на софтуерния продукт AutoCAD надвишава броя на локалните мрежови лицензи.

  1. Броят на специалистите, работещи с AutoCAD, не се регулира от никакъв вътрешен документ.
  2. Въз основа на точка №1, отказът за инсталиране на програмата почти е невъзможен.
  3. Неправилната организация на работата води до недостиг на лицензи, което води до заявки и обаждания от абонати в IT службите по този проблем.

Технически проблеми

  1. Липса на средства за преглеждане на списъка с заети лицензи.

Варианти за решение

  1. Готово решение, поддържано от производителя на софтуера, позволяващо на потребителите самостоятелно да преглеждат списъка с заети лицензи.
  2. Разработка на всяко подходящо решение за извеждане на отчета на лицензионния диспетчер под формата на уеб страница.

Прието решение и реализиране

Техническо задание

  1. Възможност за спестяване на лиценз за операционна система
  2. Извеждане на списък на потребителите, заемащи лицензи

Реализиране на работата на лицензионния диспетчер

Прието е решение сами да реализираме необходимата функция. Последователност на изпълнение:

  1. Инсталиране и настройка на CentOS 7 на сървъра за виртуализация
  2. Инсталиране и стартиране на Autodesk Network License Manager за Linux
  3. Настройка на автоматично стартиране на утилитата при рестарт на операционната система
  4. Настройка на файла с параметри (за него ще напиша по-долу)
  5. Инсталиране на локалния уеб сървър и PHP

Реализиране на извеждане на списък с заети лицензи

  1. Създаване на .sh файл с съдържанието, посочено по-долу:
    	#! /bin/bash
    	/opt/flexnetserver/lmutil lmstat -a -c [путь к файлу .lic]> "/var/www/html/log.txt"
    	

    Той се поставя в удобна директория и се настройва като изпълним файл.

    С помощта на тази команда се извежда статусът на лицензионния диспетчер в файл log.txt

  2. Използвах командата
    watch -n 5 [път до създадения в т.№1 .sh файл]

    Това позволява на всеки 5 секунди да се извиква вече създаденият bash скрипт.

  3. В директорията log.txt от т.№1 се поставя файл index.php със следното съдържание
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <script src="/jq.js"></script>
    <title>Лицензионен сървър AutoCAD</title>
    <style>
    </style>
    </head>
    <body>
    <h1>Списък на лицензите на сървъра за лицензиране на AutoCAD</h1>
    
    <div style="margin: 10px;">
    &lt;?php
    $log = file_get_contents(&#039;.\/log.txt&#039;);
    $logrp = nl2br($log);
    $arraystr = explode(PHP_EOL,$logrp);
    $busy = explode(&quot; &quot;,$arraystr[13]);
    echo &quot;В момента са заети: &quot;.$busy[12].&quot; лицензии<br /><br />";
    $i = 18;
    while($i&lt;=37){
    //var
    $a = $i-17;
    $data = explode(&quot; &quot;, $arraystr[$i]);
    $time = str_replace(&#039;&lt;br&#039;, &#039;&#039;, $data[13]);
    //varEND
    echo &quot;<span>".$a." ";
    echo "<span>".$data[4]." ";
    echo "<span>".$data[12]." ";
    echo "<span>".$data[11]." ";
    echo "<span>".$time."";
    echo "<br>";
    $i++;
    }
    ?&gt;
    </div>
    </body>
    </html>
    	

    Моля, не осъждайте за PHP кода, по-професионални специалисти ще го направят по-качествено, а аз направих в мерките на моите знания.

    Същност на работата на index.php:

    1. Получавам текста на файла log.txt, съставен преди от скрипта и обновяван на всеки 5 секунди.
    2. Заменям таговете за пренос с HTML тагове.
    3. Разбивам текста на масив по редове.
    4. Форматирам поредността и съдържанието на редовете.

Резултат от реализирането на всички изисквания.

Как изглежда GUI сървър:

Диспетчер за лицензиране LMTOOLS. Извеждане на списък на лицензите за потребителите на продуктите на Autodesk

Как изглежда уеб страницата:

Диспетчер за лицензиране LMTOOLS. Извеждане на списък на лицензите за потребителите на продуктите на Autodesk

Файл с параметри .opt

В него е посочено

TIMEOUTALL 14400 — времето на простоя на програмата е ограничено на 4 часа
MAX_BORROW_HOURS [CODE] 48 — максималният срок за заимстване е ограничен на 2 дни.

Допълнителна информация

Тъй като в организацията се използват коректни именни домейн акаунти на служителите, по логина е много лесно да се определи специалистът, който е заел лиценз.

Общият резултат от усилията:

  1. Потребителят самостоятелно вижда заемания лиценз, което намалява натоварването на службата за техническа поддръжка.
  2. Вътре в колектива от специалисти, работещи в софтуера без участието на техническа поддръжка, се решава въпросът „На кого ще попадне лицензът?“, и в зависимост от приоритета на работата лицензът се освобождава или заема.
  3. Спестяване от лицензиране на Windows.

Източник: habr.com

Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри 🔥 Купете надежден хостинг за сайтове със защита от DDoS, VPS и VDS сървъри | ProHoster