Liferay and Cloud

Uploaded on

A quick overview about Open Source clouds, Liferay architecture on cloud and some "devops" tools

A quick overview about Open Source clouds, Liferay architecture on cloud and some "devops" tools

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads


Total Views
On Slideshare
From Embeds
Number of Embeds



Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

    No notes for slide


  • 1. Liferay and CloudCloud portals, Amazon and more . . .Miguel Ángel Pastor Olivar
  • 2. A little bit about meWorking at the "infrastructure" sideCloud computing and distributed systemsInterests in concurrent and distributed programming.Functional programming advocate!Scala, OSGI and AspectJ enthusiast. Erlang aficionadoEmail: miguel.pastor at liferay dot comTwitter handler: miguelinlas3
  • 3. AgendaThe status of cloudDo I really need cloud?Liferay deployment architectureGoing devops. Help ourselves with great tools
  • 4. The status of cloudsHave I already said Open Source?
  • 5. Cloud portal, value add Abstraction API Orchestration Service HypervisorNetworking Compute Storage
  • 6. Do I really need cloud?
  • 7. Do I really need cloud?Trending topicOur CIO says we need to be thereFaster time to marketAccess to pooled resourcesHybrid IT
  • 8. 5 main features of cloudOn demand self serviceBroad network accessResources poolingRapid elasticityMeasured service
  • 9. Liferay and CloudDeploying Liferay at Amazon Cloud
  • 10. 44 Load Balancer 3 3 Web Web Server Server 1 1 App App Server Server App Tier 2 2 AZ-1 AZ-2
  • 11. 11 The application tierAmazon Compute Service (EC2)Important! compute units != CPU != coreCluster Compute Quadruple Extra About 33.5 EC Compute UnitsEBS optimized could be a good allyTake account of virtualization overhead in your provisioningplanning
  • 12. 1 1 The application tierUse AMI to easier and quicker scaling.EBS backed are preferred (personal opinion).Tune connection pools, Java heap, garbage collector, … Same than physical deployments
  • 13. 1 1 The application tierUse JDBC_PING for Jgroups Discovery mechanism Clusterlink, cache replicationS3_PING Alternative“Documents and Media” application S3 storage
  • 14. 2 2 The database tierTwo approaches RDS service versus own managed database serverDepends on your needs and requirementsRDS is extremely easy: completely managed Easy to scale ReliableAbsence of low level control: tunning, optimizingLimited set of databases: Oracle, MySQL and SQL Server
  • 15. 3 3 Load balancingAlternative to HAProxy/ApacheScales based on incoming requestsEC2 instances health detectionSupport for sticky sessionSupport IPv4 an IPv6
  • 16. 3 3 Load balancingCreate a new load balancerSelect the protocol: HTTP(s), TCP, SSL or CustomConfigure health checksSelect the instances behind the load balancer
  • 17. 4 4 Monitoring our systemUsing the Cloud Watch serviceNo additional software requiredReal time monitoringSet alarms, view graphs and statisticsCustom metricsCombine it with the auto scaling service
  • 18. How can we achieve this?A proposed solution
  • 19. Which is our goal?Create any kind of environment Development, testing, production, …Do it very quickly!Dynamically and customizableDo it on a cloud infrastructure Don´t get tight to AWS
  • 20. Additional challengesBe able to scale dynamicallyManage “non-software” components Network configs App level configs System configs
  • 21. Proposed tools
  • 22. Multi cloud library written in Java + ClojureAbstraction layer over resource managementCoding our infrastructure management Port between different providers
  • 23. PalletProvision nodes with software and configurationVerifies nodes and services are working fineOperates the services in nodesUses JClouds under the hood Creating and managing nodes
  • 24. Why Pallet??Integrates perfectly with the infrastructure managementScalable programming model (thanks to Clojure)No central serverNo required agents on nodesAll node configuration is done via ssh + scripts (generated)DSL for generating scriptsTesting
  • 25. ClojurePallet is built on top of ClojureClojure is a JVM based Lisp dialect Integration with Java and awesome concurrencyHigher level of abstractionBecoming extremely popular (many books have been writtenrecently)
  • 26. This is very cool but . . . How!?
  • 27. Cloud infra-structureI want a bunch C ELB ELBHow 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
  • 28. Configuration management
  • 29. Managing nodes
  • 30. Question & Answers?