SlideShare una empresa de Scribd logo
1 de 32
Descargar para leer sin conexión
Metamesh’s
OpenCms Cloud eXtensions
The OpenCms Elastic Cloud Cluster
Stephan Hartmann
e-mail: hartmann@metamesh.de
http://www.metamesh.de
Arash Kaffamanesh
e-mail: ak@cloudssky.com
http://www.cloudssky.com
A bit about us
Stephan Hartmann
●  Senior Java Architect and Developer for 15 years
●  Working with OpenCms since 2000
●  Working on large scale Java Enterprise Portals
Arash Kaffamanesh
●  Open Cloud Solution Architect
●  Working with OpenCms since 2002 (Kaitain Release)
●  Building the first OpenCms CloudSite Offering
Agenda
●  What is “Cloud”
●  Why Cloud
●  Requirements of Cloud Readiness of a Java WebApp
●  Problems
●  Solutions
●  About OCCX
●  OCCX and Data Grid Platforms
●  OpenCms Clustering on Hybrid Clouds with OCCX
●  OpenCms Cluster on Eucalyptus, AWS and ProfitBrikcs
●  OpenCms Quick- and Auto- Scaling with OCCX
●  Classic- and Elastic- Load Balancing
What is “Cloud”
●  Fuzzy Word
●  Virtual Server -> Cloud Server?
●  SaaS really new? (ASP in 90ies)
●  Cloud == Internet?
●  Red Cloud (SaaS 2.0) - Blue Cloud (PaaS, SaaS 3.0)
●  The PaaS Marketing Lie
Why Cloud
•  High Availability
•  Fault-Tolerance
•  Performance
•  Scalability, Auto-Scaling ("Slashdot effect"), true
Horizontal Scaling
•  Deployment Automation - Fast Deployments (HA)
•  Staging
•  Administration, Maintenance
•  Development, DevOps
•  Cost saving, increase agility
Requirements for Cloud-Readiness of
a Java WebApp
•  What the Servlet Spec says (<distributable/>, not
enough)
•  Container Support for Distribution of WebApp
•  Container Support for Distribution of Http Sessions
•  NO! Distribution of Application Scope No support for
Shared Memory
•  Objects have to be Serializable
•  Shared Persistent Storage (DB)
•  Transactions
Problems
●  Multiple Processes (Java VMs) have no shared Memory
for e.g. maintaining state of transient objects
●  Instance, Class and Application Scope Variables
●  Singleton Objects only per VM
●  Comparison (==, != vs. equals())
●  Local Caches
●  Serialization
Problems in the Case of OpenCms
●  Flex-Cache (Presentation Layer)
●  Core-Cache (Persistence Layer)
●  Static Export
●  Events
●  Serialization E.g. CmsGroup, CmsUser, CmsProject
●  Map<String, Object> E.g. CmsPrincipal.m_additionalInfo
●  Local Objects E.g. CmsBroadcast
●  Comparison E.g. CmsLockType, CmsResourceState
●  Search Indexes
●  BUG: Resources have Cache, but it is not used, File Content no Cache at
all
Example: Comparison of Objects
JSP
Request Phases of OpenCms
Flex Cache
Request Response
Core Cache
DB
Solution 1 (no Code Changes in Core)
●  Only one Workplace Server (Master)
●  Distribute Events from Workplace Server to Slaves
●  Slaves Flush all Caches on DB-Change Events
●  Static Export On-Demand
●  Rebuild Search Indexes Regularly or on Startup
Drawbacks
●  No Workplace if Master fails
●  No shared Cache between Nodes
Solution 2 (with Code Changes in Core)
●  Flex-Cache: no Solution -> Throw it away or use Solution 1
●  Core-Cache: Make all cached Objects serializable and use distributed
Cache
●  Static Export: no Problem with On-Demand
●  Events: Distribute Events to all Cluster Nodes. Publish-Event: flush Flex
Cache, don't flush Core Cache
●  Comparison: Use equals or compare Primitives
●  Search Indexes: Rebuild regularly or on Startup or use external Solr Server
Advantages
●  Data Grid to enlarge Heap Space
Fast Deployments
●  GIT Repos that holds the
complete WebApp
●  Developer checks in to
trunk / branch
●  Branch for Test and Production
●  Update on each node and restart
if necessary (Puppet or Chef)
How it works
●  RFS Driver
●  Mount RFS files and folders into
VFS
●  Serve JSPs directly from RFS
●  Reads all Module data as well
●  NO import necessary!!!
VCS Rep. Developer
Test
Production
Metamesh’s
OpenCms Cloud eXtensions
The OpenCms Elastic Cloud Cluster
Part II: Demo
Stephan Hartmann
e-mail: hartmann@metamesh.de
http://www.metamesh.de
Arash Kaffamanesh
e-mail: ak@cloudssky.com
http://www.cloudssky.com
Date: 2013, October 1st
Recorded Video:
http://cloudssky.com/en/events/opencms-days-2013-opencms-cloud-extensions.html
DEMO Multi Workplace Support
•  Single Bare-Metal Cluster
o  Bare-Metal Cloud
•  Eucalyptus Cluster
o  Quick-Scale
o  Auto-Scale
•  Get Unlimited with Amazon EC2 / AWS with Auto-Scaling
•  Run on ProfitBricks (The German IaaS Company)
o  Apply awesome Vertical Scaling
o  Manual horizontal scaling with free load balancers
o  Half the Price
o  Twice the Speed (compared to Amazon)
About OpenCms Cloud eXtensions
●  Developed by Stephan Hartmann, CEO Metamesh
●  Provides Multi Workplace Support for OpenCms
●  Provides a Cloud Ready Version of OpenCms
●  Supports elasticity in OpenCms Clusters
●  Supports building OpenCms based hybrid cloud solutions
●  Empowers Clouds Sky’s OpenCms CloudSite offering
●  Is going to engage and innovate the next generation of OpenCms
OCCX Multi Workplace Support
New York
Cologne
Tokyo
Mexico
Singapour
●  Multi- Workplace support for international companies
○  support low latency in different geographic regions for:
■  authoring and user productivity
■  high availability
●  Comes with Zero Configuration
○  all instances have the same configuration
○  no master/slave design - all nodes are equal
○  fault tolerance - removing one node won't hurt others
○  every node can serve the OpenCms Workplace at ANY Time, ANY Where
with sticky sessions
Single Bare-
Metal Cluster
OCCX Data Grid Cache Platform
Bare-Metal Cluster
DB Matser DB Slave
OCCX1 OCCX2
HAProxy Load Balancer
Guests
DB Cluster
Infinispan
Eucalyptus
ClusterQuick Scale
OCCX Data Grid Cache Platform
Eucalyptus Cluster
DB Matser DB Slave
OCCX1-VM OCCX2-VM
HAProxy Load Balancer
Guests
DB Cluster
OCCX3-VM
Quick Scale
Eucalyptus
ClusterAuto-Scale
OCCX Data Grid Cache Platform
Eucalyptus Cluster
DB Matser DB Slave
OCCX1-VM OCCX2-VM
Eucalyptus Elastic Load Balancer
Guests
DB Cluster
OCCX3-VM
Auto Scale
EC2 Elastic Load Balancer
Get Unlimited
with EC2/AWS
OCCX Data Grid Cache Platform
Eucalyptus Cluster Bare-Metal Cluster Amazon EC2 Cluster
DB Matser DB Slave
OCCX1-VM OCCX2-VM OCCX1 OCCX2 OCCX1-EC2 OCCX2-EC2
HAProxy Load Balancer
Guests
DB Cluster
Eucalyptus OCCX Dashboard
(before auto-scaling)
Eucalyptus OCCX Dashboard
(Quick scale action I)
Eucalyptus OCCX Dashboard
(Quick scale action II)
Eucalyptus OCCX Dashboard
(after Quick scale action)
New OCCX Instance
New OCCX Instance running in less than 30 seconds
Eucalyptus CloudWatch Alarm for Auto-Scaling
Create an OCCX Auto-Scaling Group
on Amazon EC2
Create the Launch Congif:
sh-3.2# as-create-launch-config OCCXLC --key occx --image-id ami-xxxxxxx --
instance-type m1.xlarge --group sg-33134d4f --region eu-west-1
OK-Created launch config
sh-3.2# as-create-auto-scaling-group OCCX_ScalingGroup --launch-
configuration OCCXLC --availability-zones eu-west-1a --region eu-west-1 --min-
size 2 --max-size 5
OK-Created AutoScalingGroup
Verify OCCX Cluster Nodes
ubuntu@occx1-ec2:~$ grep "cluster" /var/lib/tomcat6/webapps/opencms/WEB-
INF/logs/opencms.log
...
29 Sep 2013 09:50:40,628 [metamesh.cloud.corecache.MemoryMonitor: 323]
CLUSTER - cluster members: [csky07-64460, csky08-15213, occx2-ec2-54095,
occx1-ec2-32746]
Deploy with ProfitBricks DCD
OCCX’s Status, Challenges left
➢  Runs on Clouds Sky’s OpenCms 8.5 CloudSite offering on ProfitBricks
➢  Use DevOps Tools such as Puppet / Chef for deployment
➢  Needs still some performance tuning
➢  Image Cache / Sync shall be improved
➢  Hybrid Solutions needs security and stability improvements
➢  Improve auto-discovery on EC2
➢  Get Elastic Load Balancing and Auto-Scaling to work as it should
➢  Stress Testing still not performed
➢  Licensing issues in discussion
➢  Is ready for new pilots
➢  Upgrade OCCX for OpenCms 9.0
➢  Implement 100% Availability
Thanksgivings to:
●  Metamesh
○  Stephan Hartmann
●  Alkacon Software
○  Martina Alger
○  Alexander Kandzior
○  Rüdiger Kurz
○  Michael Emmerich
○  Andreas Zahner
○  Tobias Herrmann
○  Georg Westenberger
○  and other members of Alkacon Software’s team
●  ProfitBricks
○  Chris Meyer
○  Christian Studier
●  Eucalyptus Systems
Thank You for Your
attention!

