• No results found

Asynchronous Provisioning Platform (APP)

N/A
N/A
Protected

Academic year: 2021

Share "Asynchronous Provisioning Platform (APP)"

Copied!
16
0
0

Loading.... (view fulltext now)

Full text

(1)

0

INTERNAL USE ONLY

INTERNAL USE ONLY Copyright 2014 FUJITSU

Asynchronous Provisioning Platform (APP)

Service Catalog Manager - IaaS Integration

(2)

1

INTERNAL USE ONLY

INTERNAL USE ONLY Copyright 2014 FUJITSU

Overview

■ Threaded / timer-based provisioning (as background operation) (including resume after system shutdown)

■ Double-layered provisioning (provisioning on new created instance)

■ Concurrency handling

■ Persistency layer for service parameters (and custom data)

■ Asynchronous handling of synchronously invoked operations

(e.g. modify, delete, create users …)

■ Manual interactions during provisioning

■ Notification handling (e.g. mail-based exception handling)

Implementing an asynchronous provisioning service

(e.g. for IaaS) most often requires complex implementation effort:

CT-MG provides an “Asynchronous Provisioning Platform (APP)” for simplifying the implementation of such provisioning services.

(3)

2

INTERNAL USE ONLY

INTERNAL USE ONLY Copyright 2014 FUJITSU

Basic Architecture

CT-MG Subscription Management APP Service Controller A Service Controller B Notification Handler DB DB Application Instance (A) Application Instance (A) Application Instance (B) Provisioning Service Mail Server Manual Notification (REST)

CT-MG APP Custom

Provisioning Service

Proxy Timer

(4)

3

INTERNAL USE ONLY

INTERNAL USE ONLY Copyright 2014 FUJITSU

ISV-1

Usage Scenarios

CT-MG APP

ISV-1

Platform Operator

ISV-2

A. Cloud Store-1 (APP operated by platform operator)

B. Cloud Store-2 (APP operated by service provider)

CT-MG

APP Platform Operator

ISV-2

APP

C. Enterprise Solution Store

CT-MG APP

App-1

Platform Operator

(5)

4

INTERNAL USE ONLY

INTERNAL USE ONLY Copyright 2014 FUJITSU

Roles & Organizations

BSS_USER_KEY/ BSS_USER_ID:

■ Defines user account for basic CT-MG web service access

■ Using a separate technical user account is recommended

APP Admin:

■ Any administrator of the organization defined by "BSS_USER_KEY”

■ Registering organization IDs for deployed controllers

Controller Admin:

■ Any technology manager of the organization registered for controller

■ Access to APP notification handler

■ Access to controller-specific configuration

APP supports separate roles for APP and controller administrators

(6)

5

INTERNAL USE ONLY

INTERNAL USE ONLY Copyright 2014 FUJITSU

Architecture

Interfaces:

■ Remote interfaces defined in separate project

■ APPlatformController: APP core => Controller

■ APPlatformService: Controller => APP core

■ Lookup using JNDI

Deployment:

APP core as EAR file (

fujitsu-bss-app.ear

)

Each controller as EAR file

Persistence:

APP core uses Hibernate/JPA

(7)

6

INTERNAL USE ONLY

INTERNAL USE ONLY Copyright 2014 FUJITSU

Data Model

configurationsetting:

■ Key/Value store for global settings

■ APP global setting (BSS URL, BSS user, mail server, …)

■ Controller-specific settings (organization ID, controller configuration)

serviceinstance:

■ Representing the deployed service instances

■ APP-specific information (flow state, locking, manual, …)

■ CT-MG-specific information (subscription ID, organization ID, …)

instanceparameter:

■ Key/Value store for controller-specific instance data

(8)

7

INTERNAL USE ONLY

INTERNAL USE ONLY Copyright 2014 FUJITSU

Controller Development - Preparation

■ Get access to the target system. Log in and understand the basics of service patterns (VMs, orchestrations, additional services)

■ Get the current API documentation

■ Try to provision certain basic patterns

■ Define use cases in cooperation with stakeholders

(9)

8

INTERNAL USE ONLY

INTERNAL USE ONLY Copyright 2014 FUJITSU

Controller Development - Implementation

■ Design service mapping from backend service to CT-MG

■ Design parameter mapping according to defined use cases

■ Implement component test cases (jUnit)

■ Implement the controller

■ Test and improve

■ Implement configurable template as sample

■ Implement a technical service as sample

(10)

9

INTERNAL USE ONLY

INTERNAL USE ONLY Copyright 2014 FUJITSU

Implementation - Tasks

Key tasks:

■ Define provisioning process

■ Identify necessary steps and respective API

■ Define flow states

■ Implement dispatcher (communication with target API, stepping through the process flow, generating feedback)

Questions:

