Bonjour, chers lecteurs.
Je serai extrêmement bref et diviserai l’article en points.
Problèmes d'organisation
Le nombre d'utilisateurs du logiciel AutoCAD dépasse le nombre de licences du réseau local.
- Le nombre de spécialistes travaillant dans le logiciel AutoCAD n'est standardisé par aucun document interne.
- Sur la base du point n°1, il est quasiment impossible de refuser d'installer le programme.
- Une mauvaise organisation du travail entraîne une pénurie de licences, ce qui entraîne des demandes et des appels des abonnés au service informatique avec ce problème.
Problèmes techniques
- Manque d'outils pour visualiser la liste des licences occupées.
Options de solution
- Une solution prête à l'emploi supportée par l'éditeur du logiciel, permettant aux utilisateurs de visualiser en toute autonomie la liste des licences occupées.
- Développement de toute solution adaptée pour afficher un rapport sur le fonctionnement du gestionnaire de licences sous forme de page web.
Décision prise et mise en œuvre
Termes de référence
- Possibilité d'économiser sur la licence du système d'exploitation
- Afficher une liste des utilisateurs titulaires de licences
Mise en place du gestionnaire de licences
La décision a été prise de mettre en œuvre de manière indépendante la fonction nécessaire. Ordre d'exécution :
- Installer et configurer CentOS 7 sur un serveur de virtualisation
- Installation et exécution d'Autodesk Network License Manager pour Linux
- Configuration de l'utilitaire pour qu'il se lance automatiquement au redémarrage du système d'exploitation
- Configuration du fichier de paramètres (j'en parlerai ci-dessous)
- Installation d'un serveur Web local et PHP
Mise en place de l'affichage d'une liste des licences occupées
- Créez un fichier .sh avec le contenu ci-dessous :
#! /bin/bash /opt/flexnetserver/lmutil lmstat -a -c [путь к файлу .lic]> "/var/www/html/log.txt"
Il est placé dans un répertoire pratique et configuré comme fichier exécutable.
À l'aide de cette commande, l'état du gestionnaire de licences est téléchargé dans le fichier log.txt
- J'ai utilisé la commande
watch -n 5 [путь к созданному в п№1 файлу .sh]
Cela vous permet d'appeler un script bash précédemment créé toutes les 5 secondes.
- Dans le répertoire log.txt du point 1, il y a un fichier index.php avec le contenu suivant
<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>
S'il vous plaît, ne jugez pas le code PHP ; des spécialistes plus professionnels le feront mieux, mais je l'ai fait au meilleur de mes connaissances.
L'essence du fonctionnement d'index.php :
- Je reçois le texte du fichier log.txt, généré précédemment par le script, et mis à jour toutes les 5 secondes.
- Je remplace les balises de transfert par des balises html.
- J'ai divisé le texte en tableau ligne par ligne.
- Je formate l'ordre et le contenu des lignes.
Le résultat de la mise en œuvre de toutes les exigences
À quoi ressemble l'interface graphique du serveur :
À quoi ressemble la page Web :
Fichier d'options .opt
Il a indiqué
TIMEOUTALL 14400
— le temps d'arrêt du programme est limité à 4 heures
MAX_BORROW_HOURS [CODE] 48
— la durée maximale d'emprunt est limitée à 2 jours.
Доп. информация
Parce que L'organisation utilise des comptes de domaine enregistrés corrects. dossiers des employés, en se connectant, il est très facile d'identifier le spécialiste qui a pris la licence.
Résultat global des efforts :
- L'utilisateur voit indépendamment la licence occupée et la charge sur le service d'assistance technique est réduite en conséquence.
- Au sein d'une équipe de spécialistes travaillant dans le logiciel sans la participation du personnel technique. soutien, la question « Qui obtiendra la licence ? » est résolue et, selon la priorité du travail, la licence est libérée ou occupée.
- Économisez sur les licences Windows.
Source: habr.com