1 / 10

SugarCRM Database Deployment Variants

SugarCRM Database Deployment Variants. DB in separate Service Template DB external to Service Template. Objective. Consider scenarios when components or services required by a deployment may be: 1) Shared across deployments

iniko
Download Presentation

SugarCRM Database Deployment Variants

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

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 3rd party not part of any existing Service Template (i.e. under the control of a separate and autonomous administrative entity)

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

  4. Minimally Specified Service Template DB has DA to initialize in DBMS SugarCrmApp [SugarCrmApplication] SugarCrmDb [SugarCrmDb] RC CC MySqlDbConnection RH RH • 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)

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

  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

  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

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

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

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

More Related