■ Are manual provisioning steps required?

(11)

10

INTERNAL USE ONLY

INTERNAL USE ONLY Copyright 2014 FUJITSU

Implementation - Manual Steps

■ Complex provisioning processes might include manual steps

■ Operations not (easily) reachable by API e.g. tenant creation, documentation

■ Controller detects need for manual steps

■ Create resume callback with event service URL for platform service

■ Notify responsible person by e.g. sending mail

■ Pause status polling from APP by setting flag of instance status

■ Notification handler gets resume request and restarts polling the controller => automated processing continues

(12)

11

INTERNAL USE ONLY

INTERNAL USE ONLY Copyright 2014 FUJITSU

Controller Development - Deployment

■ Deploy the controller on the APP domain

■ Register the controller on APP (via the APP Configuration UI)

■ Apply the controller settings (either via SQL or the APP Configuration UI)

■ Import the technical service

■ Deploy the template

■ Create a marketable service for the customer store on a test system

■ Create a price model according to the available usage information

■ Test subscribing, updating and terminating the service

■ Start integration tests

(13)

12

INTERNAL USE ONLY

INTERNAL USE ONLY Copyright 2014 FUJITSU

Example – VMware Service Subscription

CREATION REQUESTED

VMware APP Controller

Creation of a new VMware instance is requested.

CREATING VMware

VCenter (ESX Server)

New VMware instance is created by specified template (Clone).

CloneVM

UPDATING Custom VMware parameters are defined (CPU, RAM,...)

ReconfigureVM STARTING RETRIEVE GUEST_INFO PowerOnVM Guest Info (VM_Tools) FINISHED CT-MG/APP WAITING_FOR SYSTEM CREATION COMPLETED CT-MG/BES

asyncCreateInstance ( )

completeAsyncSubscription( )

FAILED

abortAsyncSubscription( ) updateAsyncSubscriptionProgress( )

VMware is started. This will configure DNS specific settings as well (on guest system)

IP and hostname is retrieved. success success success success error MANUAL INTERACTION Additional manual operation of the IT department MANUAL OPERATIONS send eMail notification via servlet interface getStatus( ) finished or failed? IT department

(14)

13

INTERNAL USE ONLY

INTERNAL USE ONLY Copyright 2014 FUJITSU

Example – VMware Service Termination

VMware APP Controller STOPFOR DELETION VMware VCenter (ESX Server)

Stop VMware instance

PowerOffVM

DELETING Destroy VMware instance

DestroyVM DESTROYED CT-MG/APP COMPLETED (deletes service info) CT-MG/BES

deleteInstance ( )

FAILED success success error Remove Subscription RC: ok WAITING_FOR SYSTEM DELETION DELETION REQUESTED IT department

Send e-Mail Notification Handler Send e-Mail

(15)

14

INTERNAL USE ONLY

INTERNAL USE ONLY Copyright 2014 FUJITSU

Example – VMware Service Update

VMware APP Controller STOPFOR MODIFICATION VMware VCenter (ESX Server)

Stop VMware instance

PowerOffVM

UPDATING Updated VMware parameters are defined (CPU, RAM)

ReconfigureVM STARTING CT-MG/APP COMPLETED CT-MG/BES modifyParameterSet( ) success success WAITING_FOR SYSTEM MODIFICATION MODIFICATION REQUESTED RETRIEVE GUEST_INFO PowerOnVM Guest Info (VM_Tools) FINISHED FAILED

Revalidate IP and hostname

success

success

error

VMware is started.

RC: ok IT department Notification Handler Send e-Mail Send e-Mail

(16)

15

INTERNAL USE ONLY

References

Related documents

We now create a common model object using the hydro turbine block definition and the model parameters as shown in Figure 5.5. Running the “Calculate initial conditions” command

Excessive alcohol consumption can lead to serious health problems, including cancer of the pancreas, mouth, pharynx, larynx, esophagus and liver, as well as

If you have answered yes to any of a–c above, please give the notices to your solicitor or estate agent, including any notices which arrive at any time before the date of entry of

Moreover, future research could probe whether there are differences between lifestyle tiers (standard, premium, and luxury) in terms of the effects of gross tonnage, maiden

Implementing the distributed storage strategy results in a significant reduction in total flood volume at all pipe failure levels implying the effect of cumulative pipe

A multiple linear regression statistical method is applied to model data taken from the Coupled Model Intercomparison Project, phase 5 (CMIP-5) to estimate the 11-yr solar

cfu/mL vibrio anguilliarum (-C) or saline (-UC). Effect of Lonicera japonica Leaf powder enriched diet on immune gene expression of olive flounder, P. A) Relative expression of

Thymic Stromal Lymphopoietin Induces Migration in Human Airway Smooth Muscle Cells.. (Article begins on