SlideShare a Scribd company logo
1 of 31
Liferay and Cloud
Cloud portals, Amazon and more . . .

Miguel Ángel Pastor Olivar
A little bit about me
Working at the "infrastructure" side

Cloud computing and distributed systems

Interests in concurrent and distributed programming.
Functional programming advocate!

Scala, OSGI and AspectJ enthusiast. Erlang aficionado

Email: miguel.pastor at liferay dot com

Twitter handler: miguelinlas3
Agenda
The status of cloud

Do I really need cloud?

Liferay deployment architecture

Going devops. Help ourselves with great tools
The status of clouds
Have I already said Open Source?
Cloud portal, value add


                Abstraction API


             Orchestration Service


                   Hypervisor

Networking           Compute           Storage
Do I really need cloud?
Do I really need cloud?
Trending topic

Our CIO says we need to be there

Faster time to market

Access to pooled resources

Hybrid IT
5 main features of cloud
On demand self service

Broad network access

Resources pooling

Rapid elasticity

Measured service
Liferay and Cloud
Deploying Liferay at Amazon Cloud
4
4        Load
        Balancer
                                       3
                                       3


              Web             Web
             Server          Server




    1
    1         App              App
             Server           Server

                   App Tier


                                           2
                                           2

                      AZ-1
                                               AZ-2
1
1   The application tier
Amazon Compute Service (EC2)

Important!
      compute units != CPU != core

Cluster Compute Quadruple Extra
       About 33.5 EC Compute Units

EBS optimized could be a good ally

Take account of virtualization overhead in your provisioning
planning
1
 1   The application tier
Use AMI to easier and quicker scaling.

EBS backed are preferred (personal opinion).

Tune connection pools, Java heap, garbage collector, …
      Same than physical deployments
1
 1   The application tier
Use JDBC_PING for Jgroups
      Discovery mechanism
       Clusterlink, cache replication

S3_PING
      Alternative

“Documents and Media” application
     S3 storage
2
 2   The database tier
Two approaches
      RDS service versus own managed database server

Depends on your needs and requirements

RDS is extremely easy: completely managed
      Easy to scale
      Reliable

Absence of low level control: tunning, optimizing

Limited set of databases: Oracle, MySQL and SQL Server
3
 3   Load balancing
Alternative to HAProxy/Apache

Scales based on incoming requests

EC2 instances health detection

Support for sticky session

Support IPv4 an IPv6
3
 3   Load balancing
Create a new load balancer

Select the protocol: HTTP(s), TCP, SSL or Custom

Configure health checks

Select the instances behind the load balancer
4
 4   Monitoring our system
Using the Cloud Watch service

No additional software required

Real time monitoring

Set alarms, view graphs and statistics

Custom metrics

Combine it with the auto scaling service
How can we achieve this?
A proposed solution
Which is our goal?
Create any kind of environment
      Development, testing, production, …

Do it very quickly!

Dynamically and customizable

Do it on a cloud infrastructure
       Don´t get tight to AWS
Additional challenges
Be able to scale dynamically

Manage “non-software” components

      Network configs

      App level configs

      System configs
Proposed tools
Multi cloud library written in Java + Clojure

Abstraction layer over resource management

Coding our infrastructure management
      Port between different providers
Pallet
Provision nodes with software and configuration

Verifies nodes and services are working fine

Operates the services in nodes

Uses JClouds under the hood
      Creating and managing nodes
Why Pallet??
Integrates perfectly with the infrastructure management

Scalable programming model (thanks to Clojure)

No central server

No required agents on nodes

All node configuration is done via ssh + scripts (generated)

DSL for generating scripts

Testing
Clojure
Pallet is built on top of Clojure

Clojure is a JVM based Lisp dialect
       Integration with Java and awesome concurrency

Higher level of abstraction

Becoming extremely popular (many books have been written
recently)
This is very cool but . . . How!?
Cloud infra-structure

I want a bunch
                                 C    ELB                            ELB
How is itstuff
   Apply going?
    of nodes
                                 l
             JClouds
                        s
                                 o              Liferay

                 JCloud
                        Pallet   u    Liferay                              Liferay


                    Pallet       d                 Liferay

                                     Liferay
                                                                      Liferay
                  Pallet
                                 A
                                 P
                                 I   Database
                                                                      Database

                                                Database
                                                                                Database
                                     Database             Database
