SlideShare una empresa de Scribd logo
1 de 35
TopStack Architecture
Q3 2013 Update
2
The basics
3
Overview
 TopStack is a suite of services to extend Infrastructure as a Service (IaaS) solutions
and deliver key Platform Services (PaaS)
 TopStack delivers a clean-room implementation of many of Amazon’s most popular
services
 TopStack runs on private clouds as well as third party public clouds
 The 2013-Q3 focus for TopStack is to act as a complement for OpenStack.
 TopStack is available in both a Community Edition (open source) and an Enterprise
Edition (commercial license & support).
4
Source Code Organization & Control
 Source code for TopStack is stored in Git, open source is in github
 Each service is stored in a separate repo
 Common repo: ToughCore, for shared utility code
 Common repo: ToughResources, for shared static assets
 All repos have a master branch for current production code
 Tag is applied for each production release
 All repos have at least one development branch for current developmentAdditional
feature branches are created for feature development, as needed
5
Build Management and Quality Assurance
 Services are built with Ant build files, with Maven tasks for dependency resolution
 Dependencies are resolved through local file copies (in dev mode)
 Dependencies are resolved through Jenkins artifacts (in build mode)
 Builds are managed through Jenkins continuous integration
 All service include unit tests that run with each build
 Services are deployed as part of continuous integration to Dev clouds
 Post deploy, Java integration tests are performed against fresh deploy
 Any failed integration tests will cause the build to be marked broken
 Once a day, a “long running” set of integration tests are run
 Long running tests spin up instances and test advanced connectivity
6
Continuous Deployment
 Continuous deployment is performed by Jenkins, with jobs deploying to Dev, etc.
 Deployments pushed to multiple cloud platforms, versions, …
Cloud 1 Cloud 2
7
Installation & Deployment
 Installation package is a single package file (.tar.gz), output from continuous build
 Unpacked, install package consists of:
 Master installation shell script
 Install guide (PDF)
 Packaged services, to be deployed by installation script
 Base Image configuration script
 Installation may be re-run as needed to install/configure additional instances
 Options to installation allow the installer to include/exclude particular services
 Required supporting services are always installed
8
Deployment
 Current tested deployment configuration:
 OpenStack Grizzly or greater (older versions work, but are not commercially
supported)
 nova-compute with libvirt+KVM, libvirt+QEMU, libvirt+XenServer
 nova-volume/Cinder, any iSCSCI backend
 nova-network/Quantum, single VLAN
 Linux VM, Ubuntu 12.04 or greater
9
Services Offered to Customers
 Elastic Load Balancer
 Route 53
 Relational Database Service
 ElastiCache
 Simple Queue Service
 CloudWatch
 CloudFormation
 Elastic Beanstalk
 Auto Scale
This deck wont cover
these in any detail
10
Internal Services & Components
 Internal Services (daemons):
 Service registry & configuration
 Orchestration & events
 Job Scheduling
 Common Components:
 Common logging
 Persistence
 Instance configuration (Chef)
 Authorization & access control
 Quotas & metering
 …
 Cloud platform bindings
 Instrumentation
 Administration
 Inter-Service Communication
11
DEPLOYMENT MODEL
12
Cloud Image Repo
TopStack Master VM
Tomcat 7
Deployment Model - Evaluation/TopStack Lite
12
TopStack SLB
DNS53
SQS
CloudWatch
RDS
Other TopStack Services
Apache 2
StackStudio
Chef Server
PubSub Queue
TS Base Image
TopStack DNS53
MySQL
13
TopStack SLB VM
TopStack Service VM2
Deployment Model - TopStack Enterprise
13
TopStack SLB
TopStack Service VM1
Tomcat 7
DNS53
SQS
CloudWatch
RDS
Other TopStack
StackStudio VM
Apache 2
StackStudio
Cloud Image Repo
Chef VM
Chef Server
[Optional]
DB VM
MySQL
Queue VM
PubSub Queue
DNS53 VM
DNS53
TS Base Image
14
Chef VM
TopStack Service VMn
Deployment Model - TopStack HA
14
TopStack Service VM2
StackStudio VM
Apache 2
StackStudio
TopStack Service VM1
TopStack ELB VM2TopStack ELB VM1
Cloud Image Repo
[Optional]
DB Active
MySQL
DB Standby
MySQL
Chef Cluster
Chef Server
Chef VM
Queue Cluster
PubSub Queue
Chef VM
DNS53 Cluster
DNS53
TS Base Image
15
Internal Services
16
Service Registration & Configuration
 All services must register with DNS53 on startup
 DNS53 maintains private zone for Transcend internal use
 Installation creates addresses for TopStack hosts
 Registration creates CNAMEs for individual services in DNS
 DNS information is used by Transcend load balancer to direct traffic
