Designing a new network service

The process of designing a new service includes a number of steps, described here.

About this task

The process of designing a new service consists of the following steps:
  1. Define Header Information
  2. Add Service Elements
  3. Define Service Properties
  4. Map Property Values
  5. Promote Operations
  6. Create Relationships
  7. Define Clusters
  8. Save Design

The order of individual steps can be changed, and the steps can be performed incrementally and parallel. Also, many of the steps are optional and might not be required for the specific service design. Each one of the illustrated steps is explained in subsequent sections.

Procedure

  1. Define header information of the service descriptor.

    When Create button is selected to create a new service design, the following dialog is opened to fill in the required information.

  2. Add service elements.

    These can be either native components of the created service, or references to existing service or resource instances.

  3. Define service properties.

    Click the assembly editing icon Assembly editing panel icon on the design canvas, to get an assembly editing panel where the existing properties are listed.

    New properties can be added through Add New Property option at the end of the property list in the assembly editing panel. At start the property list is empty and only Add New Property option is shown. Typically, the properties needed on the service level includes two mandatory properties: deploymentLocation and resourceManager. Additionally, there needs to be in minimum the element properties that are required for the elements and not been set a value on the element level.

    For each property a Property Name must be given a value and optionally a preset Property Value, Default Value and Property Description (Optional) can be defined. Also, the property can be tagged as Required and/or Locked.

  4. Map property values.

    Mapping the property values is needed to define value passing between the designed service and its components.

    Property value passing is defined by combining two properties together, one as the source and second as the target. To pass a value from one property to another, drag the source property to the target property. When this relation is defined the value of the source property will be passed to the target property.

  5. Promote operations.

    In some cases, elements have operations to be called during lifecycle transitions. In order to be able to use these operations on higher level services they need to be first promoted. Promoting operations is applicable only in case you anticipate your designed service to be used as a element in a higher level service and you want to make it public on that level.

    Available Operations can be found by first selecting the symbol of the element on the design canvas. While an element is selected, its available operations can be seen under the operations list on the assembly editing panel. An operation can be promoted by opening the operations list, selecting the more options menu associated to the operation, and selecting Promote Operation option from the menu.

    When you promote an operation you also need to give it a name that functions as the handle when using the operation. This is done through the operation naming dialog.

  6. Create relationships

    Relationships are defined to create dependencies between service elements. Relationships between two elements enable the requirements of one element (known as the target) to be satisfied by another element providing the capability (known as the source). Relationship also define operations to be called by the source against the target element when the relationship is created or ceased. A relationship also implies temporal dependency between the source and the target element when they are instantiated or deleted.

    To create a relationship between two elements on the design canvas, click Add Relationship.

    Configure the relationship by completing the following steps:
    1. Source and Target: Name the relationship, define the source and target elements, and when to create the relationship.
    2. Operations: Defines the operations to be called by the source element against the target element during creation and ceasing the relationship.
    3. Properties: Defining the required properties for the operations.
  7. Define clusters

    In order to perform scaling on a service element it needs to be defined as a cluster. By default, clustering is not applied on an element and it needs to be separately configured. Configuring clustering for a service element is done by selecting the element, opening the clustering section on the assembly editing panel, and selecting edit.

    Adding clustering for an element opens a dialog to configure the applicable clustering options.

  8. Click Save to save the design to the orchestration catalog.