Configuration management
Managing nodes
Question & Answers?

More Related Content

What's hot

Android seminar-presentation
Android seminar-presentationAndroid seminar-presentation
Android seminar-presentation
connectshilpa
 
A project on wheelchair motion control using eye gaze and blinks
A project on wheelchair motion control using eye gaze and blinksA project on wheelchair motion control using eye gaze and blinks
A project on wheelchair motion control using eye gaze and blinks
pooja mote
 
121 벡터기반 지하철 노선도 렌더링 엔진
121 벡터기반 지하철 노선도 렌더링 엔진121 벡터기반 지하철 노선도 렌더링 엔진
121 벡터기반 지하철 노선도 렌더링 엔진
NAVER D2
 
Main project (touch screen based robotic vehicle)
Main project (touch screen based robotic vehicle)Main project (touch screen based robotic vehicle)
Main project (touch screen based robotic vehicle)
VK RM
 

What's hot (20)

Garbage monitoring system IOT
Garbage monitoring system IOTGarbage monitoring system IOT
Garbage monitoring system IOT
 
FIWARE: an open standard platform for smart cities
FIWARE: an open standard platform for smart citiesFIWARE: an open standard platform for smart cities
FIWARE: an open standard platform for smart cities
 
Fitness App(PPT) New (1).pptx
Fitness App(PPT) New (1).pptxFitness App(PPT) New (1).pptx
Fitness App(PPT) New (1).pptx
 
WatchOS Architecture
WatchOS ArchitectureWatchOS Architecture
WatchOS Architecture
 
Fitness management application
Fitness management applicationFitness management application
Fitness management application
 
GeoServer Ecosystem 2018
GeoServer Ecosystem 2018GeoServer Ecosystem 2018
GeoServer Ecosystem 2018
 
WSO2 API Manager - Product Overview
WSO2 API Manager - Product OverviewWSO2 API Manager - Product Overview
WSO2 API Manager - Product Overview
 
1 QGIS intro
1 QGIS intro1 QGIS intro
1 QGIS intro
 
Presentation On Android OS
Presentation On Android OSPresentation On Android OS
Presentation On Android OS
 
Overview of Microcontroller and ATMega32 microcontroller
Overview of Microcontroller and ATMega32 microcontrollerOverview of Microcontroller and ATMega32 microcontroller
Overview of Microcontroller and ATMega32 microcontroller
 
Online shopping
Online shoppingOnline shopping
Online shopping
 
HAND GESTURE VOCALIZER
HAND GESTURE VOCALIZERHAND GESTURE VOCALIZER
HAND GESTURE VOCALIZER
 
Android seminar-presentation
Android seminar-presentationAndroid seminar-presentation
Android seminar-presentation
 
A project on wheelchair motion control using eye gaze and blinks
A project on wheelchair motion control using eye gaze and blinksA project on wheelchair motion control using eye gaze and blinks
A project on wheelchair motion control using eye gaze and blinks
 
121 벡터기반 지하철 노선도 렌더링 엔진
121 벡터기반 지하철 노선도 렌더링 엔진121 벡터기반 지하철 노선도 렌더링 엔진
121 벡터기반 지하철 노선도 렌더링 엔진
 
Android Operating System
Android Operating SystemAndroid Operating System
Android Operating System
 
20150708 ros seminar_in_busan_korea
20150708 ros seminar_in_busan_korea20150708 ros seminar_in_busan_korea
20150708 ros seminar_in_busan_korea
 
Main project (touch screen based robotic vehicle)
Main project (touch screen based robotic vehicle)Main project (touch screen based robotic vehicle)
Main project (touch screen based robotic vehicle)
 
Final presentation on chatbot
Final presentation on chatbotFinal presentation on chatbot
Final presentation on chatbot
 
Google Firebase
Google FirebaseGoogle Firebase
Google Firebase
 

Similar to Liferay and Cloud

Ram chinta hug-20120922-v1
Ram chinta hug-20120922-v1Ram chinta hug-20120922-v1
Ram chinta hug-20120922-v1
Ram Chinta
 
AWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloudAWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloud
Amazon Web Services
 
