Presentation is loading. Please wait.

Presentation is loading. Please wait.

SugarCRM Database Deployment Variants DB in separate Service Template DB external to Service Template.

Similar presentations


Presentation on theme: "SugarCRM Database Deployment Variants DB in separate Service Template DB external to Service Template."— Presentation transcript:

1 SugarCRM Database Deployment Variants DB in separate Service Template DB external to Service Template

2 Objective Consider scenarios when components or services required by a deployment may be: – 1) Shared across deployments – 2) Already existing/provided by a 3 rd party not part of any existing Service Template (i.e. under the control of a separate and autonomous administrative entity) 2

3 Fully Specified Service Template R1: ContainerRequirement C1: ContainerCapability R2: WebAppContainerRequirement C2: WebAppContainerCapability R3: MySqlDbContainerRequirement C3: MySqlDbContainerCapability R4: PluginContainerRequirement C4: PluginContainerCapability R5: PhpRuntimeRequirement C5: PhpRuntimeCapability R6: MySqlDatabaseRequirement C6: MySqlDatabaseCapability VmApache [VirtualMachine] VmApache [VirtualMachine] ComputeNodeMySql [ComputeNode] ComputeNodeMySql [ComputeNode] ApacheWebServer [ApacheWebServer] ApacheWebServer [ApacheWebServer] MySql [MySql] MySql [MySql] SugarCrmApp [SugarCrmApplication] SugarCrmApp [SugarCrmApplication] SugarCrmDb [SugarCrmDb] SugarCrmDb [SugarCrmDb] PhpModule [PhpModule] PhpModule [PhpModule] PluginHostedOnContainer Operations: hostOn MySqlDbConnection Operations: connectTo HostedOnTypeMySqlDbHostedOnMySql Operations: hostOn HostedOn AppDependsOnPhpRuntime R2 C1 C2 R1 C1 R1 C3 R3 R4 C4 C5 R5 R6 C6 3 IaaS or PaaS cloud hosted DBMS DBMS capable of hosting the DB

4 Minimally Specified Service Template SugarCrmApp [SugarCrmApplication] SugarCrmApp [SugarCrmApplication] SugarCrmDb [SugarCrmDb] SugarCrmDb [SugarCrmDb] MySqlDbConnection RH RC CC 4 We must decide: – Which components will be hosted in the deployment versus outside the deployment Outside the deployment cases: – 1) Part of another deployment (i.e. specified in another service template) – 2) Hosted in some existing server we don’t control but are allowed to connect to it and possibly initialize or connect to it (not provision or start/stop it) DB has DA to initialize in DBMS

5 Splitting Across Multiple Deployments VmApache [VirtualMachine] VmApache [VirtualMachine] VmMySql [VirtualMachine] VmMySql [VirtualMachine] ApacheWebServer [ApacheWebServer] ApacheWebServer [ApacheWebServer] MySql [MySql] MySql [MySql] SugarCrmApp [SugarCrmApplication] SugarCrmApp [SugarCrmApplication] SugarCrmDb [SugarCrmDb] SugarCrmDb [SugarCrmDb] PhpModule [PhpModule] PhpModule [PhpModule] PluginHostedOnContainer Operations: hostOn MySqlDbConnection Operations: connectTo HostedOnTypeMySqlDbHostedOnMySql Operations: hostOn HostedOn AppDependsOnPhpRuntime R2 C1 C2 R1 C1 R1 C3 R3 R4 C4 C5 R5 R6 C6 5 PHP App Service Template DB Service Template Deployments have decoupled lifecycles Valid client operations :load/extract contents to/from artifact

6 When To Split? DB has a different lifecycle than the PHP App – E.g. DB is really shared across multiple client apps DB service is offered by a different Administrative Entity (AE) – DB AE controls lifecycle of the DB. PHP AP AE consumes DB on DB AE’s terms – AE for App and DB both use TOSCA gaining the benefit of awareness of each other’s models Lifecycle awareness Federation 6

7 Using an “External” DB Single Service Template specifies: – PHP App fully specified as part of deployment as a complete tier – DB is partially specified DB is hostedOn a DBMS (R3) DBMS instance is specified (C3) – Address and port – DBMS type not necessarily relevant (leave abstract if possible) DBMS container/tier is out of scope TOSCA engine must resolve lifecycle states of DBMS 7

8 TOSCA Engine Resolves DB VmApache [VirtualMachine] VmApache [VirtualMachine] ApacheWebServer [ApacheWebServer] ApacheWebServer [ApacheWebServer] SugarCrmApp [SugarCrmApplication] SugarCrmApp [SugarCrmApplication] SugarCrmDb [SugarCrmDb] SugarCrmDb [SugarCrmDb] PhpModule [PhpModule] PhpModule [PhpModule] PluginHostedOnContainer Operations: hostOn MySqlDbConnection Operations: connectTo HostedOnType HostedOn AppDependsOnPhpRuntime R2 C1 C2 R1 R3 R4 C4 C5 R5 R6 C6 8 ? R3 allows TOSCA Engine to find DBMS which can host the DB Lifecycle operations of DBMS is out of scope DbHostedOnDBMS

9 External DB Service Template provided by the environment VmApache [VirtualMachine] VmApache [VirtualMachine] ApacheWebServer [ApacheWebServer] ApacheWebServer [ApacheWebServer] SugarCrmApp [SugarCrmApplication] SugarCrmApp [SugarCrmApplication] SugarCrmDb [SugarCrmDb] SugarCrmDb [SugarCrmDb] PhpModule [PhpModule] PhpModule [PhpModule] PluginHostedOnContainer Operations: hostOn MySqlDbConnection Operations: connectTo HostedOnType HostedOn AppDependsOnPhpRuntime R2 C1 C2 R1 R3 R4 C4 C5 R5 R6 C6 9 C3 contains information (e.g. host/port) required to connect to a specific DBMS DBMS lifecycle still out of scope AnyComputeNode [ComputeNode] AnyComputeNode [ComputeNode] DBMS [DBMS] DBMS [DBMS] HostedOn C1 R1 C3 Environment Provided DB Service DbHostedOnDBMS

10 External DB Service Template NOT provided by the environment VmApache [VirtualMachine] VmApache [VirtualMachine] ApacheWebServer [ApacheWebServer] ApacheWebServer [ApacheWebServer] DBMS [DBMS] DBMS [DBMS] SugarCrmApp [SugarCrmApplication] SugarCrmApp [SugarCrmApplication] SugarCrmDb [SugarCrmDb] SugarCrmDb [SugarCrmDb] PhpModule [PhpModule] PhpModule [PhpModule] PluginHostedOnContainer Operations: hostOn MySqlDbConnection Operations: connectTo HostedOnTypeDbHostedOnDBMS HostedOn AppDependsOnPhpRuntime R2 C1 C2 R1 C3 R3 R4 C4 C5 R5 R6 C6 10 ? C3 contains information (e.g. host/port) required to connect to a specific DBMS DBMS lifecycle still out of scope IP Address, Port, DB, credentials etc. DBMS Node exists to hold C3


Download ppt "SugarCRM Database Deployment Variants DB in separate Service Template DB external to Service Template."

Similar presentations


Ads by Google