ДиспСтчСр лицСнзирования LMTOOLS. Π’Ρ‹Π²ΠΎΠ΄ списка Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΉ для ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² Autodesk

Π”ΠΎΠ±Ρ€Ρ‹ΠΉ дСнь, ΡƒΠ²Π°ΠΆΠ°Π΅ΠΌΡ‹Π΅ Ρ‡ΠΈΡ‚Π°Ρ‚Π΅Π»ΠΈ.

Π‘ΡƒΠ΄Ρƒ ΠΏΡ€Π΅Π΄Π΅Π»ΡŒΠ½ΠΎ ΠΊΡ€Π°Ρ‚ΠΎΠΊ ΠΈ Ρ€Π°Π·ΠΎΠ±ΡŒΡŽ ΡΡ‚Π°Ρ‚ΡŒΡŽ Π½Π° ΠΏΡƒΠ½ΠΊΡ‚Ρ‹.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΎΠ½Π½ΠΎΠ³ΠΎ Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π°

ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚Π° AutoCAD ΠΏΡ€Π΅Π²Ρ‹ΡˆΠ°Π΅Ρ‚ количСство Π»ΠΎΠΊΠ°Π»ΡŒΠ½Ρ‹Ρ… сСтСвых Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΉ.

  1. ΠšΠΎΠ»ΠΈΡ‡Π΅ΡΡ‚Π²ΠΎ спСциалистов Ρ€Π°Π±ΠΎΡ‚Π°ΡŽΡ‰ΠΈΡ… Π² ПО AutoCAD Π½Π΅ нормируСтся Π½ΠΈΠΊΠ°ΠΊΠΈΠΌ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌ Π΄ΠΎΠΊΡƒΠΌΠ΅Π½Ρ‚ΠΎΠΌ.
  2. Π˜ΡΡ…ΠΎΠ΄Ρ ΠΈΠ· ΠΏΡƒΠ½ΠΊΡ‚Π° β„–1, ΠΎΡ‚ΠΊΠ°Π·Π°Ρ‚ΡŒ Π² установкС ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ ΠΏΠΎΡ‡Ρ‚ΠΈ Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ.
  3. ΠΠ΅ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½Π°Ρ организация Ρ€Π°Π±ΠΎΡ‚ Π²Π΅Π΄Ρ‘Ρ‚ ΠΊ Π½Π΅Ρ…Π²Π°Ρ‚ΠΊΠ΅ Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΉ, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΈΠ²ΠΎΠ΄ΠΈΡ‚ ΠΊ заявкам ΠΈ Π·Π²ΠΎΠ½ΠΊΠ°ΠΌ Π°Π±ΠΎΠ½Π΅Π½Ρ‚ΠΎΠ² Π² слуТбу ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½Ρ‹Ρ… Ρ‚Π΅Ρ…Π½ΠΎΠ»ΠΎΠ³ΠΈΠΉ с Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΠΎΠΉ.

ΠŸΡ€ΠΎΠ±Π»Π΅ΠΌΡ‹ тСхничСскиС

  1. ΠžΡ‚ΡΡƒΡ‚ΡΡ‚Π²ΠΈΠ΅ срСдств для просмотра списка Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡ‹Ρ… Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΉ.

Π’Π°Ρ€ΠΈΠ°Π½Ρ‚Ρ‹ Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ

  1. Π“ΠΎΡ‚ΠΎΠ²ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΏΠΎΠ΄Π΄Π΅Ρ€ΠΆΠΈΠ²Π°Π΅ΠΌΠΎΠ΅ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»Π΅ΠΌ ПО, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‰Π΅Π΅ ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»ΡΠΌ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ ΠΏΡ€ΠΎΡΠΌΠ°Ρ‚Ρ€ΠΈΠ²Π°Ρ‚ΡŒ список Π·Π°Π½ΠΈΠΌΠ°Π΅ΠΌΡ‹Ρ… Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΉ.
  2. Π Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠ° любого подходящСго Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ для Π²Ρ‹Π²ΠΎΠ΄Π° ΠΎΡ‚Ρ‡Ρ‘Ρ‚Π° Ρ€Π°Π±ΠΎΡ‚Ρ‹ диспСтчСра лицСнзирования Π² Π²ΠΈΠ΄Π΅ вэб-страницы.

ΠŸΡ€ΠΈΠ½ΡΡ‚ΠΎΠ΅ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΠΈ рСализация

ВСхничСскоС Π·Π°Π΄Π°Π½ΠΈΠ΅

  1. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΡΡΠΊΠΎΠ½ΠΎΠΌΠΈΡ‚ΡŒ Π½Π° Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ ОБ
  2. Π’Ρ‹Π²ΠΎΠ΄ списка ΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚Π΅Π»Π΅ΠΉ Π·Π°Π½ΠΈΠΌΠ°ΡŽΡ‰ΠΈΡ… Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΈ

РСализация Ρ€Π°Π±ΠΎΡ‚Ρ‹ диспСтчСра лицСнзирования

ΠŸΡ€ΠΈΠ½ΡΡ‚ΠΎ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠ΅ ΡΠ°ΠΌΠΎΡΡ‚ΠΎΡΡ‚Π΅Π»ΡŒΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±Ρ…ΠΎΠ΄ΠΈΠΌΡƒΡŽ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ. ΠŸΠΎΡ€ΡΠ΄ΠΎΠΊ выполнСния:

  1. Установка ΠΈ настройка CentOS 7 Π½Π° сСрвСр Π²ΠΈΡ€Ρ‚ΡƒΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ
  2. Установка ΠΈ запуск Autodesk Network License Manager для Linux
  3. Настройка Π°Π²Ρ‚ΠΎ запуска ΡƒΡ‚ΠΈΠ»ΠΈΡ‚Ρ‹ ΠΏΡ€ΠΈ рСстартС ОБ
  4. Настройка Ρ„Π°ΠΉΠ»Π° ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² (ΠΎ Π½Ρ‘ΠΌ я Π½Π°ΠΏΠΈΡˆΡƒ Π½ΠΈΠΆΠ΅)
  5. Установка локального web-сСрвСра ΠΈ 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>License server AutoCAD</title>
    <style>
    </style>
    </head>
    <body>
    <h1>Бписок Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΉ сСрвСра лицСнзирования autoCAD</h1>
    
    <div style="margin: 10px;">
    <?php
    $log = file_get_contents('./log.txt');
    $logrp = nl2br($log);
    $arraystr = explode(PHP_EOL,$logrp);
    $busy = explode(" ",$arraystr[13]);
    echo "На Π΄Π°Π½Π½Ρ‹ΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ‚ занято: ".$busy[12]." Π»ΠΈΡ†Π΅Π½Π·ΠΈΠΉ<br/><br/>";
    $i = 18;
    while($i<=37){
    //var
    $a = $i-17;
    $data = explode(" ", $arraystr[$i]);
    $time = str_replace('<br', '', $data[13]);
    //varEND
    echo "<span>".$a."</span> ";
    echo "<span>".$data[4]."</span> ";
    echo "<span>".$data[12]."</span> ";
    echo "<span>".$data[11]."</span> ";
    echo "<span>".$time."</span>";
    echo "<br>";
    $i++;
    }
    ?>
    </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

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