[.Net Juniors Academy] Introdução ao Cloud Computing e Windows Azure Platform
[.Net Juniors Academy] Introdução ao Cloud Computing e Windows Azure Platform[.Net Juniors Academy] Introdução ao Cloud Computing e Windows Azure Platform
[.Net Juniors Academy] Introdução ao Cloud Computing e Windows Azure Platform
Vitor Tomaz
 
Best Practices for Hosting Web Applications on AWS
Best Practices for Hosting Web Applications on AWSBest Practices for Hosting Web Applications on AWS
Best Practices for Hosting Web Applications on AWS
Amazon Web Services
 

Similar to Liferay and Cloud (20)

Ram chinta hug-20120922-v1
Ram chinta hug-20120922-v1Ram chinta hug-20120922-v1
Ram chinta hug-20120922-v1
 
Scalable Database Options on AWS
Scalable Database Options on AWSScalable Database Options on AWS
Scalable Database Options on AWS
 
Streaming Movies brings you Streamlined Applications -- How Adopting Netflix ...
Streaming Movies brings you Streamlined Applications -- How Adopting Netflix ...Streaming Movies brings you Streamlined Applications -- How Adopting Netflix ...
Streaming Movies brings you Streamlined Applications -- How Adopting Netflix ...
 
Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
Amazon EKS 그리고 Service Mesh (김세호 솔루션즈 아키텍트, AWS) :: Gaming on AWS 2018
 
Brief about Windows Azure Platform
Brief about Windows Azure Platform Brief about Windows Azure Platform
Brief about Windows Azure Platform
 
DAT101 Understanding AWS Database Options - AWS re: Invent 2012
DAT101 Understanding AWS Database Options - AWS re: Invent 2012DAT101 Understanding AWS Database Options - AWS re: Invent 2012
DAT101 Understanding AWS Database Options - AWS re: Invent 2012
 
AWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloudAWS Summit 2011: Architecting in the cloud
AWS Summit 2011: Architecting in the cloud
 
Keynote: Your Future With Cloud Computing - Dr. Werner Vogels - AWS Summit 2...
Keynote: Your Future With Cloud Computing - Dr. Werner Vogels  - AWS Summit 2...Keynote: Your Future With Cloud Computing - Dr. Werner Vogels  - AWS Summit 2...
Keynote: Your Future With Cloud Computing - Dr. Werner Vogels - AWS Summit 2...
 
Web Scale Applications using NeflixOSS Cloud Platform
Web Scale Applications using NeflixOSS Cloud PlatformWeb Scale Applications using NeflixOSS Cloud Platform
Web Scale Applications using NeflixOSS Cloud Platform
 
Windows Azure Uzerinden Alinabilen Hizmetler
Windows Azure Uzerinden Alinabilen HizmetlerWindows Azure Uzerinden Alinabilen Hizmetler
Windows Azure Uzerinden Alinabilen Hizmetler
 
Windows Azure Üzerinden Alınabilecek Hizmetler
Windows Azure Üzerinden Alınabilecek HizmetlerWindows Azure Üzerinden Alınabilecek Hizmetler
Windows Azure Üzerinden Alınabilecek Hizmetler
 
AWS re:Invent 2016: From Monolithic to Microservices: Evolving Architecture P...
AWS re:Invent 2016: From Monolithic to Microservices: Evolving Architecture P...AWS re:Invent 2016: From Monolithic to Microservices: Evolving Architecture P...
AWS re:Invent 2016: From Monolithic to Microservices: Evolving Architecture P...
 
[.Net Juniors Academy] Introdução ao Cloud Computing e Windows Azure Platform
[.Net Juniors Academy] Introdução ao Cloud Computing e Windows Azure Platform[.Net Juniors Academy] Introdução ao Cloud Computing e Windows Azure Platform
[.Net Juniors Academy] Introdução ao Cloud Computing e Windows Azure Platform
 
Devoxx university - Kafka de haut en bas
Devoxx university - Kafka de haut en basDevoxx university - Kafka de haut en bas
Devoxx university - Kafka de haut en bas
 
Crx 2.2 Deep-Dive
Crx 2.2 Deep-DiveCrx 2.2 Deep-Dive
Crx 2.2 Deep-Dive
 
