日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

flexnet许可证服务器_使用rrdtool进行Flexnet许可证监视

發布時間:2024/1/1 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 flexnet许可证服务器_使用rrdtool进行Flexnet许可证监视 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

使用rrdtool進行Flexnet許可監控

介紹

你們中有些人可能會知道商業Flexnet許可應用程序(?Macrovision)。 這是一個基于客戶端 - 服務器的解決方案,用于管理所謂的支持Flexnet的應用程序的使用。 您可以在一個許可證服務器上持有多個產品的許可證。 由于您通常必須購買許可證和許可證可能很昂貴,因此,要獲得監控解決方案,查看寶貴許可證的使用情況,以及未被充分利用的資金(因此浪費資金)或始終被充分利用(因此您可以懷疑有時人們不能做他們的工作,或者只是延遲),這也是浪費資源。

據我所知,有執行這些報告的商業申請,但再次你必須花錢。 為什么不自己構建一個簡單的系統,它顯示了“ MRTG風格”中的實際和過去使用情況?

初步注釋+免責聲明

在本教程中,我將使用一些腳本,即Shell和Python腳本。 我認為整個應用程序應該運行在每個Linux上,我在CentOS和Ubuntu上執行 。 我們需要一個可以運行CGI腳本的Web 服務器軟件 ,我使用了眾所周知的Apache和THTTPD ,但我相信每個webserver軟件都應該能夠運行這個應用程序。 它也是我以前的網絡監控設備的完美擴展 。

以下教程描述了我實現我的解決方案的方式,它是用一種烹飪Recipe風格寫的。 我無法保證您可以實現類似的解決方案。

建筑

解決方案的架構很簡單,見下圖:

我們將授權服務器保持原樣,但通過網絡獲取必要的信息。 因此,我們使用屬于Flexnet軟件的lmutil程序,不僅存在于Windoze版本中,還存在于Linux版本中。 據我所知,lmutil的舊版本也可用于HP / UX,Solaris和AIX,所以有機會運行其中一個操作系統可以用于構建監控系統,但是我還沒有嘗試過。

lmutil的輸出被過濾,所有相關信息都可以放入一個或多個rrd數據庫,我已經為每個許可證使用了一個數據庫。 rrd也用于直接在Web服務器軟件的子目錄中生成圖形,從而可以在web瀏覽器中輕松顯示。

2.輪詢許可證服務器

我已經將最新版本的lmutil復制到/ usr / local / bin ,并檢查它是否可執行:

# ls -l /usr/local/bin/lmutil

-rwxr-xr-x 1 root root 309168 2008-01-08 00:45 /usr/local/bin/lmutil

我們可以檢查所有共享庫lmutil是否鏈接,存在于我們的系統上:

# ldd /usr/local/bin/lmutil

linux-gate.so.1?=>??(0xf7796000)

libpthread.so.0?=>?/lib32/libpthread.so.0?(0xf7760000)

libdl.so.2?=>?/lib32/libdl.so.2?(0xf775c000)

libc.so.6?=>?/lib32/libc.so.6?(0xf7601000)

/lib/ld-linux.so.2?(0xf7797000)

作為一個命令行實用程序lmutil沒有與許多共享庫鏈接,所以機會很高,它們已經被安裝了。

然后,我已經建立了一個小腳本,用于輪詢所有許可證的許可證,許可證在許可服務器上運行的多個產品的許可證,如下所示:#!/bin/dash

# Product1

/usr/local/bin/lmutil lmstat -c 27000@licserv -a | /usr/local/sbin/lmrrd.py

# Product2

/usr/local/bin/lmutil lmstat -c 27001@licserv -a | /usr/local/sbin/lmrrd.py

我已經使用/ bin / dash作為這個腳本的解釋器,因為破折號消耗的資源比bash少,但是如果你喜歡,可以隨便使用bash。 各種產品的許可證在不同的端口上運行。 lmstat的輸出直接輸入到Python腳本中,其中需要的所有信息被過濾掉并放入適當的rrd數據庫中。

cron用于建立一個5分鐘的輪詢。 因此,名為rrd的 /etc/cron.d/中的條目被創建,如下所示:*/5 8-16 * * 1-5 root LANG=C LC_ALL=C /usr/local/sbin/licenses.sh

我們只對星期一到星期五以及上午8點至下午5點使用許可證感興趣。

但在此之前,我們首先必須創建lmrrd.py腳本。

3. lmrrd.py腳本

rrdtool用作此任務的數據庫。 rrdtool具有不同的腳本接口,即從shell,perl,python和tcl / tk腳本。 我使用python因為它是干凈的語言設計和多功能性。

此腳本用于過濾lmutil的輸出,并將相關信息直接放入指定的rrd數據庫。 看起來像:#!/usr/bin/python

# Script to filter the output of lmstat to use it as input for rrd

import sys, string, rrdtool

# searchterm, position of actual value and position of max value in every line

# db is the name for the rrd dbfile

search = [ { 'term':"Users of CL:", 'val':10, 'max':5, 'db':'CL' },

{ 'term':"Users of xyzabc:", 'val':10, 'max':5, 'db':'xyzabc' },

{ 'term':"Users of qwerty:", 'val':10, 'max':5, 'db':'qwerty' } ]

rrddir='/var/rrd/'

# read all lines from stdin

for line in sys.stdin.readlines():

# search in every line for the searchterm out of the above array

for x in search:

if x[ 'term' ] in line:

cols = line.split()

if not cols[ x[ 'max' ] ].isdigit() or not cols[ x[ 'val' ] ].isdigit():

print "0\n0\n0\n", x[ 'term' ]

# put the values in the assigned rrd dbfile

rrdtool.update( rrddir + x[ 'db' ] + '.rrd', \

'--template=value:total', \

'N:' + cols[ x [ 'val' ] ] + ':' + cols[ x[ 'max' ] ] )

陣列中的搜索項可以提取“lmutil”的輸出,也可以提取許可證數量的實際值和最大可能值的位置。

您需要rrdtool的python綁定,可以在操作系統的軟件包存儲庫中找到,也可以在rrdtool的維護者的網站上找到。

實現后,此腳本以root權限運行。 原始rrd文件應該是世界可讀的,因為生成圖的以下腳本僅在http-server進程的所有者的許可下運行,通常是www數據或類似的。

總結

以上是生活随笔為你收集整理的flexnet许可证服务器_使用rrdtool进行Flexnet许可证监视的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。