Lifecycle Coordinator Installation

Provides information about how to install the Lifecycle Coordinator feature.

Promotion User's Guide Sample Topologies

API Platform Version: 8.4.3 and later

Table of Contents

  1. Overview
  2. Getting the installation ZIP file
  3. Installing the Lifecycle Coordinator feature
  4. Checking for database-specific requirements
  5. Securing the Topology REST API
  6. Remote container address (com.soa.promotion)
  7. Properties to secure the Topology REST API (com.akana.lifecycle.coordinator) (8.4.15 and later)
  8. Unique ID Mapping behavior
  9. Default "From Email" setting
  10. Tenant Synchronization Interval (8.4.16 and later)

Overview

To install Lifecycle Coordinator, you'll essentially follow the same process as to install the Akana API Platform; see Installing the Akana API Platform 2018.0.0. However, there are specific installation options you should choose, and there is some additional information you should be aware of. Before installing, review the information in the sections below.

Back to top

Getting the installation ZIP file

For versions prior to 2018.0.0, if you're installing Lifecycle Coordinator, you'll need a specific ZIP file in addition to the main ZIP files for Akana API Platform installation.

In version 2018.0.0 and later, Lifecycle Coordinator is part of the main Akana API Platform ZIP file; you don't need any additional ZIP file.

Log in to the Rogue Wave Support Center (https://library.roguewave.com).

In the My Resources section, click Product Downloads, then click Akana - Product Downloads. Download the applicable lifecyclemanagerplatform_8.4.xx.xxxxx.zip file for Lifecycle Manager; for example, lifecyclemanagerplatform_8.4.16.02264.zip file.

Back to top

Installing the Lifecycle Coordinator feature

For an on-premise installation of the Akana API Platform, the Lifecycle Coordinator feature must be separately installed from the Akana Administration Console:

Lifecycle Coordinator feature

Installing Lifecycle Coordinator implicitly installs the Lifecycle Repository feature as well. After selecting Lifecycle Coordinator for installation, the user is guided through a number of configuration tasks for the Lifecycle Repository feature.

Back to top

Checking for database-specific requirements

Depending on the database version you're using, there might be additional steps you need to take. You should perform these steps after installation and before the additional configuration steps.

For details of the requirements for specific database types and versions, refer to the database notes section of the Akana API Platform installation documentation. Specifically, there are notes for Microsoft SQL Server and MySQL relating to installation of Lifecycle Repository.

Complete any applicable steps before continuing.

Back to top

Securing the Topology REST API

There is also a task to secure the Topology REST API, as shown below.

Set Topology API Credentials task

This sets up the credentials for basic authentication on calls to the Topology REST API.

Back to top

Remote container address (com.soa.promotion)

If the Lifecycle Coordinator is installed remotely, a URL to the remote container hosting the Lifecycle Coordinator instance must be configured for each container hosting tenants from which promotion can be requested.

To set this up:

  1. In the Akana Administration Console, open the Configuration tab.
  2. Select the com.soa.promotion category.
  3. Set the remote.promoter.address property to the host address of the container hosting the Lifecycle Coordinator instance. An example is shown below.

    Setting remote.provider.address

  4. Save the changes.

Back to top

Properties to secure the Topology REST API (com.akana.lifecycle.coordinator)

API Platform Version: 8.4.15 and later

You can set up the global configuration properties for Lifecycle Coordinator in the Akana Admin Console.

With the three properties listed below, you can configure the Topology REST API to require basic authentication for all requests.

  1. In the Akana Administration Console, open the Configuration tab.
  2. Select the com.akana.lifecycle.coordinator category.
  3. Set the properties. For details, see com.akana.lifecycle.coordinator properties below.
  4. Save the changes.
com.akana.lifecycle.coordinator properties
lifecycle.coordinator.config.apiUser
This field and the next are used to set the global basic authentication credentials for the Topology REST API. If this property is left empty, the Topology API will not require authentication of requests.
lifecycle.coordinator.config.apiPassword properties
If a value was set for lifecycle.coordinator.config.apiUser, specify the password.
lifecycle.coordinator.config.enableTenantScopedAuthentication
Boolean. Used to allow delegation of authentication to the primary tenant in the topology being acted on. The primary tenant is the tenant marked as the userAuthenticationSource in the topology. If no tenant is marked as the userAuthenticationSource, the initial tenant in the topology is used for authentication.
To be able to access the Lifecycle Coordinator user interface, a user must be registered in the tenant that's specified as the userAuthenticationSource and must also be assigned one or both of these roles, in Policy Manager: LC User or LC Administrator. See Who can use the Lifecycle Coordinator UI?

The following table summarizes the authentication behavior.

Global Credentials Set Tenant Scoped Authentication Enabled Behavior
No N/A Requests are not authenticated
Yes false Requests must specify global credentials
Yes true

Requests can specify either of these:

  • The email and password of a site admin user in the primary tenant of the topology being acted on.
  • The global credentials

Note: Requests for the getTopologies method (GET /lc/api/topologies) must specify the global credentials since there is no specific topology being acted on.

Back to top

Unique ID Mapping behavior

API Platform Version: 8.4.14 and later. Updated for 2018.0.0.

When a source and target environment exist in the same API Platform instance, it is necessary to assign new unique IDs (keys) to the internal objects, such as services, that make up an API or app being promoted. This is because the keys must be unique across the API Platform instance, regardless of which tenant they exist in.

By default, Lifecyle Coordinator determines whether to preserve the keys of the promoted objects, or to assign new keys, based on whether the source and target environments exist in the same API Platform instance:

  • If the source and target environments coexist in the same API Platform instance, the platform assigns new keys.
  • If the source and target environments are in different API Platform instances, the platform preserves the original keys from the source environment.

In certain situations, it might be necessary to override the default key handling behavior. For example, assume that environment A is in one API Platform instance and environments B and C coexist in another API Platform instance. If a topology is configured to promote from environment A to environments B and C in parallel, the default key handling algorithm will attempt to assign the same keys to objects promoted to each environment, B and C. The result would be that one of the promotions would fail. In this case, you can override the default key handling behavior by setting the preserve-keys property on one of the Promotion Profiles involved. For example, the Promotion Profiles for environment A would be configured as shown below.

"promotionProfiles": [
{
    "name": "B Promotion",
    "targetEnvironment": "B"
  },
  {
    "name": "C Promotion",
    "targetEnvironment": "C",
    "properties" : [
      {"name":"preserve-keys","value":"false"}
    ]
  } 
]

With this approach, the promoted keys in environment B would match those of the source, while environment C would have new keys assigned, eliminating conflict between the two co-located target environments.

Note: Be cautious in using the preserve-keys property. If the source and target environments are on the same API Platform instance, and the property is set to true, promotions will fail.

Back to top

Default "From Email" setting

You can set the default from email address used in emails sent from Lifecycle Coordinator, in the repository.config.defaultFromEmail property of the com.soa.repository configuration category.

You can also override the from email address for a specific topology. To do this, go into the topology library as an admin user or superuser, click Support Center, click Configure Library and set the Sender Email field, as shown below.

Setting From Email in LM

Back to top

Tenant Synchronization Interval

API Platform Version: 8.4.16 and later

Lifecycle Coordinator periodically updates cached policy and organization information for tenants referenced in a topology. The specific interval for this update is controlled by the following property:

Configuration category
com.soa.repository
Configuration property
repository.config.tenantSyncInterval
Explanation:
Sets the interval between updates to cached policy and organizational information. The value is set in milliseconds.
Default value:
300000 (5 minutes)

Back to top