Best Practices for Hosting Web Applications on AWS
Best Practices for Hosting Web Applications on AWSBest Practices for Hosting Web Applications on AWS
Best Practices for Hosting Web Applications on AWS
 
Using Kubernetes to deliver a “serverless” service
Using Kubernetes to deliver a “serverless” serviceUsing Kubernetes to deliver a “serverless” service
Using Kubernetes to deliver a “serverless” service
 
Getting Started with Containers on AWS: Collision 2018
Getting Started with Containers on AWS: Collision 2018Getting Started with Containers on AWS: Collision 2018
Getting Started with Containers on AWS: Collision 2018
 
Cybera - Clouds & other computational frameworks for science
Cybera - Clouds & other computational frameworks for scienceCybera - Clouds & other computational frameworks for science
Cybera - Clouds & other computational frameworks for science
 
The Boss: A Petascale Database for Large-Scale Neuroscience, Powered by Serve...
The Boss: A Petascale Database for Large-Scale Neuroscience, Powered by Serve...The Boss: A Petascale Database for Large-Scale Neuroscience, Powered by Serve...
The Boss: A Petascale Database for Large-Scale Neuroscience, Powered by Serve...
 

More from Miguel Pastor

Microservices: The OSGi way A different vision on microservices
Microservices: The OSGi way A different vision on microservicesMicroservices: The OSGi way A different vision on microservices
Microservices: The OSGi way A different vision on microservices
Miguel Pastor
 
Reactive applications and Akka intro used in the Madrid Scala Meetup
Reactive applications and Akka intro used in the Madrid Scala MeetupReactive applications and Akka intro used in the Madrid Scala Meetup
Reactive applications and Akka intro used in the Madrid Scala Meetup
Miguel Pastor
 
Liferay Devcon 2013: Our way towards modularity
Liferay Devcon 2013: Our way towards modularityLiferay Devcon 2013: Our way towards modularity
Liferay Devcon 2013: Our way towards modularity
Miguel Pastor
 

More from Miguel Pastor (18)

Liferay & Big Data Dev Con 2014
Liferay & Big Data Dev Con 2014Liferay & Big Data Dev Con 2014
Liferay & Big Data Dev Con 2014
 
Microservices: The OSGi way A different vision on microservices
Microservices: The OSGi way A different vision on microservicesMicroservices: The OSGi way A different vision on microservices
Microservices: The OSGi way A different vision on microservices
 
Liferay and Big Data
Liferay and Big DataLiferay and Big Data
Liferay and Big Data
 
Reactive applications and Akka intro used in the Madrid Scala Meetup
Reactive applications and Akka intro used in the Madrid Scala MeetupReactive applications and Akka intro used in the Madrid Scala Meetup
Reactive applications and Akka intro used in the Madrid Scala Meetup
 
Reactive applications using Akka
Reactive applications using AkkaReactive applications using Akka
Reactive applications using Akka
 
Liferay Devcon 2013: Our way towards modularity
Liferay Devcon 2013: Our way towards modularityLiferay Devcon 2013: Our way towards modularity
Liferay Devcon 2013: Our way towards modularity
 
Liferay Module Framework
Liferay Module FrameworkLiferay Module Framework
Liferay Module Framework
 
Jvm fundamentals
Jvm fundamentalsJvm fundamentals
Jvm fundamentals
 
Scala Overview
Scala OverviewScala Overview
Scala Overview
 
Hadoop, Cloud y Spring
Hadoop, Cloud y Spring Hadoop, Cloud y Spring
Hadoop, Cloud y Spring
 
Scala: un vistazo general
Scala: un vistazo generalScala: un vistazo general
Scala: un vistazo general
 
Platform as a Service overview
Platform as a Service overviewPlatform as a Service overview
Platform as a Service overview
 
HadoopDB
HadoopDBHadoopDB
HadoopDB
 
Aspect Oriented Programming introduction
Aspect Oriented Programming introductionAspect Oriented Programming introduction
Aspect Oriented Programming introduction
 
Software measure-slides
Software measure-slidesSoftware measure-slides
Software measure-slides
 
Arquitecturas MMOG
Arquitecturas MMOGArquitecturas MMOG
Arquitecturas MMOG
 
Software Failures
Software FailuresSoftware Failures
Software Failures
 
