License Server

Download Report

Transcript License Server

Autodesk® Licensing Under the Covers
Jerry Milana
Autodesk Consulting
© 2011 Autodesk
Class Summary
This class will focus on the technology behind Autodesk Network Licensing targeted
towards CAD and IT professionals responsible for software license management.
© 2011 Autodesk
Learning Objectives
At the end of this class, you will be able to:
 Describe Autodesk Licensing Architecture
 Explain license cascading
 Create simple scripts to perform routine administrative tasks
 Create and edit the license manager options file
© 2011 Autodesk
Jerry Milana

Autodesk Consulting

Senior Consultant




Autodesk Platform Marketing


Senior Technical Product Manager for Licensing and Install
Autodesk Product Support

Technical lead





Enterprise Implementation
SMS Deployment
Integration Consulting
Licensing
Install
Unix
Network Integration
Autodesk Partner


Managed Autodesk Products
Managed System Integration Services
© 2011 Autodesk
Autodesk Network Licensing – The Basics

Built on Flexera FLEXnet Publisher (FNP).

FNP is a development kit to provide software application licensing.

FY 2012 products ship with FNP v9.1.
 Licensing is implemented based on the concurrent usage model.


Autodesk Network Licensing uses ‘Certificate’ licenses.



Allows up to the licensed number of users to start a given product.
ASCII text files with license and authentication information.
Autodesk vendor daemon is ADSKFLEX.
The Network License Manager is provided with all network licensed products.
© 2011 Autodesk
Licensing Termonology

License Server
 License Files
 Authentication
 Heart Beat
 Redundant Pool
 Distributed Pool
 Client Application
 License Checkout
 License Borrowing
© 2011 Autodesk
Autodesk Licensing Architecture
Product.exe
A
d
L
M
API
Business Logic
SLM
NLM
Commercial,
Student, Term,
Educational, NFR
Register Today
E-REG
© 2011 Autodesk
FLEXlm Components

License file
 License servers
Master daemon “lmgrd”
 Vendor daemon “adskflex"

Client application “AutoCAD”
 Log files


lmgrd debug log file
 Report log file (optional)

End-user options file (optional)
 LMTools


lmutil utilities-lmstat, lmver, lmhostid, lmdiag, etc.


Point and Click Administrative Interface
Command line driven Administrative Interface
SAMreport-Lite
© 2011 Autodesk
License Server

License Server Consists of 2 Components

Master daemon (lmgrd):

Starts vendor daemons from license VENDOR lines
 lmgrd directs client to vendor daemon port
 Restarts vendor daemon if vendor daemon dies
 Available at www.flexerasoftware.com

Vendor daemon (adskflex):

Grants, denies client license request
 Contains Autodesk authentication information
© 2011 Autodesk
Authentication

Locks a license file to a specific piece of hardware

License file “SIGN” parameter


Encryption of license data plus Host ID
Ethernet Network Adapter (HostID)

MAC address
© 2011 Autodesk
License Server Startup

LMGRD starts
 Writes debug log file
 Reads license file
 LMGRD starts vendor daemon (ADSKFLEX)
 ADSKFLEX writes to debug log file
 Reads license file
 Reads option file (if found)
 Writes report log (if configured)
© 2011 Autodesk
Application Startup

Application is executed
 Application generates a request for a license
 Server resolution occurs
 Master Daemon (LMGRD) receives request
 LMGRD determines the appropriate Vendor Daemon
 Request is passed to Vendor Daemon (ADSKFLEX)
 ADSKFLEX grants or denies a license
 ADSKFLEX maintains a heartbeat with each active application session
© 2011 Autodesk
Server Resolution

Methods by which clients find license servers.

With FLEXnet resolution is explicitly controlled by the customer (system
administrator)

Workstation local file
 Workstation local environment variable

FLEXnet License Managers are passive, they do not advertise
© 2011 Autodesk
Network Licensing Models
100
Clients
100
Clients
Single
Clients
Clients
33
Clients
33
Clients
34
Clients
Redundant
Distributed
Users
© 2011 Autodesk
License Fault Tolerance
Redundant Servers








Requires exactly 3 servers
If one server fails all seats still available
If two servers fail no seats are available
If communication fails between the redundant pool no seats are available
Servers must be located physically and logically close together
If a member server is replaced the entire pool must be rebuilt
All license traffic is handled by the Master Server
No fault tolerance is provided for network infrastructure failure
© 2011 Autodesk
License Fault Tolerance
Distributed Servers








