Moving Servers and Changing URLs
In an earlier blog I made it clear (I hope) that you can’t change the public URI of a CLM application, no matter what. While this may change in the future, it’s the law of the land right now.
But sometimes you want to move an application to a new server for load balancing or performance. And sometimes you might need to use a different URL to access your CLM products due to changes in your IT environment. How is that accomplished?
Use virtual hosts to move a CLM application from one machine to another. The URL you’re using to access the application is the same, but the underlying IP address must change. This is all done via a DNS server and is transparent to the users. The pre-requisites for using virtual hosts are:
- Each application’s public URI must describe a unique Fully Qualified Domain Name (FQDN). Said another way, each application must have its own server name. For example, the JTS would be at https://mycorp.dev.jts.myserver.com:9443/jts and RTC would be at https://mycorp.dev.rtc.mydepartment.com:9443/ccm. If the jts and ccm applications use the same server name, e.g. https://mycorp.myserver.clm.com:9443/jts and https://mycorp.myserver.clm.com:9443/ccm you wont be able to move them to different machines because you can’t map the same IP address to two different locations (servers).
- The port number cannot be changed. Sometime people think you can change a port number or root context, but they are actually part of the public URI so they can’t change. When you move the application to a new machine, you need to use the same port number as the old machine.
Take these two constraints into consideration when you install any CLM product. If you do, you’ll be able to easily move them to other machines as your needs change.
Reverse Proxy Server
Reverse proxies allow you to do all sorts of magic to a URL. While you can’t change the public URI of a CLM application, a reverse proxy can re-map parts of the URL such as the FQDN and port number. So if you need to change the way a CLM application is accessed, you can do so by having the reverse proxy re-map everything so it’s transparent to the CLM application (and the users). The CLM application continues to use the same public URI that you installed with.
Reverse proxies require FQDNs. If you used localhost, an IP address, or a non-FQDN for your public URI, you’re out of luck. Your solution in this case would probably be to install a new version of CLM using an FQDN and use that for all new projects. This situation is only possible if you are using (or have upgraded from) a CLM product prior to version 3.0.1.
Check out Dave Chadwick’s article on how to plan for the future with URIs, which covers this topic in more detail.