TopStack ServiceSLB
Request Handler
Thread
17
Orchestration & Events
Request Handler
Thread
Open Transaction
IaaS
Provider
Create WF
Client
Request
Response
Commit Transaction
TopStack
Workflow
Cloud Op Task
Notify Task
Complete
RDS
Work
CF
Work
SLB
Work
Workflow Step 1
Workflow Error State
Quartz
Open Transaction
Commit Transaction
Cloud Op Task
Workflow Step 2
Rollback Resources
Continuation
Request ID Cache
18
Orchestration & Events
 Services only own workflow steps and a light servlet for request/response
 Pub-sub mechanism between TopStack API front end and service workers
 ZeroMQ (http://www.zeromq.org)
 Protocol Buffers as serialization format for ZeroMQ
 Workflow solution to handle multiple asynchronous service steps:
 Mule ESB (http://www.mulesoft.org/)
 Asynchronous requests from HTTP handlers
 Tomcat 7 with Servlet 3.0 asynchronous servlets (continuations)
 Request IDs to marry asynchronous responses to requests
19
Workflow
19
 Many services consist of multiple operations, both synchronous and asynchronous
 For example, a Relational Database is created:
 An instance must be spun up
 Volume is created (in parallel)
 Public IP must be associated
 Instance startup is complete
 Volume is attached
 Database installation is performed
 etc.
 Any workflow step may fail, in which case:
 Allocated resources must be torn down, freed
 Failure must be reported, handled appropriately
20
Job Scheduling
 Scheduled jobs are executed using Quartz Enterprise Job Scheduler
 Quartz runs in clustered configuration
 Jobs are executable by any TopStack instance
 Scheduled jobs are stored in relational DB
 Services may add new jobs to be executed during e.g. maintenance windows
 Quartz is a source of workflow jobs
 For example, on setting RDS maintenance window, a Quartz job is created
 When Quartz job fires, RDS code is invoked to submit workflow
21
Common Components
22
Common Logging
 Logging from all TopStack services is performed through SLF4J library
 Logging implementation is typically Log4J
 Logging may be directed to syslog (including TCP) or simple files
 Configuration provides opportunity for aggregation, mining
23
Authorization & Access Control
 Each TopStack account will require an active IaaS cloud credential set
 IaaS credentials are encrypted at rest
 Actions are performed using credentials associated with TopStack account
 IaaS authorization and access limits define TopStack limits
24
Instance Configuration
 Chef Server
 Deployment includes an embedded Chef server (http://www.opscode.com/chef)
 Embedded Chef includes a set of Transcend recipes to build up resources
 Chef Client
 Transcend Base Image burns a Chef client into the image
 As new instances are started by TopStack, a Chef configuration and role are injected
 Instances dial-back to TopStack as the final step of configuration to become ready
25
Persistence
 Configuration and event data is stored in a relational database (default MySQL)
 Data access is through a DAO layer and Hibernate, an O/R mapping layer
26
Cloud Platforms Bindings
 TopStack configuration requires cloud “flavor” as input; OpenStack, Eucalyptus, etc.
 IaaS cloud must provide the core operations used by TopStack (or equivalents):
 Create/Terminate VM Instance
 Allocate/Release IP Address
 Associate/Disassociate IP Address
 Describe Instances
 Create/Delete Security Group
 Describe Security Groups
 Authorize/Revoke Security Ingress
 Create/Delete Volume
 Describe Volume
27
Quotas & Metering
 All quotas enforced by IaaS provider apply to TopStack instances as well
 Some quota is consumed by TopStack constructs that map to quota items
 E.g., RDS security group consumes an IaaS security group
28
Instrumentation
 All TopStack hosts are monitored as CloudWatch instances
 Installation process configures hosts
 Metrics are available though normal CloudWatch APIs
 All TopStack service hosts expose basic management information
 All hosted services are available, with service status
 Service workers (workflow steps) maintain “health” information
 Count of tasks processed
 Count of task with abnormal outcome
 Transactions processed per second
 Collected via metrics (http://metrics.codahale.com/)
29
Administration
 TopStack Enterprise Edition provides an Administration Console
 Console runs on each TopStack host
 Allows central administration of services
 Allows provisioning of user accounts
 Provides information on active services, failure rates, scheduled jobs
30
Inter-Service Communication
 TopStack services communicate with each other only as workflow steps
 Subsequent workflow steps are routed through Pub/Sub queue
 Loosely coupled, via workflow
31
Non-functional requirements
32
High Availability
 TopStack service hosts run in parallel on different VMs; scale-out architecture
 VMs may be removed from service & load will redistribute across remaining instances
 Workflows in progress will be continued by other instances
 TopStack persistence tier may be run in master/slave or cluster configuration
33
Scalability
 TopStack host machines can run any or all TopStack services
 TopStack endpoints are load balanced across available service hosts
 Many service hosts can run in an environment; new hosts register services on start
 TopStack persistence tier scales vertically to support large transaction volumes
34
Portability
 The Dasein cross-cloud library allows TopStack to operate against the most popular
clouds
 TopStack assumes only core IaaS services are available
 Most clouds provide core IaaS services, or services which may be mapped to IaaS
35
Security
 TopStack services are secured with access key and a secret key/password
 Optionally, customer can add HSM for increased security
 Secret key/password is not transmitted without encryption
 Enterprise Edition provides additional OS level lock-downs (PCI DSS)

Más contenido relacionado

La actualidad más candente

Cloud computing and OpenStack
Cloud computing and OpenStackCloud computing and OpenStack
Cloud computing and OpenStackEdgar Magana
 
One Path to a Successful Implementation of NaturalONE
One Path to a Successful Implementation of NaturalONEOne Path to a Successful Implementation of NaturalONE
One Path to a Successful Implementation of NaturalONESoftware AG
 
How to build a cloud adapter
How to build a cloud adapterHow to build a cloud adapter
How to build a cloud adapterMaarten Smeets
 
Christo kutrovsky oracle rac solving common scalability problems
Christo kutrovsky   oracle rac solving common scalability problemsChristo kutrovsky   oracle rac solving common scalability problems
Christo kutrovsky oracle rac solving common scalability problemsChristo Kutrovsky
 
Openstack Installation (ver. liberty)
Openstack Installation (ver. liberty)Openstack Installation (ver. liberty)
Openstack Installation (ver. liberty)Eggy Cheng
 
Red Hat OpenStack - Open Cloud Infrastructure
Red Hat OpenStack - Open Cloud InfrastructureRed Hat OpenStack - Open Cloud Infrastructure
Red Hat OpenStack - Open Cloud InfrastructureAlex Baretto
 
New Generation Oracle RAC Performance
New Generation Oracle RAC PerformanceNew Generation Oracle RAC Performance
New Generation Oracle RAC PerformanceAnil Nair
 
VNG/IRD - Cloud computing & Openstack discussion 3/5/2014
VNG/IRD - Cloud computing & Openstack discussion 3/5/2014VNG/IRD - Cloud computing & Openstack discussion 3/5/2014
VNG/IRD - Cloud computing & Openstack discussion 3/5/2014Tran Nhan
 
Openstack Fundamentals by CloudZone @Back2School
Openstack Fundamentals by CloudZone @Back2SchoolOpenstack Fundamentals by CloudZone @Back2School
Openstack Fundamentals by CloudZone @Back2SchoolAsaf Abres
 
Reducing Your E-Business Suite Storage Footprint Using Oracle Advanced Compre...
Reducing Your E-Business Suite Storage Footprint Using Oracle Advanced Compre...Reducing Your E-Business Suite Storage Footprint Using Oracle Advanced Compre...
Reducing Your E-Business Suite Storage Footprint Using Oracle Advanced Compre...Andrejs Karpovs
 
Exadata SMART Monitoring - OEM 13c
Exadata SMART Monitoring - OEM 13cExadata SMART Monitoring - OEM 13c
Exadata SMART Monitoring - OEM 13cAlfredo Krieg
 
Session 3 - CloudStack Test Automation and CI
Session 3 - CloudStack Test Automation and CISession 3 - CloudStack Test Automation and CI
Session 3 - CloudStack Test Automation and CItcloudcomputing-tw
 
Presentation cloud orchestration
Presentation   cloud orchestrationPresentation   cloud orchestration
Presentation cloud orchestrationxKinAnx
 
Oracle E-Business Suite R12.2.5 on Database 12c: Install, Patch and Administer
Oracle E-Business Suite R12.2.5 on Database 12c: Install, Patch and AdministerOracle E-Business Suite R12.2.5 on Database 12c: Install, Patch and Administer
Oracle E-Business Suite R12.2.5 on Database 12c: Install, Patch and AdministerAndrejs Karpovs
 
Oracle EBS R12.1.3_Installation_linux(64bit)_Pan_Tian
Oracle EBS R12.1.3_Installation_linux(64bit)_Pan_TianOracle EBS R12.1.3_Installation_linux(64bit)_Pan_Tian
Oracle EBS R12.1.3_Installation_linux(64bit)_Pan_TianPan Tian
 
CloudStack 4.1, 4.2 and beyond
CloudStack 4.1, 4.2 and beyondCloudStack 4.1, 4.2 and beyond
CloudStack 4.1, 4.2 and beyondChip Childers
 
Upgrade to 2008 Best of PASS
Upgrade to 2008 Best of PASSUpgrade to 2008 Best of PASS
Upgrade to 2008 Best of PASSsqlserver.co.il
 

La actualidad más candente (20)

Cloud computing and OpenStack
Cloud computing and OpenStackCloud computing and OpenStack
Cloud computing and OpenStack
 
One Path to a Successful Implementation of NaturalONE
One Path to a Successful Implementation of NaturalONEOne Path to a Successful Implementation of NaturalONE
One Path to a Successful Implementation of NaturalONE
 
How to build a cloud adapter
How to build a cloud adapterHow to build a cloud adapter
How to build a cloud adapter
 
Christo kutrovsky oracle rac solving common scalability problems
Christo kutrovsky   oracle rac solving common scalability problemsChristo kutrovsky   oracle rac solving common scalability problems
Christo kutrovsky oracle rac solving common scalability problems
 
Openstack Installation (ver. liberty)
Openstack Installation (ver. liberty)Openstack Installation (ver. liberty)
Openstack Installation (ver. liberty)
 
Collaborate2
Collaborate2Collaborate2
Collaborate2
 
Red Hat OpenStack - Open Cloud Infrastructure
Red Hat OpenStack - Open Cloud InfrastructureRed Hat OpenStack - Open Cloud Infrastructure
Red Hat OpenStack - Open Cloud Infrastructure
 
Liberty management
Liberty managementLiberty management
Liberty management
 
New Generation Oracle RAC Performance
New Generation Oracle RAC PerformanceNew Generation Oracle RAC Performance
New Generation Oracle RAC Performance
 
VNG/IRD - Cloud computing & Openstack discussion 3/5/2014
VNG/IRD - Cloud computing & Openstack discussion 3/5/2014VNG/IRD - Cloud computing & Openstack discussion 3/5/2014
VNG/IRD - Cloud computing & Openstack discussion 3/5/2014
 
Openstack Fundamentals by CloudZone @Back2School
Openstack Fundamentals by CloudZone @Back2SchoolOpenstack Fundamentals by CloudZone @Back2School
Openstack Fundamentals by CloudZone @Back2School
 
Reducing Your E-Business Suite Storage Footprint Using Oracle Advanced Compre...
Reducing Your E-Business Suite Storage Footprint Using Oracle Advanced Compre...Reducing Your E-Business Suite Storage Footprint Using Oracle Advanced Compre...
Reducing Your E-Business Suite Storage Footprint Using Oracle Advanced Compre...
 
OpenStack Super Bootcamp.pdf
OpenStack Super Bootcamp.pdfOpenStack Super Bootcamp.pdf
OpenStack Super Bootcamp.pdf
 
Exadata SMART Monitoring - OEM 13c
Exadata SMART Monitoring - OEM 13cExadata SMART Monitoring - OEM 13c
Exadata SMART Monitoring - OEM 13c
 
Session 3 - CloudStack Test Automation and CI
Session 3 - CloudStack Test Automation and CISession 3 - CloudStack Test Automation and CI
Session 3 - CloudStack Test Automation and CI
 
Presentation cloud orchestration
Presentation   cloud orchestrationPresentation   cloud orchestration
Presentation cloud orchestration
 
Oracle E-Business Suite R12.2.5 on Database 12c: Install, Patch and Administer
Oracle E-Business Suite R12.2.5 on Database 12c: Install, Patch and AdministerOracle E-Business Suite R12.2.5 on Database 12c: Install, Patch and Administer
Oracle E-Business Suite R12.2.5 on Database 12c: Install, Patch and Administer
 
Oracle EBS R12.1.3_Installation_linux(64bit)_Pan_Tian
Oracle EBS R12.1.3_Installation_linux(64bit)_Pan_TianOracle EBS R12.1.3_Installation_linux(64bit)_Pan_Tian
Oracle EBS R12.1.3_Installation_linux(64bit)_Pan_Tian
 
CloudStack 4.1, 4.2 and beyond
CloudStack 4.1, 4.2 and beyondCloudStack 4.1, 4.2 and beyond
CloudStack 4.1, 4.2 and beyond
 
Upgrade to 2008 Best of PASS
Upgrade to 2008 Best of PASSUpgrade to 2008 Best of PASS
Upgrade to 2008 Best of PASS
 

Similar a TopStack Product Architecture 2013-Q3

Discovery Day 2019 Sofia - Big data clusters
Discovery Day 2019 Sofia - Big data clustersDiscovery Day 2019 Sofia - Big data clusters
Discovery Day 2019 Sofia - Big data clustersIvan Donev
 
Cozystack: Free PaaS platform and framework for building clouds
Cozystack: Free PaaS platform and framework for building cloudsCozystack: Free PaaS platform and framework for building clouds
Cozystack: Free PaaS platform and framework for building cloudsAndrei Kvapil
 
Spring Cloud Services with Pivotal Cloud Foundry- Gokhan Goksu
Spring Cloud Services with Pivotal Cloud Foundry- Gokhan GoksuSpring Cloud Services with Pivotal Cloud Foundry- Gokhan Goksu
Spring Cloud Services with Pivotal Cloud Foundry- Gokhan GoksuVMware Tanzu
 
E2E PVS Technical Overview Stephane Thirion
E2E PVS Technical Overview Stephane ThirionE2E PVS Technical Overview Stephane Thirion
E2E PVS Technical Overview Stephane Thirionsthirion
 
Continuent Tungsten - Scalable Saa S Data Management
Continuent Tungsten - Scalable Saa S Data ManagementContinuent Tungsten - Scalable Saa S Data Management
Continuent Tungsten - Scalable Saa S Data Managementguest2e11e8
 
patchVantage Cloud Starter Pack
patchVantage Cloud Starter Pack patchVantage Cloud Starter Pack
patchVantage Cloud Starter Pack David McNish
 
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-Asible
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-Asible제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-Asible
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-AsibleTommy Lee
 
Webinar: Automating the Creation and Use of Virtual Testing Environments
Webinar: Automating the Creation and Use of Virtual Testing Environments Webinar: Automating the Creation and Use of Virtual Testing Environments
Webinar: Automating the Creation and Use of Virtual Testing Environments Skytap Cloud
 
MS Cloud Day - Deploying and monitoring windows azure applications
MS Cloud Day - Deploying and monitoring windows azure applicationsMS Cloud Day - Deploying and monitoring windows azure applications
MS Cloud Day - Deploying and monitoring windows azure applicationsSpiffy
 
"Wie passen Serverless & Autonomous zusammen?"
"Wie passen Serverless & Autonomous zusammen?""Wie passen Serverless & Autonomous zusammen?"
"Wie passen Serverless & Autonomous zusammen?"Volker Linz
 
Successful Patterns for running platforms
Successful Patterns for running platformsSuccessful Patterns for running platforms
Successful Patterns for running platformsPaul Czarkowski
 
CIT-2697 - Customer Success Stories with IBM PureApplication System
CIT-2697 - Customer Success Stories with IBM PureApplication SystemCIT-2697 - Customer Success Stories with IBM PureApplication System
CIT-2697 - Customer Success Stories with IBM PureApplication SystemHendrik van Run
 
Accelerate Your OpenStack Deployment Presented by SolidFire and Red Hat
Accelerate Your OpenStack Deployment Presented by SolidFire and Red HatAccelerate Your OpenStack Deployment Presented by SolidFire and Red Hat
Accelerate Your OpenStack Deployment Presented by SolidFire and Red HatNetApp
 
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...VMware Tanzu
 
Secure Management of Fleet at Scale
Secure Management of Fleet at ScaleSecure Management of Fleet at Scale
Secure Management of Fleet at ScaleAmazon Web Services
 
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Codemotion
 
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Codemotion
 

Similar a TopStack Product Architecture 2013-Q3 (20)

Discovery Day 2019 Sofia - Big data clusters
Discovery Day 2019 Sofia - Big data clustersDiscovery Day 2019 Sofia - Big data clusters
Discovery Day 2019 Sofia - Big data clusters
 
Cozystack: Free PaaS platform and framework for building clouds
Cozystack: Free PaaS platform and framework for building cloudsCozystack: Free PaaS platform and framework for building clouds
Cozystack: Free PaaS platform and framework for building clouds
 
Spring Cloud Services with Pivotal Cloud Foundry- Gokhan Goksu
Spring Cloud Services with Pivotal Cloud Foundry- Gokhan GoksuSpring Cloud Services with Pivotal Cloud Foundry- Gokhan Goksu
Spring Cloud Services with Pivotal Cloud Foundry- Gokhan Goksu
 
E2E PVS Technical Overview Stephane Thirion
E2E PVS Technical Overview Stephane ThirionE2E PVS Technical Overview Stephane Thirion
E2E PVS Technical Overview Stephane Thirion
 
Continuent Tungsten - Scalable Saa S Data Management
Continuent Tungsten - Scalable Saa S Data ManagementContinuent Tungsten - Scalable Saa S Data Management
Continuent Tungsten - Scalable Saa S Data Management
 
patchVantage Cloud Starter Pack
patchVantage Cloud Starter Pack patchVantage Cloud Starter Pack
patchVantage Cloud Starter Pack
 
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-Asible
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-Asible제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-Asible
제4회 한국IBM과 함께하는 난공불락 오픈소스 인프라 세미나-Asible
 
Webinar: Automating the Creation and Use of Virtual Testing Environments
Webinar: Automating the Creation and Use of Virtual Testing Environments Webinar: Automating the Creation and Use of Virtual Testing Environments
Webinar: Automating the Creation and Use of Virtual Testing Environments
 
MS Cloud Day - Deploying and monitoring windows azure applications
MS Cloud Day - Deploying and monitoring windows azure applicationsMS Cloud Day - Deploying and monitoring windows azure applications
MS Cloud Day - Deploying and monitoring windows azure applications
 
IUG ATL PC 9.5
IUG ATL PC 9.5IUG ATL PC 9.5
IUG ATL PC 9.5
 
Patterns
Patterns Patterns
Patterns
 
"Wie passen Serverless & Autonomous zusammen?"
"Wie passen Serverless & Autonomous zusammen?""Wie passen Serverless & Autonomous zusammen?"
"Wie passen Serverless & Autonomous zusammen?"
 
Successful Patterns for running platforms
Successful Patterns for running platformsSuccessful Patterns for running platforms
Successful Patterns for running platforms
 
CIT-2697 - Customer Success Stories with IBM PureApplication System
CIT-2697 - Customer Success Stories with IBM PureApplication SystemCIT-2697 - Customer Success Stories with IBM PureApplication System
CIT-2697 - Customer Success Stories with IBM PureApplication System
 
Accelerate Your OpenStack Deployment Presented by SolidFire and Red Hat
Accelerate Your OpenStack Deployment Presented by SolidFire and Red HatAccelerate Your OpenStack Deployment Presented by SolidFire and Red Hat
Accelerate Your OpenStack Deployment Presented by SolidFire and Red Hat
 
Microsoft Clustering
Microsoft ClusteringMicrosoft Clustering
Microsoft Clustering
 
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
Eseguire Applicazioni Cloud-Native con Pivotal Cloud Foundry su Google Cloud ...
 
Secure Management of Fleet at Scale
Secure Management of Fleet at ScaleSecure Management of Fleet at Scale
Secure Management of Fleet at Scale
 
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
 
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
Jörg Schad - Hybrid Cloud (Kubernetes, Spark, HDFS, …)-as-a-Service - Codemot...
 

Último

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?Antenna Manufacturer Coco
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 

Último (20)

08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

TopStack Product Architecture 2013-Q3

  • 3. 3 Overview  TopStack is a suite of services to extend Infrastructure as a Service (IaaS) solutions and deliver key Platform Services (PaaS)  TopStack delivers a clean-room implementation of many of Amazon’s most popular services  TopStack runs on private clouds as well as third party public clouds  The 2013-Q3 focus for TopStack is to act as a complement for OpenStack.  TopStack is available in both a Community Edition (open source) and an Enterprise Edition (commercial license & support).
  • 4. 4 Source Code Organization & Control  Source code for TopStack is stored in Git, open source is in github  Each service is stored in a separate repo  Common repo: ToughCore, for shared utility code  Common repo: ToughResources, for shared static assets  All repos have a master branch for current production code  Tag is applied for each production release  All repos have at least one development branch for current developmentAdditional feature branches are created for feature development, as needed
  • 5. 5 Build Management and Quality Assurance  Services are built with Ant build files, with Maven tasks for dependency resolution  Dependencies are resolved through local file copies (in dev mode)  Dependencies are resolved through Jenkins artifacts (in build mode)  Builds are managed through Jenkins continuous integration  All service include unit tests that run with each build  Services are deployed as part of continuous integration to Dev clouds  Post deploy, Java integration tests are performed against fresh deploy  Any failed integration tests will cause the build to be marked broken  Once a day, a “long running” set of integration tests are run  Long running tests spin up instances and test advanced connectivity
  • 6. 6 Continuous Deployment  Continuous deployment is performed by Jenkins, with jobs deploying to Dev, etc.  Deployments pushed to multiple cloud platforms, versions, … Cloud 1 Cloud 2
  • 7. 7 Installation & Deployment  Installation package is a single package file (.tar.gz), output from continuous build  Unpacked, install package consists of:  Master installation shell script  Install guide (PDF)  Packaged services, to be deployed by installation script  Base Image configuration script  Installation may be re-run as needed to install/configure additional instances  Options to installation allow the installer to include/exclude particular services  Required supporting services are always installed
  • 8. 8 Deployment  Current tested deployment configuration:  OpenStack Grizzly or greater (older versions work, but are not commercially supported)  nova-compute with libvirt+KVM, libvirt+QEMU, libvirt+XenServer  nova-volume/Cinder, any iSCSCI backend  nova-network/Quantum, single VLAN  Linux VM, Ubuntu 12.04 or greater
  • 9. 9 Services Offered to Customers  Elastic Load Balancer  Route 53  Relational Database Service  ElastiCache  Simple Queue Service  CloudWatch  CloudFormation  Elastic Beanstalk  Auto Scale This deck wont cover these in any detail
  • 10. 10 Internal Services & Components  Internal Services (daemons):  Service registry & configuration  Orchestration & events  Job Scheduling  Common Components:  Common logging  Persistence  Instance configuration (Chef)  Authorization & access control  Quotas & metering  …  Cloud platform bindings  Instrumentation  Administration  Inter-Service Communication
  • 12. 12 Cloud Image Repo TopStack Master VM Tomcat 7 Deployment Model - Evaluation/TopStack Lite 12 TopStack SLB DNS53 SQS CloudWatch RDS Other TopStack Services Apache 2 StackStudio Chef Server PubSub Queue TS Base Image TopStack DNS53 MySQL
  • 13. 13 TopStack SLB VM TopStack Service VM2 Deployment Model - TopStack Enterprise 13 TopStack SLB TopStack Service VM1 Tomcat 7 DNS53 SQS CloudWatch RDS Other TopStack StackStudio VM Apache 2 StackStudio Cloud Image Repo Chef VM Chef Server [Optional] DB VM MySQL Queue VM PubSub Queue DNS53 VM DNS53 TS Base Image
  • 14. 14 Chef VM TopStack Service VMn Deployment Model - TopStack HA 14 TopStack Service VM2 StackStudio VM Apache 2 StackStudio TopStack Service VM1 TopStack ELB VM2TopStack ELB VM1 Cloud Image Repo [Optional] DB Active MySQL DB Standby MySQL Chef Cluster Chef Server Chef VM Queue Cluster PubSub Queue Chef VM DNS53 Cluster DNS53 TS Base Image
  • 16. 16 Service Registration & Configuration  All services must register with DNS53 on startup  DNS53 maintains private zone for Transcend internal use  Installation creates addresses for TopStack hosts  Registration creates CNAMEs for individual services in DNS  DNS information is used by Transcend load balancer to direct traffic
  • 17. TopStack ServiceSLB Request Handler Thread 17 Orchestration & Events Request Handler Thread Open Transaction IaaS Provider Create WF Client Request Response Commit Transaction TopStack Workflow Cloud Op Task Notify Task Complete RDS Work CF Work SLB Work Workflow Step 1 Workflow Error State Quartz Open Transaction Commit Transaction Cloud Op Task Workflow Step 2 Rollback Resources Continuation Request ID Cache
  • 18. 18 Orchestration & Events  Services only own workflow steps and a light servlet for request/response  Pub-sub mechanism between TopStack API front end and service workers  ZeroMQ (http://www.zeromq.org)  Protocol Buffers as serialization format for ZeroMQ  Workflow solution to handle multiple asynchronous service steps:  Mule ESB (http://www.mulesoft.org/)  Asynchronous requests from HTTP handlers  Tomcat 7 with Servlet 3.0 asynchronous servlets (continuations)  Request IDs to marry asynchronous responses to requests
  • 19. 19 Workflow 19  Many services consist of multiple operations, both synchronous and asynchronous  For example, a Relational Database is created:  An instance must be spun up  Volume is created (in parallel)  Public IP must be associated  Instance startup is complete  Volume is attached  Database installation is performed  etc.  Any workflow step may fail, in which case:  Allocated resources must be torn down, freed  Failure must be reported, handled appropriately
  • 20. 20 Job Scheduling  Scheduled jobs are executed using Quartz Enterprise Job Scheduler  Quartz runs in clustered configuration  Jobs are executable by any TopStack instance  Scheduled jobs are stored in relational DB  Services may add new jobs to be executed during e.g. maintenance windows  Quartz is a source of workflow jobs  For example, on setting RDS maintenance window, a Quartz job is created  When Quartz job fires, RDS code is invoked to submit workflow
  • 22. 22 Common Logging  Logging from all TopStack services is performed through SLF4J library  Logging implementation is typically Log4J  Logging may be directed to syslog (including TCP) or simple files  Configuration provides opportunity for aggregation, mining
  • 23. 23 Authorization & Access Control  Each TopStack account will require an active IaaS cloud credential set  IaaS credentials are encrypted at rest  Actions are performed using credentials associated with TopStack account  IaaS authorization and access limits define TopStack limits
  • 24. 24 Instance Configuration  Chef Server  Deployment includes an embedded Chef server (http://www.opscode.com/chef)  Embedded Chef includes a set of Transcend recipes to build up resources  Chef Client  Transcend Base Image burns a Chef client into the image  As new instances are started by TopStack, a Chef configuration and role are injected  Instances dial-back to TopStack as the final step of configuration to become ready
  • 25. 25 Persistence  Configuration and event data is stored in a relational database (default MySQL)  Data access is through a DAO layer and Hibernate, an O/R mapping layer
  • 26. 26 Cloud Platforms Bindings  TopStack configuration requires cloud “flavor” as input; OpenStack, Eucalyptus, etc.  IaaS cloud must provide the core operations used by TopStack (or equivalents):  Create/Terminate VM Instance  Allocate/Release IP Address  Associate/Disassociate IP Address  Describe Instances  Create/Delete Security Group  Describe Security Groups  Authorize/Revoke Security Ingress  Create/Delete Volume  Describe Volume
  • 27. 27 Quotas & Metering  All quotas enforced by IaaS provider apply to TopStack instances as well  Some quota is consumed by TopStack constructs that map to quota items  E.g., RDS security group consumes an IaaS security group
  • 28. 28 Instrumentation  All TopStack hosts are monitored as CloudWatch instances  Installation process configures hosts  Metrics are available though normal CloudWatch APIs  All TopStack service hosts expose basic management information  All hosted services are available, with service status  Service workers (workflow steps) maintain “health” information  Count of tasks processed  Count of task with abnormal outcome  Transactions processed per second  Collected via metrics (http://metrics.codahale.com/)
  • 29. 29 Administration  TopStack Enterprise Edition provides an Administration Console  Console runs on each TopStack host  Allows central administration of services  Allows provisioning of user accounts  Provides information on active services, failure rates, scheduled jobs
  • 30. 30 Inter-Service Communication  TopStack services communicate with each other only as workflow steps  Subsequent workflow steps are routed through Pub/Sub queue  Loosely coupled, via workflow
  • 32. 32 High Availability  TopStack service hosts run in parallel on different VMs; scale-out architecture  VMs may be removed from service & load will redistribute across remaining instances  Workflows in progress will be continued by other instances  TopStack persistence tier may be run in master/slave or cluster configuration
  • 33. 33 Scalability  TopStack host machines can run any or all TopStack services  TopStack endpoints are load balanced across available service hosts  Many service hosts can run in an environment; new hosts register services on start  TopStack persistence tier scales vertically to support large transaction volumes
  • 34. 34 Portability  The Dasein cross-cloud library allows TopStack to operate against the most popular clouds  TopStack assumes only core IaaS services are available  Most clouds provide core IaaS services, or services which may be mapped to IaaS
  • 35. 35 Security  TopStack services are secured with access key and a secret key/password  Optionally, customer can add HSM for increased security  Secret key/password is not transmitted without encryption  Enterprise Edition provides additional OS level lock-downs (PCI DSS)