Any number of servers may be utilized
If one server fails some seats will be unavailable
If 2 servers fail some seats are available
Each server is independent and does not rely on communication with the others
Servers can and should be located physically apart to achieve maximum infrastructure
fault tolerance
If a member server is replaced the rest of the servers are unaffected
Each server can handle a portion of the license traffic
Can be leveraged to provide priority user access

Only high priority users have feature access privileges on certain servers the rest of the user
population only draws on the ‘main’ servers
© 2011 Autodesk
Grant or Deny Session

Is the Feature Code defined in the License File?

Did the Feature Authenticate?

Is there available seat count?

Does the Options File Contain a Rule that Forces Denial?

Otherwise Grant a License and decrement available seat count
© 2011 Autodesk
License Search Examples
Single Server (LICPATH.LIC)
SERVER ADSKLMSERVER 1a2b3c4d7e8f
USE_SERVER
Redundant Server (LICPATH.LIC)
SERVER ADSKLMSERV1 1b448c486970 27005
SERVER ADSKLMSERV2 8736ae86de91 27005
SERVER ADSKLMSERV3 1c83bc896432 27005
USE_SERVER
Distributed Server (Environment variable)
ADSKFLEX_LICENSE_FILE=@COAdskLMServer;@UKAdskLMServer
© 2011 Autodesk
Prior Version Support

Offered to Subscription Customers Only!

Network Versions

License Manager will regulate sessions for the current version plus the prior 3 releases
2012 – 2011 – 2010 – 2009
 Each release started concurrently on a workstation pulls a license.
 Implemented using ‘Package’ licensing.


Standalone Versions

Autodesk systems will allow the current version plus three prior versions to be activated
on the same computer.
© 2011 Autodesk
Package License – Suite Prior Version Support
PACKAGE 85788BDSADV_F adskflex 1.000 COMPONENTS="85788BDSADV_2012_0F \
85536ACD_2011_0F 85651BDSADV_2011_0F 85607SHOWCASE_2011_0F \
71200ACD_2010_0F 83900MBXPRO_2010_0F 82200STRDET_2010_0F \
73000BLDSYS_2010_0F 72200ARCHDESK_2010_0F 70000MAXDES_2010_0F \
74100REVIT_2010_0F 73900REVITST_2010_0F 73800RVTMPJ_2010_0F \
71400NAVMAN_2010_0F 68600AQTO_2010_0F 57600ACD_2009_0F \
59900BLDSYS_2009_0F 60100ARCHDESK_2009_0F 612003DSMAX_2009_0F \
62100REVIT_2009_0F 62200REVITST_2009_0F 67800RVTMPJ_2009_0F \
69100NAVMAN_2009_1F"
© 2011 Autodesk
Example Subscription License File
SERVER paradise 1234abcd01fb
USE_SERVER
VENDOR adskflex port=2080
PACKAGE 64300ACD_F adskflex 1.000 COMPONENTS="85730ACD_2012_0F \
85536ACD_2011_0F 71200ACD_2010_0F 57600ACD_2009_0F" \
OPTIONS=SUITE SUPERSEDE ISSUED=04-Nov-2011 SIGN="1A42 46B1 \
D9B3 C1A4 369B 354E F267 8678 8149 CF2A 1E8C AF4E C921 48F2 \
2922 08F8 D0B4 A8D7 BA87 B20D D89E 5B40 C8FD 43AD 5003 DB50 \
2498 C6ED B1A9 0541" SIGN2="06D8 6AC4 9658 2CEC 86A2 6A6D 3C56 \
802D 7944 2FF0 220D 750D ACCA 5312 04A9 0C24 1E37 A908 E597 \
873D 951F AC2D D28E 9E75 1067 D2A5 F08F C475 D07F 4619"
INCREMENT 64300ACD_F adskflex 1.000 permanent 1 \
VENDOR_STRING=commercial:permanent SUPERSEDE DUP_GROUP=UH \
SUITE_DUP_GROUP=UHV ISSUED=04-Nov-2011 BORROW=4320 \
SN=399-11111111 SIGN="113C 8D09 3928 7271 6085 1D67 BFD1 63D5 \
A930 B24F 7200 79DE 038C 829E B6E5 118D C95E 5C4F A58E B024 \
12B3 16E5 01BF A21C B87F 1494 5013 C55F 5560 1091" SIGN2="0F7C \
16FF D87B FF60 821F C18C FA63 28D4 76D9 0BC3 D9A3 59C4 253A \
E73F CF55 0756 DFD7 9C1A 8855 628F FD9A 93C8 CBD1 B803 39BB \
E0FB 7274 4AC5 1743 FF84“
Note: There is another section called PLIST included with this file.
© 2011 Autodesk
Example Session Specific License File
AutoCAD Map 3D 2011
SERVER paradise 12345a12345b
USE_SERVER
VENDOR adskflex port=2080
INCREMENT 85557MAP_2011_0F adskflex 1.000 permanent 5 \
VENDOR_STRING=commercial:permanent SUPERSEDE \
ISSUED=12-Nov-2010 SN=399-98761234 SIGN="0E9D 35A7 696E BD9F \
BDE3 A795 FABA 9DA5 09A9 2835 F860 BFB3 9E07 1033 122C 1D87 \
BAB5 76A4 DE87 FF32 16BD DDB8 1A3E 299D 7EAC 6538 3E0D C5B5 \
71AF F3FE" SIGN2="09DD 67A1 5D80 80EE CB8B D51D E6D6 6B5E 2AA0 \
D75B 3904 4399 9E05 CA6F 2B3E 08C4 220D 4231 ECB7 02E7 F733 \
E80A 25BA 15F4 DB62 C810 ECB3 FF0B F3F8 3B19"
© 2011 Autodesk
Cascading