Más contenido relacionado

La actualidad más candente

Bitcoin (Cryptocurrency)
Bitcoin (Cryptocurrency)Bitcoin (Cryptocurrency)
Bitcoin (Cryptocurrency)Tsasaa Tsas
 
H.264 video compression standard.
H.264 video compression standard.H.264 video compression standard.
H.264 video compression standard.Axis Communications
 
KITE Network Instrumentation: Advanced WebRTC Testing
KITE Network Instrumentation: Advanced WebRTC TestingKITE Network Instrumentation: Advanced WebRTC Testing
KITE Network Instrumentation: Advanced WebRTC TestingAlexandre Gouaillard
 
ROS-TSC-ros-k8s.20230309.pdf
ROS-TSC-ros-k8s.20230309.pdfROS-TSC-ros-k8s.20230309.pdf
ROS-TSC-ros-k8s.20230309.pdfTomoya Fujita
 
Introduction to Blockchains
Introduction to BlockchainsIntroduction to Blockchains
Introduction to BlockchainsRamesh Nair
 
Bitcoin: A Peer-to-Peer Electronic Cash System
Bitcoin: A Peer-to-Peer Electronic Cash SystemBitcoin: A Peer-to-Peer Electronic Cash System
Bitcoin: A Peer-to-Peer Electronic Cash SystemParas Jain
 
