TOSCA SugarCRM Deployment

Slides:



Advertisements
Similar presentations
Modeling Deployment Content and Metadata
Advertisements

Mapping Service Templates to Concrete Network Semantics Some Ideas.
SugarCRM Database Deployment Variants DB in separate Service Template DB external to Service Template.
SugarCRM Database Deployment Variants DB in separate Service Template DB external to Service Template.
TOSCA Normative Types Proposal Internal Working Draft v0.3 Submitter: Matt Rutkowski.
WEXTOOL User Guide v1.0 E.P. PLANETE B.B.R.. Plan Introduction & Architecture of Wextool Installation Scenario description Experimentation phase Saving/Synchronizing.
® IBM Software Group © 2006 IBM Corporation Rational Software France Object-Oriented Analysis and Design with UML2 and Rational Software Modeler 04. Other.
Object-Oriented Enterprise Application Development Tomcat 3.2 Configuration Last Updated: 03/30/2001.
Multiple Tiers in Action
Software Component (Container + Containee) Software Component (Container + Containee) WebServer HostedOn Compute (Container) Compute (Container) Exploring.
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 8 Introduction to Printers in a Windows Server 2008 Network.
Web Applications Basics. Introduction to Web Web features Clent/Server HTTP HyperText Markup Language URL addresses Web server - a computer program that.
Topology and Orchestration Specification for Cloud Applications (TOSCA) Standard TOSCA Interoperability Demonstration Join the TOSCA Technical Committee.
Evaluate container lifecycle support in TOSCA TOSCA – 174 Adhoc TC.
TOSCA Workloads with OpenStack Heat-Translator
© 2012 IBM Corporation Tivoli Workload Automation Informatica Power Center.
Additional SugarCRM details for complete, functional, and portable deployment.
TOSCA Interoperability Demonstration
Web Server Configuration Alokes Chattopadhyay Computer & Informatics Centre IIT Kharagpur.
Hybrid-Cloud App Consuming External Services Sketches of Hybrid Cloud Apps using On-Premise Services…
TOSCA Normative Types Proposal Internal Working Draft v0.5 Submitter: Matt Rutkowski.
Proposal by CA Technologies, IBM, SAP, Vnomic
SugarCRM LAMP App Deployment Usecase IBM Vnomic. 2 Objective Using an application which is simple, but also presents the most fundamental deployment challenges,
Topology and Orchestration Specification for Cloud Applications (TOSCA) Standard TOSCA Interoperability Demonstration Join the TOSCA Technical Committee.
Ch 2 – Application Assembly and Deployment COSC 617 Jeff Schmitt September 14, 2006.
TOSCA Name Used by (Roles)Modeling conceptDistinguishing traitsNotes Node TypeType Developers Experts that fully understand, package an constrain, properties,
SugarCRM Use Case: Plans 1. Reminder When a service template is deployed, its implementation artifacts are deployed – From that time on, the operations.
Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA useful for any application deployment in a cloud Enable users to.
Ibm.com /redbooks © Copyright IBM Corp All rights reserved. WP07 ITSO iSeries Technical Forum WebSphere Portal Express– Installation, Configuration.
1 PUPPET AND DSC. INTRODUCTION AND USAGE IN CONTINUOUS DELIVERY PROCESS. VIKTAR VEDMICH PAVEL PESETSKIY AUGUST 1, 2015.
Ansible with vCloud Air Workshop
Oracle Data Integrator Agents. 8-2 Understanding Agents.
SugarCRM Service Template
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. TOSCA 115 Capability Interfaces.
Overview of the Automated Build & Deployment Process Johnita Beasley Tuesday, April 29, 2008.
TOSCA Workflows Use Cases.
3 Copyright © 2009, Oracle. All rights reserved. Understanding the Warehouse Builder Architecture.
NERDug 2009 Session WebAdvisor 101: From Soup to Nuts! 7/30/2009 at 2:00pm Emerald Room Jeff Butera Hampshire College
Normative Types & connectsTo The RelationshipType base type of “connectsTo” in the current draft on Normative Types in Tosca seems to be incomplete. In.
Web Server Apache PHP HTTP Request User types URL into browser Address resolved if nec. We use directly Most browsers request.
Script Invocation Conventions TOSCA Interop SC
Hybrid-Cloud App Consuming External Services Sketches of Hybrid Cloud Apps using On-Premise Services…
TOSCA Interoperability Demonstration
Evaluate container lifecycle support in TOSCA TOSCA – 174 Adhoc TC.
Topology and Orchestration Specification for Cloud Applications (TOSCA) Standard TOSCA Interoperability Demonstration Join the TOSCA Technical Committee.
© Copyright 2012 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. TOSCA 115 Capability Interfaces.
Objective Propose a simple and concise set of “Core” Entities and Relations for TOSCA useful for any application deployment in a cloud Enable users to.
© 2013 IBM Corporation Accelerating Product and Service Innovation Leveraging IBM SmartCloud in UrbanCode Deploy Michael Elder, IBM Senior Technical Staff.
Let's build a VMM service template from A to Z in one hour Damien Caro Technical Evangelist Microsoft Central & Eastern Europe
EGI-InSPIRE RI Pakiti Michal Prochazka, (Daniel Kouril)
TOSCA Interop SC – Proposed Timeline for Discussion Revised Sept 10, 2012 Matt Rutkowski.
TOSCA v1.0 Figures. Definition of building blocks for services … along with the implementation artifacts for manageability operations … and the definition.
Project Cumulus Overview March 15, End Goal Unified Public & Private PaaS for GlassFish/Java EE Simplify deployment of Java EE Apps on top of.
TOSCA workflows. Default workflow is declarative (generated from nodes and relationships) install at the beginning of install workflow all instances are.
NFV Updates Deepanshu Gautam.
Provisioning of RAC Database on configured Stack
SugarCRM Service Template
ETL Job Scheduler Job Database Server User Interface Scheduler
TOSCA Interoperability Demonstration
Advanced Integration and Deployment Techniques
TOSCA Matching Or how the orchestrator provides implementation for abstract nodes or dangling requirements.
Cloud Application Marketplaces
TOSCA-Metadata (directory )
TOSCA workflows.
Introduction to Ansible
TOSCA-Metadata (directory )
Cloud Application Marketplaces
Service Template Creation from the Ground Up
Cloud Application Marketplaces
Presentation transcript:

TOSCA SugarCRM Deployment technical detail discussion TOSCA Interop SC

SugarCRM Topology Template SugarCrmApp [SugarCRMApplication] SugarCrmDb [SugarCRMDatabase] connects to depends on PhpModule [ApachePHPModule] hosted on hosted on ApacheWebServer [ApacheWebServer] MySql [MySQL] hosted on hosted on hosted on OsApache [OperatingSystem] OsMySql [OperatingSystem] hosted on hosted on VmApache [Server] VmMySql [Server] hosted on hosted on WebTier [Tier] DbTier [Tier]

Node and Relationship operations RelationshipType “DBConnection” NodeType “Application” R NodeType “Database” C Lifecycle operations (create, configure, start, …) are used by an orchestrator to create and manage components is of type is of type is of type Connector concept Relationship Types declare what endpoints they can connect, and which processing logic they inject to establish a link at runtime NodeTemplate “MyApp” R NodeTemplate “MyDB” C Base Relationship Types HostedOn, DependsOn and ConnectsTo define the base semantics for processing topology models Use defined lifecycle operations to deploy and manage each component Use base relationship types to derive processing order Process a host before a hosted component (HostedOn) Process a provider before a client (DependsOn, ConnectsTo) If a component is related to another component, see if relationship injects additional processing logic (e.g. pre-configure endpoint) … a pretty mechanical process

Declarative processing of SugarCRM model relationship injects logic Use base relationship types to derive component processing order First process a host, then process hosted component First process a component that another component depends on, then process the dependent component First process a component that another component connects to, then process the connecting component For each component Deploy its Deployment Artifacts Invoke lifecycle operations in right sequence (create, configure, start …); their can be no-ops If a relationship contributes logic, inject it into component operation invocations Web 5 DB 4 Web 4 Web 3 DB 3 Web 2 DB 2 Web 1 DB 1 Web 1 create VM DB 1 create VM Web 2 perform base OS config DB 2 perform base OS config run in parallel Web 3 install and configure httpd DB 3 install and configure MySQL Web 4 install and configure php runtime DB 4 create and configure SugarCRM database Web 5 install and configure SugarCRM app, configure database endpoint properties wait for step “DB 4” to complete

