cloudsoft.io

TOSCA Support in AMP

The OASIS TOSCA (Topology and Orchestration Specification for Cloud Applications) standard enables services and applications to be portable across cloud providers – regardless of their underlying platform or infrastructure – by describing their components, relationships, dependencies, requirements, and capabilities for AMP.

AMP includes optional support for TOSCA blueprints, such that, when this support is enabled, it is possible to provision TOSCA blueprints directly in AMP.

Enabling TOSCA Support in AMP

Note: these instructions apply to AMP 5.4 onwards; see separate instrutions for support in AMP 3.x and for support in 4.x - 5.3.

Tosca support is included in ‘AMP extras’ - i.e. it is not included in the AMP distro by default.

To add Tosca support, add the jar file (which is an OSGi bundle) to the Karaf deploy/ folder. For example:

$ cp /path/to/cloudsoft-amp-all/extras/brooklyn-tosca/brooklyn-tosca-karaf-init-1.0.0.TIMESTAMP.jar /opt/amp/deploy/

Add an Alien4Cloud configuration file (a library used by AMP) to the Karaf etc/ folder. For example:

$ cp /path/to/cloudsoft-amp-all/extras/brooklyn-tosca/brooklyn-tosca-alien4cloud_config.yml /etc/amp/

To enable the Tosca support, add the following to the Karaf system.properties file:

brooklyn.experimental.feature.tosca=true
alien4cloud-config.file=${karaf.etc}/brooklyn-tosca-alien4cloud_config.yml

Next start (or restart) AMP in the normal way (e.g. on CentOS 7.x, run systemctl start amp).

The Tosca code bundle initializes only when necessary, so you have to do something on AMP to initialize it - simply visiting the home page on a browser is enough.

The initialisation of this bundle can take a short time (one or two minutes), after which TOSCA blueprints may be deployed on AMP. Watch the info log file for a message like:

2019-04-02T15:18:10,983 - INFO  384 i.c.t.a.p.Alien4CloudSpringContext [FelixStartLevel] Finished loading Alien4Cloud platform (1m 44s 64ms)

Deploying TOSCA blueprints on AMP

  • Now that you have enabled TOSCA support in AMP, you can deploy TOSCA blueprints

  • A sample blueprint is provided

  • You can download the .yaml file and quickly deploy it using the CLI (note this expects a location amazon-us-east-1; define that location or edit the location in the YAML before deploying):

br deploy /path/to/tosca.yaml

Alternatively, copy the blueprint text and paste it into the YAML Editor in the Blueprint Composer of the UI.