Презентація на тему: ПАТ "Укрнафта"
Презентація на тему: ПАТ "Укрнафта"Презентація на тему: ПАТ "Укрнафта"
Презентація на тему: ПАТ "Укрнафта"Roman "Seth" Nazarchuk
 
Investments ISE
Investments ISEInvestments ISE
Investments ISELucky Gods
 
c13n - Lightning Network - Greek Bitcoin Meetup.pdf
c13n - Lightning Network - Greek Bitcoin Meetup.pdfc13n - Lightning Network - Greek Bitcoin Meetup.pdf
c13n - Lightning Network - Greek Bitcoin Meetup.pdfdimitrist
 
Emocionala inteligence
Emocionala inteligenceEmocionala inteligence
Emocionala inteligencekriic
 
PoolParty Powertagging and sOnr for Confluence
PoolParty Powertagging and sOnr for ConfluencePoolParty Powertagging and sOnr for Confluence
PoolParty Powertagging and sOnr for ConfluenceSemantic Web Company
 

La actualidad más candente (16)

Bitcoin (Cryptocurrency)
Bitcoin (Cryptocurrency)Bitcoin (Cryptocurrency)
Bitcoin (Cryptocurrency)
 
H.264 video compression standard.
H.264 video compression standard.H.264 video compression standard.
H.264 video compression standard.
 
KITE Network Instrumentation: Advanced WebRTC Testing
KITE Network Instrumentation: Advanced WebRTC TestingKITE Network Instrumentation: Advanced WebRTC Testing
KITE Network Instrumentation: Advanced WebRTC Testing
 
ROS-TSC-ros-k8s.20230309.pdf
ROS-TSC-ros-k8s.20230309.pdfROS-TSC-ros-k8s.20230309.pdf
ROS-TSC-ros-k8s.20230309.pdf
 
Introduction to Blockchains
Introduction to BlockchainsIntroduction to Blockchains
Introduction to Blockchains
 
Bitcoin: A Peer-to-Peer Electronic Cash System
Bitcoin: A Peer-to-Peer Electronic Cash SystemBitcoin: A Peer-to-Peer Electronic Cash System
Bitcoin: A Peer-to-Peer Electronic Cash System
 
Презентація на тему: ПАТ "Укрнафта"
Презентація на тему: ПАТ "Укрнафта"Презентація на тему: ПАТ "Укрнафта"
Презентація на тему: ПАТ "Укрнафта"
 
Investments ISE
Investments ISEInvestments ISE
Investments ISE
 
c13n - Lightning Network - Greek Bitcoin Meetup.pdf
c13n - Lightning Network - Greek Bitcoin Meetup.pdfc13n - Lightning Network - Greek Bitcoin Meetup.pdf
c13n - Lightning Network - Greek Bitcoin Meetup.pdf
 
Overview of TCP IP
Overview of TCP IPOverview of TCP IP
Overview of TCP IP
 
Google Photos
Google PhotosGoogle Photos
Google Photos
 
Transport layer
Transport layerTransport layer
Transport layer
 
Emocionala inteligence
Emocionala inteligenceEmocionala inteligence
Emocionala inteligence
 
Analyzing Bitcoin Security
Analyzing Bitcoin SecurityAnalyzing Bitcoin Security
Analyzing Bitcoin Security
 
PoolParty Powertagging and sOnr for Confluence
PoolParty Powertagging and sOnr for ConfluencePoolParty Powertagging and sOnr for Confluence
PoolParty Powertagging and sOnr for Confluence
 
Erc 721 tokens
Erc 721 tokensErc 721 tokens
Erc 721 tokens
 

Destacado

OpenCms Days 2013 - A mail hosting service using OpenCms
OpenCms Days 2013 - A mail hosting service using OpenCmsOpenCms Days 2013 - A mail hosting service using OpenCms
OpenCms Days 2013 - A mail hosting service using OpenCmsAlkacon Software GmbH & Co. KG
 
OpenCms Days 2013 - Details of the OpenCms 9 detail pages
OpenCms Days 2013 - Details of the OpenCms 9 detail pagesOpenCms Days 2013 - Details of the OpenCms 9 detail pages
OpenCms Days 2013 - Details of the OpenCms 9 detail pagesAlkacon Software GmbH & Co. KG
 
OpenCms Days 2014 - OpenCms cloud setup with the FI-TS
OpenCms Days 2014 - OpenCms cloud setup with the FI-TSOpenCms Days 2014 - OpenCms cloud setup with the FI-TS
OpenCms Days 2014 - OpenCms cloud setup with the FI-TSAlkacon Software GmbH & Co. KG
 
OpenCms Days 2014 - Enhancing OpenCms front end development with Sass and Grunt
OpenCms Days 2014 - Enhancing OpenCms front end development with Sass and GruntOpenCms Days 2014 - Enhancing OpenCms front end development with Sass and Grunt
OpenCms Days 2014 - Enhancing OpenCms front end development with Sass and GruntAlkacon Software GmbH & Co. KG
 

Destacado (6)

OpenCms Days 2013 - A mail hosting service using OpenCms
OpenCms Days 2013 - A mail hosting service using OpenCmsOpenCms Days 2013 - A mail hosting service using OpenCms
OpenCms Days 2013 - A mail hosting service using OpenCms
 