Artifacts and automation in TOSCA models Deployment Artifacts referenced in a TOSCA model represent the “deployable bits” that embody components of a deployment at runtime Examples: software installables, OS packages (rpm, deb, …), simple files, archives, images for VMs Deployment Artifacts just get declared in the model and orchestrator implements logic to do automatic deployment For example, an archive artifact for a tarball might include metadata about target location as well as file path permissions for target location, incl. user/group mappings  orchestrator derives corresponding sequence of commands for full deployment flow Currently supported: File, Archive, User Archive, RPM List, RPM Group List Implementation Artifacts referenced in TOSCA model represent implementation of operations on components of the model Examples: scripts, chef automation, executable programs Implementation Artifacts get executed in context of deployed environment; model parameters (e.g. Node Template properties) and other context information (e.g. hostnames, IP addresses) passed as arguments Artifact definitions in TOSCA model have a pointer to the actual artifact In current use cases, typically a relative URL to a file in the CSAR containing the TOSCA model, but could be any URL accessible by the orchestration environment Deployment Artifacts for a component get deployed before any Implementation Artifacts get executed Most basic scenarios could be done with Deployment Artifacts only (e.g. rpm based installation of MySQL on a VM)

Example Deployment Artifact and Implementation Artifact usage <NodeTemplate id="WebServer" type="WebServer"> <Properties> <WebServerProperties> <httpport>8080</httpport> ... </WebServerProperties> </Properties> </NodeTemplate> <NodeType name="WebServer"> </NodeType> <NodeTypeImplementation name="WebServer-rhel-x86_64“ nodeType="WebServer"> <RequiredContainerFeatures> <RequiredContainerFeature feature="os_type">linux</Req...> <RequiredContainerFeature feature="os_distro">rhel</Req...> </RequiredContainerFeatures> <ImplementationArtifacts> <ImplementationArtifact artifactRef="webserver-configure" artifactType="ScriptArtifact" interfaceName="http://.../lifecyle" operationName="configure"/> </ImplementationArtifacts> <DeploymentArtifacts> <DeploymentArtifact artifactRef="webserver-packages" artifactType="OsPackageArtifact"/> </DeploymentArtifacts> </NodeTypeImplemenation> <ArtifactTemplate id="webserver-packages" type="OsPackageArtifact"> <OsPackageArtifactProperties packageType="rpm"> <PackageInformation packageName="httpd"/> <PackageInformation packageName="php"/> </OsPackageArtifactProperties> </ArtifactTemplate> <ArtifactTemplate id="webserver-configure" type="ScriptArtifact"> One NodeType can have multiple implementations, e.g. for different operating systems. Orchestrator selects based on Required Container Features definitions. DeploymentArtifact "webserver-packages " artifactType: OsPackageArtifact packages: [httpd, php, php-cli, php-common, php-mysql, php-xml] Web Server configure ImplementationArtifact "webserver-configure" artifactType: ScriptArtifact script: scripts/WebServer/configure.sh Operating System #!/bin/bash # set listen port of httpd sed –i "s/Listen 80/Listen $httpport" $httpdconfig # more stuff ... Server $httpport accesses a property of the associated NodeTemplate. In this example, configure.sh script is packaged in directory scripts/WebServer in the CSAR containing the TOSCA template definition.

Lifecycle operations and invocation context for Implementation Artifacts Default lifecycle operations for nodes: install, configure, start, stop, delete – there may be no-ops (leave out operations) Flow for deploy case: install, configure, start In case of chef automation, only install operation is used Default lifecycle operations for relations: preConfigureEndpoint, postConfigureEndpoint for both source and target – there may be no-ops Each node operation gets as context all properties of the node (defined in XSD) plus PublicIP, PrivateIP, HostName, FQDN of the VM where the node is hosted Each relationship operation gets as context all properties of the relationship (defined in XSD) Plus properties, PublicIP, PrivateIP, HostName, FQDN of the VM where the source node is hosted (prefixed with Source_) Plus properties, PublicIP, PrivateIP, HostName, FQDN of the VM where the target node is hosted (prefixed with Target_)

Example processing flow including node and relationship operations install install postConfigureEndpoint configure configure start postConfigureEndpoint start Node2.install Node2.configure Node2  postConfigureEndpoint Node2.start Node1.install Node1.configure Node1  postConfigureEndpoint Node1.start