The add server script has a section for licensing servers. What you could do is strip out everything except this section, and either stick with the current process of specifying a list of colon-delimited servers, or modify it slightly to look at a list of servers on the application server.
Assuming your application server has internet access, it should be very easy to accomplish this.
Jay, there is a program called autolic that can license multiple servers at once. Autolic has an option to handle expired temporary licenses:
autolic -x user password host1 host2 host3...
If you cannot use autolic, there is also getlic and putlic where you can manually generate licenses using the BladeLogic Support Portal.
Actually, I agree with this solution much more. Unless you wanted to accomplish more than simply licensing servers (such as pushing ACLs), then stick with autolic. Otherwise the add_server.nsh script is the way to go.
If your console has both Internet access and NSH access to your agents, then you'll probably have good success with a "License hosts" custom command that calls autolic. Then when you run into missing licenses, you can simply right-click on a list of hosts and license them. You could even create a smart group based on the AGENT_STATUS property being "Agent not licensed" and license that whole list on occasion (with a custom command or otherwise).
Obviously, in the perfect world all agents are licensed within 10 minutes of being installed, but servers always fall through the cracks for a variety of reasons.
I should have said - there is no internet connectivity from our environment, which rules out autolic I guess.
Our situation is that we are looking to save time later on by installing agents now before the network to the apps server is in place - then coming back at a later date to re-license them when they have connectivity to the apps server.
Still not sure if re-licensing saves us any time later on since this requires another visit to each server anyway instead of installing the agent after we have connectivity all in one go....
Anyway- I'll take a look at Gregory's initial solution.
Unfortunately my original solution won't work without internet access either. Because licensing requires some sort of contact with our licensing server, at some point in the process you will need internet access. Whether this is on your application server or not doesn't matter.
It sounds like the best way for you to do this will be the following:
1) Run the 'getlic' command, passing it a host list of all unlicensed servers, which will generate a license.raw file
2) Copy the file to a server that does have internet access (or copy the contents of the file to a server that does have internet access, naming the file license.raw)
3) Log into bladelogic.com, and from the licensing section browse to and submit the license.raw file you created in step 2.
4) Save the generated license.dat file (or its contents to a file called license.dat) on the application server
5) Run the 'putlic' command from the application server.
That should be all it takes.
Jay, relicensing expired agents will not require you to actually visit (ssh, RDP, etc...) each server. You can run getlic and putlic (or autolic) directly from any server that has NSH installed. Often licensing is done from the application server due to firewall issues.
In your environment, you do have some internet facing servers, and you could use them if you want to do something automated.
When you add a server, if you don't want to immediately use it, just store away the getlic information, and when you want to license the server(s), just get the license(s), and then do one massive putlic with the servers in a list. You don't need the servers to be licensed to push the licenses to them!
If you wanted to do something automatic, you could just maintain a list of servers. The could be either
a) already licensed.
b) installed, but you don't want a license yet
c) installed, and you would like a license.
You could have a regularly scheduled (Bladelogic) job that gets the licenses for machines in category c) and moves them to category b).
Of course the manual method isn't too difficult either!
In your environment, you do have some internet facing
servers, and you could use them if you want to do
- Mark, Are you recommending I go surf the internet? :)
When you add a server, if you don't want to
immediately use it, just store away the getlic
information, and when you want to license the
server(s), just get the license(s), and then do one
massive putlic with the servers in a list. You don't
need the servers to be licensed to push the licenses
- Appreciated, but getlic is an NSH command, the agents installed up north will not have NSH or connectivity to a server with NSH for a long time, until the network is in place to connect to the apps server.
This is why I am wondering if I would actually save any time after we have connectivity by putting these agents on now, or whether it would take just as long later on, because there is more of a struggle with re-licensing.
As for all the suggestions received on this topic I'm very grateful...The scheduled job is a great idea, and I appreciate the KB doc very much...
I will take some time to try these out, absorb all your info and then I will let you all know what method we use and what happens.
Thanks again, Jay
To get the licenses, either you surf the internet over to this very support site, or you use the patch download machines (SIS?) with an automated job.
There should be no problem installing first, and then licensing later. Just write down the details of the servers you have installed.
Make a vertical list of all the servers in a text file and use it with getlic -f when the time comes.
Then you have one license.raw to copy to your workstation and upload to the website.
This will give you one license.dat to download and copy over to the NSH environment.
Than one putlic will license all of your servers at once :)
Oh Happy Days...
You're not from round 'ere!
I will try that when the time comes...And thanks for the straight-talking 'northerner' approach. It work every time for me. :)
You're welcome, you soft southern jessy!