Enables network licensed products to use unused licenses of other products.
 Products cascade in specific order, it is not configurable.
 Cascading always starts with the product’s native license.
 2012 Cascade List Posted at:
http://usa.autodesk.com/adsk/servlet/ps/dl/item?siteID=123112&id=16981643&linkID=9240617
© 2011 Autodesk
Cascade License Sharing

Enhances economy of use for network licensed products.
 Returns a lower level license when a higher level license is consumed that
includes the lower level product.
 License sharing is a resolution process that occurs post initial license checkout.

Product A starts and pulls a license
 Product B starts and pulls a license that also allows Product A to run
 Product A returns its license and uses the common license with Product B


Sharing does not occur if both products can checkout unique lower level
licenses even if a higher level sharable license exists.
Higher level licenses do not get returned.
© 2011 Autodesk
AutoCAD 2012 Cascading Order
AutoCAD 2012
AutoCAD Mechanical 2012
AutoCAD P&ID 2012
AutoCAD Plant 3D 2012
Autodesk Design Suite Standard 2012
Autodesk Building Design Suite Standard 2012
Autodesk Infrastructure Design Suite Standard 2012
Autodesk Plant Design Suite Standard 2012
Autodesk Design Suite Premium 2012
AutoCAD Revit Architecture Suite 2012
AutoCAD Revit Structure Suite 2012
AutoCAD Revit MEP Suite 2012
Autodesk Building Design Suite Premium 2012
Autodesk Infrastructure Design Suite Premium 2012
Autodesk Plant Design Suite Premium 2012
Autodesk Design Suite Ultimate 2012
Autodesk Building Design Suite Ultimate 2012
Autodesk Infrastructure Design Suite Ultimate 2012
Autodesk Plant Design Suite Ultimate 2012
Autodesk Design Academy 2012
Autodesk Building Design Suite for Education 2012
Autodesk Infrastructure Design Suite for Education 2012
Autodesk Product Design Suite for Education 2012
Autodesk Education Master Suite 2012
© 2011 Autodesk
Cascading Example
Start Product
A
Product A
Ask for License A
License B
License C
No License A available
Cascade Sequence:
1. License A
2. License B
3. License C
Product C
Cascade Sequence:
1. License C
License Server
Workstation
© 2011 Autodesk
Cascading Example
Start Product
A
Using
License B
Product A
Ask for License B
License B
License C
Grant License B
Cascade Sequence:
1. License A
2. License B
3. License C
Product C
Cascade Sequence:
1. License C
License Server
Workstation
© 2011 Autodesk
Cascading Example
Start Product
C
Using
License B
Product A
Cascade Sequence:
1. License A
2. License B
3. License C
License B
License C
Ask for License C
Cascade Sequence:
1. License C
Grant License C
License Server
Product C
Using
License C
Workstation
© 2011 Autodesk
Cascading Example
3 minutes later
Return License B
License B
License C
Share License C
Using
License C
Product A
Cascade Sequence:
1. License A
2. License B
3. License C
Product C
Cascade Sequence:
1. License C
License Server
Using
License C
Workstation
© 2011 Autodesk
Options File
Used to configure license management behavior

Report Log Creation
 Control Borrowing

Limit maximum borrow period below Autodesk allowed period
 Control who can borrow licenses

Control Feature Access



Reserve licenses for specific users or systems
Deny access to features
Idle License Recovery

Timeout can be set for each feature or globally for all Autodesk products
 Recover licenses due to user inactivity
 Recover licenses due to ungraceful program termination or disconnect