Groovy and Grails intro
Groovy and Grails introGroovy and Grails intro
Groovy and Grails intro
 

Recently uploaded

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
vu2urc
 

Recently uploaded (20)

AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
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
 
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...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
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
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
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
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
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
 
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
 
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?
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

Liferay and Cloud

  • 1. Liferay and Cloud Cloud portals, Amazon and more . . . Miguel Ángel Pastor Olivar
  • 2. A little bit about me Working at the "infrastructure" side Cloud computing and distributed systems Interests in concurrent and distributed programming. Functional programming advocate! Scala, OSGI and AspectJ enthusiast. Erlang aficionado Email: miguel.pastor at liferay dot com Twitter handler: miguelinlas3
  • 3. Agenda The status of cloud Do I really need cloud? Liferay deployment architecture Going devops. Help ourselves with great tools
  • 4. The status of clouds Have I already said Open Source?
  • 5. Cloud portal, value add Abstraction API Orchestration Service Hypervisor Networking Compute Storage
  • 6.
  • 7. Do I really need cloud?
  • 8. Do I really need cloud? Trending topic Our CIO says we need to be there Faster time to market Access to pooled resources Hybrid IT
  • 9. 5 main features of cloud On demand self service Broad network access Resources pooling Rapid elasticity Measured service
  • 10. Liferay and Cloud Deploying Liferay at Amazon Cloud
  • 11. 4 4 Load Balancer 3 3 Web Web Server Server 1 1 App App Server Server App Tier 2 2 AZ-1 AZ-2
  • 12. 1 1 The application tier Amazon Compute Service (EC2) Important! compute units != CPU != core Cluster Compute Quadruple Extra About 33.5 EC Compute Units EBS optimized could be a good ally Take account of virtualization overhead in your provisioning planning
  • 13. 1 1 The application tier Use AMI to easier and quicker scaling. EBS backed are preferred (personal opinion). Tune connection pools, Java heap, garbage collector, … Same than physical deployments
  • 14. 1 1 The application tier Use JDBC_PING for Jgroups Discovery mechanism Clusterlink, cache replication S3_PING Alternative “Documents and Media” application S3 storage
  • 15. 2 2 The database tier Two approaches RDS service versus own managed database server Depends on your needs and requirements RDS is extremely easy: completely managed Easy to scale Reliable Absence of low level control: tunning, optimizing Limited set of databases: Oracle, MySQL and SQL Server
  • 16. 3 3 Load balancing Alternative to HAProxy/Apache Scales based on incoming requests EC2 instances health detection Support for sticky session Support IPv4 an IPv6
  • 17. 3 3 Load balancing Create a new load balancer Select the protocol: HTTP(s), TCP, SSL or Custom Configure health checks Select the instances behind the load balancer
  • 18. 4 4 Monitoring our system Using the Cloud Watch service No additional software required Real time monitoring Set alarms, view graphs and statistics Custom metrics Combine it with the auto scaling service
  • 19. How can we achieve this? A proposed solution
  • 20. Which is our goal? Create any kind of environment Development, testing, production, … Do it very quickly! Dynamically and customizable Do it on a cloud infrastructure Don´t get tight to AWS
  • 21. Additional challenges Be able to scale dynamically Manage “non-software” components Network configs App level configs System configs
  • 23. Multi cloud library written in Java + Clojure Abstraction layer over resource management Coding our infrastructure management Port between different providers
  • 24. Pallet Provision nodes with software and configuration Verifies nodes and services are working fine Operates the services in nodes Uses JClouds under the hood Creating and managing nodes
  • 25. Why Pallet?? Integrates perfectly with the infrastructure management Scalable programming model (thanks to Clojure) No central server No required agents on nodes All node configuration is done via ssh + scripts (generated) DSL for generating scripts Testing
  • 26. Clojure Pallet is built on top of Clojure Clojure is a JVM based Lisp dialect Integration with Java and awesome concurrency Higher level of abstraction Becoming extremely popular (many books have been written recently)
  • 27. This is very cool but . . . How!?
  • 28. Cloud infra-structure I want a bunch C ELB ELB How is itstuff Apply going? of nodes l JClouds s o Liferay JCloud Pallet u Liferay Liferay Pallet d Liferay Liferay Liferay Pallet A P I Database Database Database Database Database Database