Configuring your delivery infrastructure in Topology Manager
Use the PowerShell cmdlets (installed with Topology Manager) to define your complete delivery infrastructure and map it to your Content Manager instance(s).
About this task
This task is typically performed by the Business IT department of your organization.
Procedure
- On your Topology Manager server machine, open a PowerShell prompt.
- Define your Topology Type by running the following command:
Add-TtmCdTopologyType -Id TOPOLOGYTYPEID -Name TOPOLOGYTYPENAME -EnvironmentPurposes "PURPOSES"where:- TOPOLOGYTYPEID is a unique ID for this Topology Type, for example,
StagingAndLive. - TOPOLOGYTYPENAME is the display name of this Topology Type, for example,
"Staging & Live". - PURPOSES is a comma-separated list of the Purposes of this Topology Type, for example,
Staging, Live.
For example:
Add-TtmCdTopologyType -ID DemoTopologyType -Name "Demo Topology Type" -EnvironmentPurposes @("Staging", "Live") - TOPOLOGYTYPEID is a unique ID for this Topology Type, for example,
- Define your Content Delivery environments by running the following command on one line (once for each Content Delivery environment):
Add-TtmCdEnvironment -Id CDENVIRONMENTID -EnvironmentPurpose CDENVIRONMENTPURPOSE -DiscoveryEndpointUrl DISCOVERYENDPOINTURL -AuthenticationType AUTHTYPEwhere:- CDENVIRONMENTID is a unique ID for this Content Delivery environment, for example,
CdServerFarm03. - CDENVIRONMENTPURPOSE is one of the Purposes defined for the Topology Type, for example,
LiveorStaging. - DISCOVERYENDPOINTURL is the URL of the Discovery Endpoint URL for this Content Delivery environment, for example, http://discovery.example.com.
- AUTHTYPE is the type of authentication used to access the Discovery Endpoint URL: either
AnoynmousorOAuth. If you set the parameter toOAuth, aClientIdparameter and aClientSecretparameter need to be supplied as well. These are the credentials for a user assuming thecmrole (defaults tocmuser), as configured in the cd_ambient_conf.xml file of the Discovery Service.
For example, to define the Content Delivery Staging environment:
Add-TtmCdEnvironment -ID DemoStagingCdEnvironment -DiscoveryEndpointUrl https://localhost:8082/discovery.svc -EnvironmentPurpose Staging -AuthenticationType OAuth -ClientId cmuser -ClientSecret '******'For example, to define the Content Delivery Live environment:
Add-TtmCdEnvironment -ID DemoLiveCdEnvironment -DiscoveryEndpointUrl https://localhost:8082/discovery.svc -EnvironmentPurpose Live -AuthenticationType OAuth -ClientId cmuser -ClientSecret '*****'Note: Please make sure the Discovery Service port is different if you are running on the same machine. - CDENVIRONMENTID is a unique ID for this Content Delivery environment, for example,
- Define your Topology (or Topologies) by running the following command (once for each Topology):
Add-TtmCdTopology -Id TOPOLOGYID -Name TOPOLOGYNAME -CdTopologyTypeId TOPOLOGYTYPEID -CdEnvironmentIds CDENVIRONMENTIDSwhere:- TOPOLOGYID is a unique ID for this Topology, for example,
CloudTopology. - TOPOLOGYNAME is the display name of this Topology, for example,
"Cloud Topology". - TOPOLOGYTYPEID is the unique ID of the Topology Type of this Topology, for example,
StagingAndLive. - CDENVIRONMENTIDS is a comma-separated list of Content Delivery environments, for example,
CdServerFarm02, CdServerFarm04.
For example:
Add-TtmCdTopology -Id DemoTopologyType -Name "Demo Topology" -CdTopologyTypeId DemoTopologyType -CdEnvironmentIds @("DemoStagingCdEnvironment", "DemoLiveCdEnvironment") - TOPOLOGYID is a unique ID for this Topology, for example,
- Define the website associated with a Content Delivery environment by running the following command (once for each website):
Add-TtmWebsite -Id WEBSITEID -CdEnvironmentId CDENVIRONMENTID -BaseUrls "BASEURLS"where:- WEBSITEID is a unique ID for the website, for example,
StagingWebsite. - CDENVIRONMENTID is the unique ID of one of the Content Delivery environments, for example,
CdServerFarm17. - BASEURLS is a comma-separated list of base URLs (enclosed in double quotes) for this website, for example,
"http://myserver:8082/, http://16.7.2.33/".
For example, the following example defines the staging website:
Add-TtmWebsite -Id Staging_Website -CdEnvironmentId DemoStagingCdEnvironment-Baseurls @("https://demo.staging.com")The next example defines the staging website:
Add-TtmWebsite -Id Live_Website -CdEnvironmentId DemoLiveCdEnvironment-Baseurls @("https://demo.live.com")The sites you define appear in the Sites slide-out navigation screen. Each site automatically contains a default web application with an empty context URL (that is, a context URL of/). The ID of this web application (which you will need when you map a Publication to a web application) is the ID of the website, followed by the string_RootWebApp. So if WEBSITEID above was set toStagingWebsite, the ID of the default web application would beStagingWebsite_RootWebApp. - WEBSITEID is a unique ID for the website, for example,
- Optional: If you want to define other web applications in addition to the default one for a website, define the additional web application(s) associated with each website by running the following command (once for each additional web application):
Add-TtmWebApplication -Id WEBAPPID -WebsiteId WEBSITEID -ContextUrl "CONTEXTPATH"where:- WEBAPPID is a unique ID for the web application, for example,
StagingMicrosite01. - WEBSITEID is the unique ID of the website in which this web application runs, for example,
StagingWebsite. - CONTEXTURL is the web folder path to this web application, relative to the website's base URL, for example,
"/microsite/". If your Publication that maps to this web application publishes to the file system, the value ofContextUrlmust match the Publication Path property of that Publication, as found in its General tab.
- WEBAPPID is a unique ID for the web application, for example,
Results
What to do next
The next step is for web content managers to use Business Process Types in their Publications, to enable publishing to one or more Purposes. Additionally, specific Publications need to be mapped to specific web applications in the Content Delivery environments. web content managers can do this themselves by using the Site Wizard, or they can ask Business IT to run the Add-TtmMapping script.