Name it ADSKFLEX.OPT and place it in the same folder as the license file
© 2011 Autodesk
Options File Parameters

USER—OS name of application user

HOST—machine where application is executing

GROUP, HOST_GROUP—created in options file

INTERNET—host IP-address. “*” wildcard supported

Line continuation character “\” 2k limit per line
© 2011 Autodesk
Inactive Session: TIMEOUT

TIMEOUT releases inactive license

TIMEOUTALL seconds

Seconds – license freed after seconds
© 2011 Autodesk
Reserve, Include, Exclude Logic
Reserve dedicates seat count to entities

Reserved license count will not be available except for specified entities
 Does not set a ‘priority’ condition
Exclude denies access to specified entities

Everyone not listed is assumed to have license access
Include permits access to specified entities

Everyone not listed will be denied access
Excludes take precedence over Includes

If an entity is specified in both for a feature access will be denied
Remember that the options file syntax is Case Sensitive

Username and hostname case sensitivity in Groups can be turned off with GROUPCASEINSENSITIVE ON
 Keywords must always be UPPER case
 Mistypes are easy, double check the debug log!
© 2011 Autodesk
Sample Options File
The following example performs the following:









The following example performs the following:
Creates a report log in the specified folder
Creates a group called acd_BORROW
Allows only members of acd_BORROW to borrow AutoCAD 2012 licenses
Sets the maximum AutoCAD 2012 borrow time to 440 hours
Overrides Autodesk’s controlled maximum of 6 months
Denies any license to machines in the IP range of:
123.123.123.0 through 123.123.123.255
User and Host names in Group lists will be case insensitive
Sets Idle Timeout for all Autodesk products to 5400 seconds
REPORTLOG +C:\adsk_flexlm\logs\report.log
GROUP acd_BORROW jonesm potterh smithp
INCLUDE_BORROW 85730ACD_2012_0F GROUP acd_BORROW
MAX_BORROW_HOURS 85730ACD_2012_0F 440
EXCLUDEALL INTERNET 123.123.123.*
GROUPCASEINSENSITIVE ON
TIMEOUTALL 5400
© 2011 Autodesk
Access Priority
Prioritization can be accomplished by providing strategic access to an array of
distributed servers:
1.
2.
3.
4.
5.
Setup multiple license servers each controlling a portion of your license seat count
Designate one or more servers to only service Priority Users
Set the ADSKFLEX_LICENSE_FILE variable for Priority Users to include all servers
Set the ADSKFLEX_LICENSE_FILE variable for the general user population not to
include the Priority License Server(s)
Set an Include statement for each feature on the Priority Server(s) to allow license
access only by Priority Users
© 2011 Autodesk
Reporting
SAMreport-Lite

Included with Autodesk Products

Provides only usage summary reports

Can summarize by feature and either machine or user

No usage over time or high water mark reporting

No filtering or grouping
© 2011 Autodesk
Installing SAMreport-Lite

Obtain License File

www.autodesk.com/samreportlite

You need a license file for each server you wish to generate reports from, not
each workstation running SAMreport-Lite

Install Java Runtime from product media

Install SAMreport-Lite from product media
© 2011 Autodesk
Report Log File Creation

Add the following syntax to your ADSKFLEX options file:
REPORTLOG +<report log file name and path>

Path Must be quoted if it contains spaces

No space between the + sign and the path

If the + sign is omitted, the log file will be overwritten each time the license
manager is started
© 2011 Autodesk
LMUTIL – Command Line Tool – Syntax

LMUTIL [function] [parameters] <switches>

LMUTIL.EXE may be renamed to <function>.EXE to save typing strokes


LMREREAD.EXE = LMUTIL.EXE LMREREAD
LMUTIL syntax documentation is available online from Flexera web site
© 2011 Autodesk
Scripting LMutil
Common Administrative Tasks
LMREREAD
 Reread changes to license and options file
LMSTAT
 Check status of licenses
 Output may be filtered using flags and/or external filters such as GREP
LMNEWLOG
 Create an archive report log and zero the active report log
 There is no GUI (LMTools) method
© 2011 Autodesk
Why Script LMutil?

Easier to use and more predictable than LMtools when used on remote systems

Get the results you expect and need every time

LMutil syntax can result in rather long command lines and is unforgiving

Once you get it right you only type it once

