Desaware Home
Products    Purchase    Publishing    Articles   Support    Company    Contact    
Support
Product FAQ
Licensing System
CC Factory
Event Log Toolkit
Gallimaufry
IniFile Tool-5M
LineGraph-5M
NT Service Toolkit
OneTime Download
SpyWorks
StateCoder
StorageTools
VBX Legacy
VersionStamper
Downloads
Documentation
Professional Services

 

bluebar
Contact Desaware and order today

bluebar
Sign up for Desaware's Newsletter for the latest news and tech tips.

Desaware Licensing System Support

Server Migration

It's not uncommon for a licensing server to remain active for years, but sooner or later many companies find it necessary to upgrade their licensing server. Here are some guidelines to help you do so while minimizing downtime.

Version 1.X or 2.X?

Server migration might be a good time to upgrade your licensing system from version 1.X to 2.X. This is especially important if you are switching to a cloud or virtual server, where the version 2.0 server licensing is based on the domain URL rather than a particular machine. Version 2.0 also supports .NET 4.0, which is much more efficient than earlier versions of .NET with regards to encryption. If you do upgrade, we generally recommend upgrading your existing license server first. Information on upgrading an existing license server can be found here:

Minimizing Server Downtime

Achieving a near zero downtime migration is possible, but takes careful planning.

There are two potential major time consuming operations during a migration:

  • Time to move or migrate the database.
  • Time for DNS changes to propagate

Of these, the latter is critical. Assuming your license server has its own subdomain (such as licensing.yourcompany.com), at some point you'll need to change the IP address that this domain points to. That change can take hours to propagate through the Internet.

There are only two ways to avoid potential downtime during this delay:

  • Physically swap in a new server with the same IP address
  • Have your new server and your old server share the same database during the transition period.

Of these, the second is most practical. To do this you must be using SQL Server or MySQL, and the database must be accessible from both servers. The migration sequence is as follows:

  • Make your existing SQL server accessible from the new server (this will typically require firewall or other security configuration. If you are also migrating your database, do this step first and make sure the destination database is accessible to both servers. There will be a brief downtime during this migration (you want to stop your existing license server so that your migrated database is not out of sync). The steps are:
    • Do a trial migration and verify that your existing server can connect to the new database.
    • Stop your license server (IIS Manager)
    • Migrate your database data
    • Change the connection string in your license server web.config to the new database.
    • Restart your license server (IIS Manager)
    • Verify that your license server is working correctly.
  • Install the licensing server on the new server. This server MUST be the same version as your current licensing server (version 1.x and version 2.x license servers have different database schemas and once you've upgraded to the 2.x schema, it is not guaranteed to work correctly with a 1.x server).
  • License the new server (see later on this page).
  • Connect the new licensing server to the existing licensing database. Validate that it is able to connect properly and passes all diagnostics.
  • You should now have both license servers working with the same database.
  • Change your DNS setting so that your license URL goes to the new server
  • Wait a couple of days.
  • Take down the old server.

Migrating from an Access Database

If you are using an Access database (only recommended for very light use sites), you probably will not be able to achieve a zero-downtime migration. An Access database can't easily be shared by two servers.

The easiest way to migrate an Access database to SQL is using the SQL Server Import and Export data tool. You only need to migrate tables. In addition:

  • We recommend migrating into a clean SQL database that has been initialized by a license server. The license server automatically creates tables and indexes. You can then use the Import/Export tool to migrate the data.
  • When migrating to a version 1.x database, you may need to manually change some of the database text fields from ANSI to Unicode depending on your existing data. Do so if you see errors in the migration. You may need to drop the database tables and have your license server recreate them several times as you resolve these errors.
  • If you are using an Access database on a new 64-bit server, you will need to configure the application pool to allow 32 bit components.

Licensing the New Server

If you are installing a version 1.x license server, the server is licensed by machine. As such, it is not suitable for use in most cloud and web-farm environments. Licensing this type of server in a migration is the same as licensing it normally (see your documentation).

A version 2.x license server is licensed based on the URL used to connect to the server. You normally license the server by connecting to it from a different machine using the desired URL (when you connect from the local machine, it uses a local machine license - same as version 1.x).

However, during a migration, the desired URL is still mapped to the old server.

The solution is as follows:

  • On a client system, open Notepad in administrator mode.
  • Navigate to the windows\system32\drivers\etc directory
  • Open the hosts file
  • Add an entry to the hosts file that maps your license server domain to the new server IP address.

Now when you use this system to connect to a license server using your license server URL (activation or management URL), it will go to your new server instead of the old one. You can now do a hosted install using the license manager application to license the server for your activation URL.

The domain URL license is embedded in the database itself, so any license server using that can process that URL will be licensed. This is ideal for cloud scenarios, and makes future migrations easy - any new server will already be licensed for that URL.


 
Products    Purchase    Articles    Support    Company    Contact
Copyright© 2012 Desaware, Inc. All Rights Reserved.    Privacy Policy