Buon giorno, cari lettori.
Sarò estremamente breve e dividerò l’articolo in punti.
Problemi organizzativi
Il numero di utenti del prodotto software AutoCAD supera il numero di licenze di rete locale.
- Il numero di specialisti che lavorano nel software AutoCAD non è standardizzato da alcun documento interno.
- In base al punto n. 1 è quasi impossibile rifiutarsi di installare il programma.
- Un'organizzazione impropria del lavoro porta a una carenza di licenze, che porta a richieste e chiamate da parte degli abbonati al servizio di tecnologia dell'informazione con questo problema.
Problemi tecnici
- Mancanza di strumenti per visualizzare l'elenco delle licenze occupate.
Opzioni di soluzione
- Una soluzione già pronta supportata dal produttore del software, che consente agli utenti di visualizzare in modo indipendente l'elenco delle licenze occupate.
- Sviluppo di qualsiasi soluzione adeguata per visualizzare un report sul funzionamento del gestore delle licenze sotto forma di pagina web.
Decisione presa e attuazione
Termini di riferimento
- Possibilità di risparmiare sulla licenza del sistema operativo
- Visualizzazione dell'elenco degli utenti titolari di licenze
Implementazione del gestore delle licenze
È stata presa la decisione di implementare in modo indipendente la funzione necessaria. Ordine di esecuzione:
- Installazione e configurazione di CentOS 7 su un server di virtualizzazione
- Installazione ed esecuzione di Autodesk Network License Manager per Linux
- Configurazione dell'utilità per l'avvio automatico al riavvio del sistema operativo
- Impostazione del file dei parametri (ne scriverò di seguito)
- Installazione di un server web locale e PHP
Implementazione della visualizzazione dell'elenco delle licenze occupate
- Crea un file .sh con i contenuti seguenti:
#! /bin/bash /opt/flexnetserver/lmutil lmstat -a -c [путь к файлу .lic]> "/var/www/html/log.txt"
Viene inserito in una comoda directory e configurato come file eseguibile.
Utilizzando questo comando, lo stato del gestore delle licenze viene caricato nel file log.txt
- Utilizzato il comando
watch -n 5 [путь к созданному в п№1 файлу .sh]
Ciò ti consente di chiamare uno script bash creato in precedenza ogni 5 secondi.
- Nella directory log.txt dal punto 1, c'è un file index.php con il seguente contenuto
<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>
Per favore non giudicare il codice PHP; specialisti più professionali lo faranno meglio, ma l'ho fatto al meglio delle mie conoscenze.
L'essenza di come funziona index.php:
- Ricevo il testo del file log.txt, generato in precedenza dallo script e aggiornato ogni 5 s.
- Sostituisco i tag di trasferimento con tag html.
- Ho diviso il testo in un array riga per riga.
- Formatto l'ordine e il contenuto delle righe.
Il risultato dell'implementazione di tutti i requisiti
Come appare la GUI del server:
Come appare la pagina web:
File delle opzioni .opt
Ha indicato
TIMEOUTALL 14400
— il tempo di inattività del programma è limitato a 4 ore
MAX_BORROW_HOURS [CODE] 48
— la durata massima del prestito è limitata a 2 giorni.
Доп. информация
Perché L'organizzazione utilizza gli account di dominio registrati corretti. anagrafica dei dipendenti, effettuando il login è molto semplice identificare lo specialista che ha preso la licenza.
Risultato complessivo degli sforzi:
- L'utente vede autonomamente la licenza occupata e il carico sul servizio di supporto tecnico viene ridotto di conseguenza.
- All'interno di un team di specialisti che lavorano nel software senza la partecipazione di personale tecnico. supporto, la domanda “Chi otterrà la licenza?” viene risolta e, a seconda della priorità del lavoro, la licenza viene rilasciata o occupata.
- Risparmia sulle licenze Windows.
Fonte: habr.com