Data can be combined from multiple servers, filtered and formatted
© 2011 Autodesk
Example Scripts
To reread the license and options file on three servers:
lmutil lmreread –c 27000@server1
lmutil lmreread –c 27000@server2
lmutil lmreread –c 27000@server3
echo Please check for error messages
pause
To check usage status of AutoCAD 2012 on three servers:
lmutil lmstat –c 27000@server1 –f 85730ACD_2012_0F
lmutil lmstat –c 27000@server2 –f 85730ACD_2012_0F
lmutil lmstat –c 27000@server3 –f 85730ACD_2012_0F
echo Please check for error messages
pause
© 2011 Autodesk
Example Script

This script archives the existing report log and creates a new empty active log.
 This script must run from a command line, double click will not work.
 This script requires 2 parameters
 the license server name
 the name of the archive log file
 If the parameters are not passed a usage error is displayed.
echo off
if "%1" == "" GOTO NFILE
if "%2" == "" GOTO NFILE
lmutil lmnewlog -c \\%1\flexlm\license\autodesk.lic adskflex \\%1\<archives folder>\%2.rl
GOTO END
:Nfile
ECHO "usage: nlog <server name> <archive log file name>"
pause
GOTO END
:END
© 2011 Autodesk
Trouble Avoidance
Fault tolerance can shield the onset of problems until they become raging fires

Redundant and Distributed Servers require routine monitoring

Single point failures are often masked by the technology

Monitor by routinely running LMstat against all servers


Consider automating this process and notifications
Debug logs should be periodically audited for signs of problems

Failed feature authentication
 Missing options file functionality
 Unexpected license denial
© 2011 Autodesk
Troubleshooting – Things that go bump!



Authenticating against a logical MAC address that subsequently updates
Typographical and Syntax errors in the license file and/or options file
Corruption of the license or options file by editing with a non-ASCII editor



Exceeding connection limits on servers
Filtering license management ports


Use Notepad, not Wordpad or Word
TCP 27000-27009 (LMGRD) and TCP 2080 (Adskflex)
Infrastructure failure

Server hardware
 Network services
© 2011 Autodesk
Troubleshooting – Failure Recovery

If the authenticating NIC survives a server failure the NIC can be moved to the
replacement hardware and the license file reused.

If the new server inherits the failed units name nothing else is required
 If the replacement hardware used a different hostname then the license file server name parameter
must be edited. (this may not work for Brand X products)
 Single and Distributed server NIC replacement do not effect other servers

If the NIC fails or is on the Server system board a new license file will be required

If the failed server was a member of a redundant pool then a new redundant license file
must be obtained and installed on each redundant member.
© 2011 Autodesk
Suite Licensing



Permits a single user to use any mix of the products included in the suite on a
single machine.
Standalone licensed suite product components may not be installed across
multiple workstations.
Network licensed suite products will pull a single suite license per
user/workstation regardless of how many component products are running at
the same time on a given workstation.
© 2011 Autodesk
IPv6 Compliance

Client side license components are IPv6 compatible

IPv6 server components do not ship on product media

IPv6 server component are available for download

Recommended Platforms for IPv6 implementation:

Windows 2008 Server running IPv4 and IPv6
 Vista workstations running IPv6 with or without IPv4
© 2011 Autodesk
Integrating with Brand-X Licensing

Install and Setup a separate FLEXlm manager for each vendor

Specify a unique LMGRD and vendor daemon port for each vendor
The following is an example license file header for Autodesk products specifying TCP
Port 27003 for LMGRD and TCP Port 2080 for the Autodesk vendor daemon
(ADSKFLEX)
SERVER PARIDISE 01d059bfcacf 27003
USE_SERVER
VENDOR adskflex port=2080

Non FLEXlm license managers are non issues

Just make sure nothing steps on your FLEXlm ports
© 2011 Autodesk
Network License Borrowing

Borrowed Licenses Reduce Available Network Licenses

Borrows are on a per user and per computer basis.

Borrow Time Limit is 6 months

May be limited to smaller periods in the options file.

Borrowed Tokens May be Returned Early

There is no relationship/interaction between a standalone license and a
borrowed license
© 2011 Autodesk
A Few Words About Product Keys
• Product Keys drive licensing properties for standalone licensed products only.
• The Product Key, Serial Number and product must match up or the product will not activate.
© 2011 Autodesk
Autodesk, AutoCAD* [*if/when mentioned in the pertinent material, followed by an alphabetical list of all other trademarks mentioned in the material] are registered trademarks or trademarks of Autodesk, Inc., and/or its subsidiaries and/or affiliates in the USA and/or other countries. All other brand names, product names, or trademarks belong to their respective holders. Autodesk reserves the right to alter product and
services offerings, and specifications and pricing at any time without notice, and is not responsible for typographical or graphical errors that may appear in this document. © 2011 Autodesk, Inc. All rights reserved.
© 2011 Autodesk