OpenCms Days 2013 - Details of the OpenCms 9 detail pages
OpenCms Days 2013 - Details of the OpenCms 9 detail pagesOpenCms Days 2013 - Details of the OpenCms 9 detail pages
OpenCms Days 2013 - Details of the OpenCms 9 detail pages
 
OpenCms Days 2014 - OpenCms cloud setup with the FI-TS
OpenCms Days 2014 - OpenCms cloud setup with the FI-TSOpenCms Days 2014 - OpenCms cloud setup with the FI-TS
OpenCms Days 2014 - OpenCms cloud setup with the FI-TS
 
OpenCms Days 2014 - Enhancing OpenCms front end development with Sass and Grunt
OpenCms Days 2014 - Enhancing OpenCms front end development with Sass and GruntOpenCms Days 2014 - Enhancing OpenCms front end development with Sass and Grunt
OpenCms Days 2014 - Enhancing OpenCms front end development with Sass and Grunt
 
OpenCms Days 2013 - Site Management Tool
OpenCms Days 2013 - Site Management ToolOpenCms Days 2013 - Site Management Tool
OpenCms Days 2013 - Site Management Tool
 
OpenCms Days 2014 Keynote - Step up to OpenCms 9.5
OpenCms Days 2014 Keynote - Step up to OpenCms 9.5OpenCms Days 2014 Keynote - Step up to OpenCms 9.5
OpenCms Days 2014 Keynote - Step up to OpenCms 9.5
 

Similar a OpenCms Days 2013 - OpenCms Cloud eXtensions

Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...
Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...
Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...Claus Ibsen
 
Apache Camel v3, Camel K and Camel Quarkus
Apache Camel v3, Camel K and Camel QuarkusApache Camel v3, Camel K and Camel Quarkus
Apache Camel v3, Camel K and Camel QuarkusClaus Ibsen
 
reInvent 2021 Recap and k9s review
reInvent 2021 Recap and k9s reviewreInvent 2021 Recap and k9s review
reInvent 2021 Recap and k9s reviewFaheem Memon
 
AWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul Maddox
AWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul MaddoxAWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul Maddox
AWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul MaddoxAWS Riyadh User Group
 
Making Service Deployments to AWS a breeze with Nova
Making Service Deployments to AWS a breeze with NovaMaking Service Deployments to AWS a breeze with Nova
Making Service Deployments to AWS a breeze with NovaGregor Heine
 
ECS & ECR Deep Dive - 김기완 솔루션즈 아키텍트 :: AWS Container Day
ECS & ECR Deep Dive - 김기완 솔루션즈 아키텍트 :: AWS Container DayECS & ECR Deep Dive - 김기완 솔루션즈 아키텍트 :: AWS Container Day
ECS & ECR Deep Dive - 김기완 솔루션즈 아키텍트 :: AWS Container DayAmazon Web Services Korea
 
Docker Container automatisiert nach AWS deployen - Continuous Lifecycle 2016
Docker Container automatisiert nach AWS deployen  - Continuous Lifecycle 2016Docker Container automatisiert nach AWS deployen  - Continuous Lifecycle 2016
Docker Container automatisiert nach AWS deployen - Continuous Lifecycle 2016Philipp Garbe
 
Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209mffiedler
 
It's always sunny with OpenJ9
It's always sunny with OpenJ9It's always sunny with OpenJ9
It's always sunny with OpenJ9DanHeidinga
 
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECS
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECSWeaveworks at AWS re:Invent 2016: Operations Management with Amazon ECS
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECSWeaveworks
 
Deliver Docker Containers Continuously on AWS - QCon 2017
Deliver Docker Containers Continuously on AWS - QCon 2017Deliver Docker Containers Continuously on AWS - QCon 2017
Deliver Docker Containers Continuously on AWS - QCon 2017Philipp Garbe
 
Advanced Task Scheduling with Amazon ECS (June 2017)
Advanced Task Scheduling with Amazon ECS (June 2017)Advanced Task Scheduling with Amazon ECS (June 2017)
Advanced Task Scheduling with Amazon ECS (June 2017)Julien SIMON
 
Running Docker clusters on AWS (June 2016)
Running Docker clusters on AWS (June 2016)Running Docker clusters on AWS (June 2016)
Running Docker clusters on AWS (June 2016)Julien SIMON
 
Deliver Docker Containers Continuously On AWS - DevOpsCon Munich 2016
Deliver Docker Containers Continuously On AWS - DevOpsCon Munich 2016Deliver Docker Containers Continuously On AWS - DevOpsCon Munich 2016
Deliver Docker Containers Continuously On AWS - DevOpsCon Munich 2016Philipp Garbe
 
Advanced Task Scheduling with Amazon ECS
Advanced Task Scheduling with Amazon ECSAdvanced Task Scheduling with Amazon ECS
Advanced Task Scheduling with Amazon ECSJulien SIMON
 
NWCloud Cloud Track - Best Practices for Architecting in the Cloud
NWCloud Cloud Track - Best Practices for Architecting in the CloudNWCloud Cloud Track - Best Practices for Architecting in the Cloud
NWCloud Cloud Track - Best Practices for Architecting in the Cloudnwcloud
 
Docker clusters on AWS with Amazon ECS and Kubernetes
Docker clusters on AWS with Amazon ECS and KubernetesDocker clusters on AWS with Amazon ECS and Kubernetes
Docker clusters on AWS with Amazon ECS and KubernetesJulien SIMON
 
Oracle Solutions on AWS : May 2014
Oracle Solutions on AWS : May 2014Oracle Solutions on AWS : May 2014
Oracle Solutions on AWS : May 2014Tom Laszewski
 
