SDL Web’s topology manager explained

Topology

As we’re near the release date of SDL Web 8 (Tridion’s 2015 release), it’s time to look at one of the biggest changes SDL have made to their product. Because in today’s world there are more places than just on-premise to serve your content from. Something needed to change in the way publishing is configured. To make it possible to allow for more types of publishing scenario’s the existing structure of Target Types and Publication Targets will be deprecated and replaced by a new system called Topology Manager.

What is Topology Manager

Simply put Topology Manager is the new managing part in SDL Web’s publishing infrastructure that can resolve a Content Delivery Environment to publish to based on the purpose and the content publication. There is not a real user interface to this new manager yet, but all can be configured using Powershell cmdlets. I will not be talking about how to actually configure this all, but I will explain the new concepts and how they all relate to each other.

An overview of the topology manager

An overview of the topology manager

CD Environments, Websites and Web applications

Before explaining what a Content Delivery Environment (CD Environment) is, let’s look at the smallest entity in a CD Environment in Topology Manager, a Web Application. One Web Application can serve multiple publications in SDL Web, as long as each web publication has a different relative URL, each Publication/Web Application pair configured with a Mapping in Topology Manager. Each Web Application is configured with a context url inside a Website. So you could have a Web Application mapped to context url “/” and another on context url “/campaigns” in the same Website. In Topology Manager, a Website is another entity that can have one or more base urls (e.g. http://www.abc.xyz/) and, as you might of guessed, can have one or more Web Applications configured within the same Website.

CD Environment: This is another entity in the Topology Manager and defines a grouping of one or more Websites and for what purpose this environment is used. For example you could have a CD Environment for staging and another CD Environment for production. And each of these CD Environments can be in different location. You could have a CD Environment in the cloud for production purpose and another CD Environment on-premise for staging purpose. Each CD Environment is configured with one Purpose. A Purpose is nothing more than a name in Topology Manager and is used in something a Topology Type, which we will explain next.

Topology Type and Topology

Now that we have a CD Environment with a purpose, you might wonder how we can select it as a target to publish to from SDL Web. Before we can answer that, we have 3 more puzzle pieces that need to be explained. Let’s start with the Business Process Type. This is a new item type in SDL Web and is a bundling of some good ol’ Tridion Target Types.

Per publication, you can define one Business Process Type. Each Target Type in this Business Process Type will be used for a Purpose. So you could have a Business Process Type, that has 2 Target Types, maybe one for Staging for Staging Purpose and one for Live for Live Purpose. This Business Process Type can be mapped to another type of entity in Topology Manager, called Topology Type. A Topology Type is nothing more than a collection of Purposes. And as you might see, each Purpose in a Topology Type is mapped to a Target Type in the Business Process Type.  To configure which actual CD Environment to be used for a certain Purpose, an instance needs to be created of the Topology Type. This last puzzle piece is what is called Topology. A Topology is an instance of a Topology Type and is what maps the list of Purposes to CD Environments.

Example: Staging Editorial, Staging Legal and Live

Let’s look at an example. Say you have an environment that requires content to be approved by a legal department before going live. In such case you would want content editors to be able to publish to 2 staging targets, one for legal and one for previewing, and another target live when all is well.

In this case you would have a Topology Type with 3 purposes, a Staging Editorial, a Staging Legal and another for Live. On the Content Manager side, you would create a Business Process Type which would have these 3 as Target Types, each mapped to one of the purposes.

To configure a CD Environment for each purpose, you would need to add a new Topology, which is configured to use the Topology Type we just defined. In this example, 3 CD Environments would need to be defined, one for each Purpose.

Conclusion

As you can see, there are a lot of new concepts in the new way the publishing infrastructure works. Although publication targets will still be around for some time, it’s best to make a switch to the Topology Manager when the time is there. It is quite a complex structure, but it does seem very flexible.

Kah Tang

Kah Tang

Kah Tang is a senior developer with years of experience in Node.js, .NET and Java. He joined Indivirtual in 2006 to make the web a little better, one line of code at a time. You can also wake him up in the middle of the night for some good boardgames, Android, iOS and NodeJS.