The container revolution, and what it means to operators open stack southba...
The container revolution, and what it means to operators   open stack southba...The container revolution, and what it means to operators   open stack southba...
The container revolution, and what it means to operators open stack southba...Robert Starmer
 
AWS Elastic Beanstalk - Running Microservices and Docker
AWS Elastic Beanstalk - Running Microservices and DockerAWS Elastic Beanstalk - Running Microservices and Docker
AWS Elastic Beanstalk - Running Microservices and DockerAmazon Web Services
 

Similar a OpenCms Days 2013 - OpenCms Cloud eXtensions (20)

Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...
Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...
Cloud-Native Integration with Apache Camel on Kubernetes (Copenhagen October ...
 
Apache Camel v3, Camel K and Camel Quarkus
Apache Camel v3, Camel K and Camel QuarkusApache Camel v3, Camel K and Camel Quarkus
Apache Camel v3, Camel K and Camel Quarkus
 
reInvent 2021 Recap and k9s review
reInvent 2021 Recap and k9s reviewreInvent 2021 Recap and k9s review
reInvent 2021 Recap and k9s review
 
AWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul Maddox
AWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul MaddoxAWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul Maddox
AWS reinvent 2019 recap - Riyadh - Containers and Serverless - Paul Maddox
 
Making Service Deployments to AWS a breeze with Nova
Making Service Deployments to AWS a breeze with NovaMaking Service Deployments to AWS a breeze with Nova
Making Service Deployments to AWS a breeze with Nova
 
ECS & ECR Deep Dive - 김기완 솔루션즈 아키텍트 :: AWS Container Day
ECS & ECR Deep Dive - 김기완 솔루션즈 아키텍트 :: AWS Container DayECS & ECR Deep Dive - 김기완 솔루션즈 아키텍트 :: AWS Container Day
ECS & ECR Deep Dive - 김기완 솔루션즈 아키텍트 :: AWS Container Day
 
Docker Container automatisiert nach AWS deployen - Continuous Lifecycle 2016
Docker Container automatisiert nach AWS deployen  - Continuous Lifecycle 2016Docker Container automatisiert nach AWS deployen  - Continuous Lifecycle 2016
Docker Container automatisiert nach AWS deployen - Continuous Lifecycle 2016
 
Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209Testing kubernetes and_open_shift_at_scale_20170209
Testing kubernetes and_open_shift_at_scale_20170209
 
It's always sunny with OpenJ9
It's always sunny with OpenJ9It's always sunny with OpenJ9
It's always sunny with OpenJ9
 
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECS
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECSWeaveworks at AWS re:Invent 2016: Operations Management with Amazon ECS
Weaveworks at AWS re:Invent 2016: Operations Management with Amazon ECS
 
Deliver Docker Containers Continuously on AWS - QCon 2017
Deliver Docker Containers Continuously on AWS - QCon 2017Deliver Docker Containers Continuously on AWS - QCon 2017
Deliver Docker Containers Continuously on AWS - QCon 2017
 
Advanced Task Scheduling with Amazon ECS (June 2017)
Advanced Task Scheduling with Amazon ECS (June 2017)Advanced Task Scheduling with Amazon ECS (June 2017)
Advanced Task Scheduling with Amazon ECS (June 2017)
 
Running Docker clusters on AWS (June 2016)
Running Docker clusters on AWS (June 2016)Running Docker clusters on AWS (June 2016)
Running Docker clusters on AWS (June 2016)
 
Deliver Docker Containers Continuously On AWS - DevOpsCon Munich 2016
Deliver Docker Containers Continuously On AWS - DevOpsCon Munich 2016Deliver Docker Containers Continuously On AWS - DevOpsCon Munich 2016
Deliver Docker Containers Continuously On AWS - DevOpsCon Munich 2016
 
Advanced Task Scheduling with Amazon ECS
Advanced Task Scheduling with Amazon ECSAdvanced Task Scheduling with Amazon ECS
Advanced Task Scheduling with Amazon ECS
 
NWCloud Cloud Track - Best Practices for Architecting in the Cloud
NWCloud Cloud Track - Best Practices for Architecting in the CloudNWCloud Cloud Track - Best Practices for Architecting in the Cloud
NWCloud Cloud Track - Best Practices for Architecting in the Cloud
 
Docker clusters on AWS with Amazon ECS and Kubernetes
Docker clusters on AWS with Amazon ECS and KubernetesDocker clusters on AWS with Amazon ECS and Kubernetes
Docker clusters on AWS with Amazon ECS and Kubernetes
 
Oracle Solutions on AWS : May 2014
Oracle Solutions on AWS : May 2014Oracle Solutions on AWS : May 2014
Oracle Solutions on AWS : May 2014
 
The container revolution, and what it means to operators open stack southba...
The container revolution, and what it means to operators   open stack southba...The container revolution, and what it means to operators   open stack southba...
The container revolution, and what it means to operators open stack southba...
 
AWS Elastic Beanstalk - Running Microservices and Docker
AWS Elastic Beanstalk - Running Microservices and DockerAWS Elastic Beanstalk - Running Microservices and Docker
AWS Elastic Beanstalk - Running Microservices and Docker
 

Más de Alkacon Software GmbH & Co. KG

OpenCms Days 2016: Participation and transparency portals with OpenCms
OpenCms Days 2016: Participation and transparency portals with OpenCmsOpenCms Days 2016: Participation and transparency portals with OpenCms
OpenCms Days 2016: Participation and transparency portals with OpenCmsAlkacon Software GmbH & Co. KG
 
OpenCms Days 2016: OpenCms at the swiss seismological service
OpenCms Days 2016: OpenCms at the swiss seismological serviceOpenCms Days 2016: OpenCms at the swiss seismological service
OpenCms Days 2016: OpenCms at the swiss seismological serviceAlkacon Software GmbH & Co. KG
 
OpenCms Days 2016: Next generation content repository
OpenCms Days 2016: Next generation content repository OpenCms Days 2016: Next generation content repository
OpenCms Days 2016: Next generation content repository Alkacon Software GmbH & Co. KG
 
OpenCms Days 2015 Creating Apps for the OpenCms 10 workplace
OpenCms Days 2015  Creating Apps for the OpenCms 10 workplace OpenCms Days 2015  Creating Apps for the OpenCms 10 workplace
OpenCms Days 2015 Creating Apps for the OpenCms 10 workplace Alkacon Software GmbH & Co. KG
 
OpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containersOpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containersAlkacon Software GmbH & Co. KG
 
OpenCms Days 2014 - How Techem handles international customer portals
OpenCms Days 2014 - How Techem handles international customer portalsOpenCms Days 2014 - How Techem handles international customer portals
OpenCms Days 2014 - How Techem handles international customer portalsAlkacon Software GmbH & Co. KG
 
OpenCms Days 2014 - OpenCms Module Development and Deployment with IntelliJ, ...
OpenCms Days 2014 - OpenCms Module Development and Deployment with IntelliJ, ...OpenCms Days 2014 - OpenCms Module Development and Deployment with IntelliJ, ...
OpenCms Days 2014 - OpenCms Module Development and Deployment with IntelliJ, ...Alkacon Software GmbH & Co. KG
 

Más de Alkacon Software GmbH & Co. KG (20)

OpenCms Days 2016: Multilingual websites with OpenCms
OpenCms Days 2016:   Multilingual websites with OpenCmsOpenCms Days 2016:   Multilingual websites with OpenCms
OpenCms Days 2016: Multilingual websites with OpenCms
 
OpenCms Days 2016: Participation and transparency portals with OpenCms
OpenCms Days 2016: Participation and transparency portals with OpenCmsOpenCms Days 2016: Participation and transparency portals with OpenCms
OpenCms Days 2016: Participation and transparency portals with OpenCms
 
OpenCms Days 2016: OpenCms at the swiss seismological service
OpenCms Days 2016: OpenCms at the swiss seismological serviceOpenCms Days 2016: OpenCms at the swiss seismological service
OpenCms Days 2016: OpenCms at the swiss seismological service
 
OpenCms Days 2016: Next generation content repository
OpenCms Days 2016: Next generation content repository OpenCms Days 2016: Next generation content repository
OpenCms Days 2016: Next generation content repository
 
OpenCms Days 2016: Keynote - Introducing OpenCms 10.5
OpenCms Days 2016:   Keynote - Introducing OpenCms 10.5OpenCms Days 2016:   Keynote - Introducing OpenCms 10.5
OpenCms Days 2016: Keynote - Introducing OpenCms 10.5
 
OpenCms Days 2015 OpenCms X marks the spot
OpenCms Days 2015 OpenCms X marks the spotOpenCms Days 2015 OpenCms X marks the spot
OpenCms Days 2015 OpenCms X marks the spot
 
OpenCms Days 2015 Next generation repository
OpenCms Days 2015  Next generation repositoryOpenCms Days 2015  Next generation repository
OpenCms Days 2015 Next generation repository
 
OpenCms Days 2015 Creating Apps for the OpenCms 10 workplace
OpenCms Days 2015  Creating Apps for the OpenCms 10 workplace OpenCms Days 2015  Creating Apps for the OpenCms 10 workplace
OpenCms Days 2015 Creating Apps for the OpenCms 10 workplace
 
OpenCms Days 2015 OCEE explained
OpenCms Days 2015 OCEE explainedOpenCms Days 2015 OCEE explained
OpenCms Days 2015 OCEE explained
 
OpenCms Days 2015 Workflow using Docker and Jenkins
OpenCms Days 2015 Workflow using Docker and JenkinsOpenCms Days 2015 Workflow using Docker and Jenkins
OpenCms Days 2015 Workflow using Docker and Jenkins
 
OpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containersOpenCms Days 2015 Modern templates with nested containers
OpenCms Days 2015 Modern templates with nested containers
 
OpenCms Days 2015 Hidden features of OpenCms
OpenCms Days 2015 Hidden features of OpenCmsOpenCms Days 2015 Hidden features of OpenCms
OpenCms Days 2015 Hidden features of OpenCms
 
OpenCms Days 2015 Advanced Solr Searching
OpenCms Days 2015 Advanced Solr SearchingOpenCms Days 2015 Advanced Solr Searching
OpenCms Days 2015 Advanced Solr Searching
 
OpenCms Days 2015 OpenGovernment
OpenCms Days 2015 OpenGovernmentOpenCms Days 2015 OpenGovernment
OpenCms Days 2015 OpenGovernment
 
OpenCms Days 2015 OpenCms at erarta
OpenCms Days 2015 OpenCms at erarta OpenCms Days 2015 OpenCms at erarta
OpenCms Days 2015 OpenCms at erarta
 
OpenCms Days 2015 How do you develop for OpenCms?
OpenCms Days 2015 How do you develop for OpenCms?OpenCms Days 2015 How do you develop for OpenCms?
OpenCms Days 2015 How do you develop for OpenCms?
 
OpenCms Days 2015 Arkema, a leading chemicals company
OpenCms Days 2015 Arkema, a leading chemicals companyOpenCms Days 2015 Arkema, a leading chemicals company
OpenCms Days 2015 Arkema, a leading chemicals company
 
OpenCms Days 2014 - How Techem handles international customer portals
OpenCms Days 2014 - How Techem handles international customer portalsOpenCms Days 2014 - How Techem handles international customer portals
OpenCms Days 2014 - How Techem handles international customer portals
 
OpenCms Days 2014 - OpenCms Module Development and Deployment with IntelliJ, ...
OpenCms Days 2014 - OpenCms Module Development and Deployment with IntelliJ, ...OpenCms Days 2014 - OpenCms Module Development and Deployment with IntelliJ, ...
OpenCms Days 2014 - OpenCms Module Development and Deployment with IntelliJ, ...
 
OpenCms Days 2014 - OpenCms 9 - A video tube?
OpenCms Days 2014 - OpenCms 9 - A video tube?OpenCms Days 2014 - OpenCms 9 - A video tube?
OpenCms Days 2014 - OpenCms 9 - A video tube?
 

Último

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
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
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsRoshan Dwivedi
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
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 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
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
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
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
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
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
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
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 

Último (20)

Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
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...
 
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live StreamsTop 5 Benefits OF Using Muvi Live Paywall For Live Streams
Top 5 Benefits OF Using Muvi Live Paywall For Live Streams
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
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
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
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
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
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
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
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
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 

OpenCms Days 2013 - OpenCms Cloud eXtensions

  • 1. Metamesh’s OpenCms Cloud eXtensions The OpenCms Elastic Cloud Cluster Stephan Hartmann e-mail: hartmann@metamesh.de http://www.metamesh.de Arash Kaffamanesh e-mail: ak@cloudssky.com http://www.cloudssky.com
  • 2. A bit about us Stephan Hartmann ●  Senior Java Architect and Developer for 15 years ●  Working with OpenCms since 2000 ●  Working on large scale Java Enterprise Portals Arash Kaffamanesh ●  Open Cloud Solution Architect ●  Working with OpenCms since 2002 (Kaitain Release) ●  Building the first OpenCms CloudSite Offering
  • 3. Agenda ●  What is “Cloud” ●  Why Cloud ●  Requirements of Cloud Readiness of a Java WebApp ●  Problems ●  Solutions ●  About OCCX ●  OCCX and Data Grid Platforms ●  OpenCms Clustering on Hybrid Clouds with OCCX ●  OpenCms Cluster on Eucalyptus, AWS and ProfitBrikcs ●  OpenCms Quick- and Auto- Scaling with OCCX ●  Classic- and Elastic- Load Balancing
  • 4. What is “Cloud” ●  Fuzzy Word ●  Virtual Server -> Cloud Server? ●  SaaS really new? (ASP in 90ies) ●  Cloud == Internet? ●  Red Cloud (SaaS 2.0) - Blue Cloud (PaaS, SaaS 3.0) ●  The PaaS Marketing Lie
  • 5. Why Cloud •  High Availability •  Fault-Tolerance •  Performance •  Scalability, Auto-Scaling ("Slashdot effect"), true Horizontal Scaling •  Deployment Automation - Fast Deployments (HA) •  Staging •  Administration, Maintenance •  Development, DevOps •  Cost saving, increase agility
  • 6. Requirements for Cloud-Readiness of a Java WebApp •  What the Servlet Spec says (<distributable/>, not enough) •  Container Support for Distribution of WebApp •  Container Support for Distribution of Http Sessions •  NO! Distribution of Application Scope No support for Shared Memory •  Objects have to be Serializable •  Shared Persistent Storage (DB) •  Transactions
  • 7. Problems ●  Multiple Processes (Java VMs) have no shared Memory for e.g. maintaining state of transient objects ●  Instance, Class and Application Scope Variables ●  Singleton Objects only per VM ●  Comparison (==, != vs. equals()) ●  Local Caches ●  Serialization
  • 8. Problems in the Case of OpenCms ●  Flex-Cache (Presentation Layer) ●  Core-Cache (Persistence Layer) ●  Static Export ●  Events ●  Serialization E.g. CmsGroup, CmsUser, CmsProject ●  Map<String, Object> E.g. CmsPrincipal.m_additionalInfo ●  Local Objects E.g. CmsBroadcast ●  Comparison E.g. CmsLockType, CmsResourceState ●  Search Indexes ●  BUG: Resources have Cache, but it is not used, File Content no Cache at all
  • 10. JSP Request Phases of OpenCms Flex Cache Request Response Core Cache DB
  • 11. Solution 1 (no Code Changes in Core) ●  Only one Workplace Server (Master) ●  Distribute Events from Workplace Server to Slaves ●  Slaves Flush all Caches on DB-Change Events ●  Static Export On-Demand ●  Rebuild Search Indexes Regularly or on Startup Drawbacks ●  No Workplace if Master fails ●  No shared Cache between Nodes
  • 12. Solution 2 (with Code Changes in Core) ●  Flex-Cache: no Solution -> Throw it away or use Solution 1 ●  Core-Cache: Make all cached Objects serializable and use distributed Cache ●  Static Export: no Problem with On-Demand ●  Events: Distribute Events to all Cluster Nodes. Publish-Event: flush Flex Cache, don't flush Core Cache ●  Comparison: Use equals or compare Primitives ●  Search Indexes: Rebuild regularly or on Startup or use external Solr Server Advantages ●  Data Grid to enlarge Heap Space
  • 13. Fast Deployments ●  GIT Repos that holds the complete WebApp ●  Developer checks in to trunk / branch ●  Branch for Test and Production ●  Update on each node and restart if necessary (Puppet or Chef) How it works ●  RFS Driver ●  Mount RFS files and folders into VFS ●  Serve JSPs directly from RFS ●  Reads all Module data as well ●  NO import necessary!!! VCS Rep. Developer Test Production
  • 14. Metamesh’s OpenCms Cloud eXtensions The OpenCms Elastic Cloud Cluster Part II: Demo Stephan Hartmann e-mail: hartmann@metamesh.de http://www.metamesh.de Arash Kaffamanesh e-mail: ak@cloudssky.com http://www.cloudssky.com Date: 2013, October 1st Recorded Video: http://cloudssky.com/en/events/opencms-days-2013-opencms-cloud-extensions.html
  • 15. DEMO Multi Workplace Support •  Single Bare-Metal Cluster o  Bare-Metal Cloud •  Eucalyptus Cluster o  Quick-Scale o  Auto-Scale •  Get Unlimited with Amazon EC2 / AWS with Auto-Scaling •  Run on ProfitBricks (The German IaaS Company) o  Apply awesome Vertical Scaling o  Manual horizontal scaling with free load balancers o  Half the Price o  Twice the Speed (compared to Amazon)
  • 16. About OpenCms Cloud eXtensions ●  Developed by Stephan Hartmann, CEO Metamesh ●  Provides Multi Workplace Support for OpenCms ●  Provides a Cloud Ready Version of OpenCms ●  Supports elasticity in OpenCms Clusters ●  Supports building OpenCms based hybrid cloud solutions ●  Empowers Clouds Sky’s OpenCms CloudSite offering ●  Is going to engage and innovate the next generation of OpenCms
  • 17. OCCX Multi Workplace Support New York Cologne Tokyo Mexico Singapour ●  Multi- Workplace support for international companies ○  support low latency in different geographic regions for: ■  authoring and user productivity ■  high availability ●  Comes with Zero Configuration ○  all instances have the same configuration ○  no master/slave design - all nodes are equal ○  fault tolerance - removing one node won't hurt others ○  every node can serve the OpenCms Workplace at ANY Time, ANY Where with sticky sessions
  • 18. Single Bare- Metal Cluster OCCX Data Grid Cache Platform Bare-Metal Cluster DB Matser DB Slave OCCX1 OCCX2 HAProxy Load Balancer Guests DB Cluster Infinispan
  • 19. Eucalyptus ClusterQuick Scale OCCX Data Grid Cache Platform Eucalyptus Cluster DB Matser DB Slave OCCX1-VM OCCX2-VM HAProxy Load Balancer Guests DB Cluster OCCX3-VM Quick Scale
  • 20. Eucalyptus ClusterAuto-Scale OCCX Data Grid Cache Platform Eucalyptus Cluster DB Matser DB Slave OCCX1-VM OCCX2-VM Eucalyptus Elastic Load Balancer Guests DB Cluster OCCX3-VM Auto Scale
  • 21. EC2 Elastic Load Balancer Get Unlimited with EC2/AWS OCCX Data Grid Cache Platform Eucalyptus Cluster Bare-Metal Cluster Amazon EC2 Cluster DB Matser DB Slave OCCX1-VM OCCX2-VM OCCX1 OCCX2 OCCX1-EC2 OCCX2-EC2 HAProxy Load Balancer Guests DB Cluster
  • 25. Eucalyptus OCCX Dashboard (after Quick scale action) New OCCX Instance New OCCX Instance running in less than 30 seconds
  • 26. Eucalyptus CloudWatch Alarm for Auto-Scaling
  • 27. Create an OCCX Auto-Scaling Group on Amazon EC2 Create the Launch Congif: sh-3.2# as-create-launch-config OCCXLC --key occx --image-id ami-xxxxxxx -- instance-type m1.xlarge --group sg-33134d4f --region eu-west-1 OK-Created launch config sh-3.2# as-create-auto-scaling-group OCCX_ScalingGroup --launch- configuration OCCXLC --availability-zones eu-west-1a --region eu-west-1 --min- size 2 --max-size 5 OK-Created AutoScalingGroup
  • 28. Verify OCCX Cluster Nodes ubuntu@occx1-ec2:~$ grep "cluster" /var/lib/tomcat6/webapps/opencms/WEB- INF/logs/opencms.log ... 29 Sep 2013 09:50:40,628 [metamesh.cloud.corecache.MemoryMonitor: 323] CLUSTER - cluster members: [csky07-64460, csky08-15213, occx2-ec2-54095, occx1-ec2-32746]
  • 30. OCCX’s Status, Challenges left ➢  Runs on Clouds Sky’s OpenCms 8.5 CloudSite offering on ProfitBricks ➢  Use DevOps Tools such as Puppet / Chef for deployment ➢  Needs still some performance tuning ➢  Image Cache / Sync shall be improved ➢  Hybrid Solutions needs security and stability improvements ➢  Improve auto-discovery on EC2 ➢  Get Elastic Load Balancing and Auto-Scaling to work as it should ➢  Stress Testing still not performed ➢  Licensing issues in discussion ➢  Is ready for new pilots ➢  Upgrade OCCX for OpenCms 9.0 ➢  Implement 100% Availability
  • 31. Thanksgivings to: ●  Metamesh ○  Stephan Hartmann ●  Alkacon Software ○  Martina Alger ○  Alexander Kandzior ○  Rüdiger Kurz ○  Michael Emmerich ○  Andreas Zahner ○  Tobias Herrmann ○  Georg Westenberger ○  and other members of Alkacon Software’s team ●  ProfitBricks ○  Chris Meyer ○  Christian Studier ●  Eucalyptus Systems
  • 32. Thank You for Your attention!