Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Jelastic Features 2.x


Published on

Published in: Software
  • Be the first to comment

Jelastic Features 2.x

  1. 1. JELASTIC FEATURES Ruslan Synytsky,CTO July 2014
  2. 2. PaI = PaaS + IaaS • Jelastic brings together the flexibility of IaaS and the ease of use of PaaS for enterprises, hosting service providers and developers • PaaS automates all routine tasks on apps deployment • IaaS is used to build complex apps with some components currently missing in PaaS or very complex deployment architecture • Both PaaS and IaaS can be mixed together
  3. 3. Jelastic Architecture
  4. 4. No Restrictions - No Lock-In Many other PaaS platforms provide restrictions and limitations such as • no way to change configurations files for databases and application servers • no way to use public IP address or custom ports • no way to use multicast network • limited ways to deploy an application (only git-push-deploy) • only shared load balancer without ability to tweak rules/configs • strict limitations to write on the file system • stateless design is strongly forced With Jelastic you have no such restrictions!
  5. 5. High Density: Containers Jelastic uses Containers virtualization as primary virtualization option • Containers’ auto-scaling allows to provide better density • Containers have the minimal overhead in contrast to hardware virtualization • Containers can scale automatically up and down without restart – RAM, Storage, CPU, Network, IOPS
  6. 6. High Density: Auto-Hibernation • Jelastic provides auto-hibernation of test and dev environments after idle of user requests to them for some time • This dramatically economies hardware resources and provides better density • Jelastic resumes these environments in seconds just after the first user request
  7. 7. High Density: Deduplication Jelastic uses inbound to its virtualization technology of file-system data deduplication • Binaries, libraries and config files of middleware stacks or end-user applications are usually the same • Jelastic stores the same files only in a single instance on a particular hardware server which can provide more than 10x economy on storage capacity
  8. 8. Containers and HypervisorVMs Jelastic supports both Container and Hypervisor virtualization technologies • Containers provide better density and performance • Hypervisors allow to run apps on different OS on the same hardware server and avoid rare issues with containers virtualization
  9. 9. Polyglot PaaS Wide choice of Programming Languages and Frameworks • Java • PHP • Ruby • Python • Node.JS • .Net support is coming in Q4
  10. 10. Supported Middleware Stacks Wide range of middleware stacks are supported: • Load balancers (Nginx) • App Servers – Apache2, Nginx, JBoss, Glassfish,Tomcat, Jetty,TomEE – Java EE5 and Java EE6 are supported • Databases – SQL: MySQL, MariaDB, PostgreSQL, – NoSql: MongoDB, CouchDB, Neo4j, Cassandra, Redis • Cache servers: – Memcached,Varnish Jelastic stacks are easily customizable and extendable via cartridges
  11. 11. Database Clustering Variety of database technologies are available in Jelastic with ability to have them automatically connected into the application stacks.The following Database Servers are supported: • PostgreSQL • MySQL • MariaDB • Neo4j • MongoDB • Apache Cassandra • Redis • CouchDB In the near future Jelastic will support database clustering set just in one-click with no additional configurations required.
  12. 12. Enterprise Apps with Java EE6 Ability to deploy Java EE6 applications on JBoss, GlassFish and TomEE. Automation of another Java EE Servers can be added via cartridges. This allows IT companies heavy using Java EE to move their applications to the cloud without re-writing or re-architecting them
  13. 13. OpenShift Cartridges Support • Jelastic supports OpenShift cartridges specification • This allows to use middleware packed by OpenShift community in Jelastic • LB servers • App servers • DB servers • Caching servers • Others
  14. 14. Enterprise Cartridges • Jelastic supports Enterprise middleware stacks through OpenShift cartridges format – JBoss, PostgreSQL, Percona*, ZendServer* etc. • Developers can easily add other required languages, db, or middleware components via the customizable Cartridge system • This unique Cartridge-based extensibility allows Developers (and Operations) to extend the PaaS with specific enterprise standards or requirements
  15. 15. Docker Support • Jelastic will support Docker images this fall • All Docker images will be compatible with Jelastic and will be available for provisioning middleware stacks
  16. 16. Multi ElasticVPS Along with PaaS Jelastic provides ability to use IaaS features, represented by ElasticVirtual Private Servers • VPS is represented by bareVirtual Container orVirtual Machine • VPS is suitable when you need to host custom workload that currently is not supported by PaaS (e.g. custom languages, DBs, Hadoop) • It’s possible to ceate multipleVPS and connect them seamless with PaaS environments
  17. 17. Support of Legacy Apps Jelastic implements “zero code change” design from the first days. You can deploy any app in the cloud, even with outdated design or without horizontal scaling settings. This is very suitable especially for proprietary software which distributes only binaries.
  18. 18. Application Zero Lock-In Jelastic includes unmodified open source language runtimes. So applications developed on Jelastic can be easily moved to other environments supporting the same open source languages. For example, Ruby or JBoss applications running on Jelastic can be move to stand-alone implementations of Ruby or JBoss in the datacenter
  19. 19. Stateless and Stateful arch Jelastic supports specifics of stateless and stateful architecture • The sessions are stored in different databases • Applications can write on the file system • Jelastic clones containers when an application scales horizontally • Custom files and configs are fully replicated to the new container • It is allowed to tune each container independently • Session replication via multicast as approach to sync data in clusters forTomcat, GlassFish and others
  20. 20. AutomaticVertical Scaling • Ability to scale an app automatically Up and Down within resources of hardware server • Useful for legacy apps and apps that are not designed for horizontal scalability • Provides much more density of applications and resource usage than any other Cloud/Virtualization technology
  21. 21. Vertical Scaling: How It Works • During the load spikes Jelastic gives more resources to an application (up to the predefined limits of a virtual container) and takes them (resources) back when they are not needed anymore • Jelastic tunes different stacks according to the available resources – when user changes scaling limits of container Jelastic adjusts configuration files of the stack inside the container. • As a result Jelastic tries to utilize resources in the most optimal way, for example: by default JVM GC is configured in the way that allows to use vertical scaling without reloads
  22. 22. Hot Add of Resources Jelastic supports hot add of any resources without app restarts: • RAM • CPU • HDD storage • Network throughput • IOPS
  23. 23. Automatic Horizontal Scaling Jelastic enables cloud elasticity by providing automatic horizontal application scaling due to load changes. • In and Out scaling are supported • Thresholds based on CPU, RAM, IO* usage Horizontal scaling is a solution • when your app is limited to physical resource amount on single hardware server • when you need to handle huge spike loads
  24. 24. CollaborativeWork Jelastic supports collaborative work of people from the same organization or organizational unit • Use and configure shared environments • Work with the sameVCS repository • Manage organization users • One consolidated billing account
  25. 25. Built-In Billing with Blue Money Jelastic provides very flexible billing engine which is able to bill customers in different ways: • It allows to define different billing groups, different tariffs and discounts • Pre-paid and post-paid models are supported • Billing users on hourly basis • CPU, RAM, Storage, Network traffic usage • Arbitrary services • Dynamic billing rates are supported, e.g. the more you consume the less you pay for the unit of consumption
  26. 26. Limitation for Different Groups • Support of different groups with different permissions and quotas • Company’s group policies can be implemented in Jelastic through user groups • Available personal limitations/quotas that override groups one
  27. 27. Shared or Dedicated Load Balancer Load balancing ensures high system availability through the distribution of workload across multiple components. Using multiple components with load balancing, instead of a single component, may increase reliability through redundancy. Jelastic uses NGINX for two types of balancing: • HTTP • TCP HAProxy will be added in the near future via cartridges. Jelastic provides a flexible choice of: • fault tolerant shared load balancer for dev and test environments • fault tolerant dedicated load balancer for production apps
  28. 28. SSH Gate Jelastic users can remotely access individual application containers for applications deployed on the PaaS in order to see their processes, file system, and log files.This allows users to best architect and manage their applications SSH Gateway accepts users’ connections from the internet and then transmits these connections to the desired container, using an internal network • Interactive menu and ability to travel across many environments and containers without unneeded extra authentication • Direct connect to any container with support of SFTP, SCP, FISH, Puppet, Chef, Capistrano, etc.
  29. 29. Chef and Puppet Integration • Built-in mechanism of creation and cloning of complex development/testing/production environments • Service updating through the launch of new software generation • Repeatable configuration behavior is in the platform architecture • It allows to reuse collected base of automation receipts
  30. 30. Public API • Create very complex workflows/scenarios and app management • Simply integrate your existing solutions with Jelastic Cloud Services • Easily provision and de-provision the needed amount of virtual machines for specific workloads
  31. 31. Dependency and Build Management Jelastic includes different Dependency and Build Management tools including Maven for Java, Bundler for Ruby and NPM for Node.JS • automate the process of identifying dependencies in source code • pulling in the required libraries • building the complete application This both increase productivity and reduces the chance of error. These tools become critical in a cloud application platform like PaaS
  32. 32. Application Lifecycle Management Jelastic supports multiple Application Development Lifecycle stage environments (such as Dev, QA, Prod). Enterprises can adopt and implement the Jelastic platform without changing their current methodologies or processes • GIT/SVN integration • Smooth migration between dev-test-prod • Environments cloning • Swap domains/traffic between 2 instances of app (change pre-prod to prod without downtime) • Continuous delivery using Maven and CI integration
  33. 33. Continuous Integration and Release Management Jelastic includes Jenkins Build Server for Continuous Integration and Release Management which: • performs tests upon code check-in • orchestrates the build process • automatically promotes or cancels an application release based on results of the tests or build This automated release management becomes a critical part of streamlining the application development In addition supported: • TeamCity • Hudson
  34. 34. Continuous Delivery Jelastic provides everything for organizing right continuous delivery process: • CI tools • Environment cloning • Switching domain names and traffic between stage and production environments • Public API • Update and rollback patches
  35. 35. Accelerated Application Service Delivery Jelastic enhances the productivity and agility of the Application Developer by: • standardizing the workflow of app development lifecycle • enabling the acceleration of application service delivery • effective increasing theVelocity of IT • removing tedium and delay with server, OS, and middleware provisioning through on-demand and self- service application stack access
  36. 36. IDE Integration Jelastic has built-in integration with Eclipse, NetBeans, and IntelliJ Idea. Many developers can stay entirely within the IDE that they are comfortable with when working with Jelastic
  37. 37. Remote Debugging of Applications Developers can perform live break-point-enabled debugging of applications running within Jelastic using: • attached external IPv4 to any app container • integrated Eclipse, NetBeans and IntelliJ Idea
  38. 38. Dev Dashboard • Creates and manages the application environment – application servers – load balancers – clustering and availability • Keeps server configs up to date and consistent across environment • Defines parameters for app autoscaling • Provides orchestration for application deployment, patches, updates and roll- backs • And many others
  39. 39. Ops Panel Jelastic’s Cluster Admin panel provides a consolidated view of your cloud resources. • Add servers to the cloud quickly and easily • Comprehensive analytics for all resources in the cloud • Performance metrics and tuning • Sophisticated user and security management features • And many others
  40. 40. High Performance (Hardware and Software) Jelastic automatically optimize all middleware stacks for the best performance according to available resources • Unique technologies of smartVMs placement, Smart Live Migration allows to offload Cloud Cluster • Support of SAN and software defined storage provides fault tolerant solution
  41. 41. Multi Tenancy Jelastic provides ability to run the same app in hundreds and thousands isolated environments • App is not needed to be adopted for that in contrast to programmatically multi-tenancy • Such approach is very secure Jelastic provides ability to manage and perform bulk update all of them automatically
  42. 42. Live Migration Jelastic is able to live migrate virtual machines between different hardware servers without downtime Use-cases: • Offload hardware server with too big load average • Offload hardware server for maintenance or OS/Kernel upgrade • Migrate virtual machines to hardware server with greater performance/capacity
  43. 43. Smart Migration • Jelastic contains unique technology of Smart Live Migration which provides automatic live migration ofVMs to offload the whole Cloud Cluster • This approach allows to avoid issues when some hardware servers become overloaded or applications placed on them don’t have growth ability • Smart live migration automatically rebalances Cloud Cluster without any affect on app availability and performance
  44. 44. SMART Containers/VMs Distribution Jelastic provides smartVMs placement on their creation • EachVM is placed using special algorithm with checking if target server is able to handle workload of thisVM and contains enough resources to host it • This allows to avoid situations when some hardware nodes in cluster are overloaded and others are almost idle • Anti-affinity for smart distribution across hardware nodes asures that app nodes will not be placed at the same container
  45. 45. Software Defined Storage • Software-defined-storage (SDS) allows fast distribution across cluster and automatic fast recovering of failed containers/VMs from the failed hardware node • Files and containers/VMs are replicated (usually have 3 copies) to protect from hardware failures • Redundancy on Application/DB and LB layers minimizes downtime
  46. 46. Full High Availability for Apps Ability to configure full HA for • Load-Balancers* – Redundancy and Failover public IP • App Server – Redundancy with Session data replication • DB – Master-Slave/Master-Master
  47. 47. Zero Downtime Update Rolling updates for clustered applications (Load Balancer + Multiple App Servers) • First instance stops receiving traffic and is updating • First app server starts after update and begins to accept traffic • Second and following app servers are updating the same manner
  48. 48. Apps Pre-Packaging • Ability to pack the most useful and popular apps • Easy way to provide patched and updates for such apps – Configuration files – DB: data and schema – Environment topology
  49. 49. Enterprise AppTemplates Set of pre-configured clustered applications installed in a single click – CMS – CRM – HRM – ERP – And more Ability to add your own clustered apps
  50. 50. Development Innovations Support Jelastic's supports: • Backend-as-a-Services (BaaS) • Mobile Platform-as-a-Services (mPaaS) • Gaming App Servers This allows the development of cloud-backed mobile applications for Android or iOS that can be serviced by back-end applications running on Jelastic – SmartFoxServer – Apache UserGrid – BAASBOX – Deployd – Helios
  51. 51. Marketplace • Integrated marketplace • Geo-distributed marketplace
  52. 52. Choice of Cloud Infrastructure • No specific requirement for the infrastructure layer • Jelastic can be deployed on top of physical servers, a virtualization platform, an Infrastructure-as-a-Service as long as a public cloud provider • This gives IT the freedom to deploy the Jelastic solution in a way that best fits within their existing infrastructure options
  53. 53. Multi Clustering and Availability Zones • Ability to set up different clusters and mange them from the same panel • Ability to create Availability Zones, manageable from the same panel and deploy applications across these AZs to eliminate downtime in case of DC hardware failure • Applications can be spread to the multiple availability zones and run in the following modes
  54. 54. Export/Import Jelastic supports import and export of the whole environment • Topology • Settings • App & DB files This provides a simple ability to migrate apps between different DCs
  55. 55. Bridge between Public and Private Cloud With Jelastic you can create multiple Hybrid Clouds and connect your Private Cloud with multiple Public Clouds • Test, acceptance, and occasional usage – testing out different kinds of products for evaluation or acceptance purposes • Scalability – applications that require occasional computing power, or computing power with uncertain upfront resource demands • Backup in the cloud – resilience by storing duplicates, which allows for recovery when one (or even multiple) copies of a data object are lost
  56. 56. Geo-Distributed Replication & Balancing With Jelastic it’s possible to: • Organize geo-distributed replication of App or DB • Balance traffic between different datacenters of Availability zones within single datacenter
  57. 57. Out-of-the-Box Monitoring • Built-in Zabbix and integration – Pre-defined triggers and alerts – Ability to add your own • Built-in monitoring of rapidly changing Cloud Datacenter • Integration with Application Performance Monitoring Tools: – DripStat – NewRelic – AppDynamics
  58. 58. Audit Logs Jelastic audits all actions that any user or platform administrator performs – Environment operations: Create/Delete/Deploy/Change topology, etc – Account activity: sign-in, sign-out, password changes – Account administration – Cloud Cluster configuration changes Audit log can be represented as interactive report with filtering by different criteria
  59. 59. Support Options Jelastic provides support packages, depending on your need and critical level of your service • 24/7 • 8/5 Support is provided by certificated engineers
  60. 60. Oracle Platinum Partner Support Jelastic has a partnership with Oracle Platinum Support company which provides consulting on Oracle deployment and seamless integration with Jelastic Cloud
  61. 61. JELASTIC VS. VMWARE VMware vCloud Suite • Enterprise-class IaaS-only: no PaaS • Excellent DR • Expensive • Complicated Jelastic Platform-as-Infrastructure • PaaS + IaaS • Simple installation: entire stack is turnkey • Simple management of cloud • Self-management of dev environments • No code changes for any apps • Granular auto-scaling • Better performance (containers) • At least 30% better density • TCO savings of 90%+ • Application lifecycle management features 62
  62. 62. JELASTIC VS. OPENSHIFT/OPENSTACK 63 OpenShift/OpenStack • OpenStack IaaS + OpenShift PaaS • Open Source Community offering – over 17 different OpenStack distributions available • Complicated – requires third party implementation/integration/support • Lego – building block approach to cloud Jelastic Platform-as-Infrastructure • PaaS + IaaS • Simple installation: entire stack is turnkey • Jelastic features lead Open Standards • Simple management of cloud • Self-management of dev environments • No code changes for any apps • Granular auto-scaling • Better performance (containers) • TCO savings of 50%+ • Application lifecycle management features
  63. 63. ThankYou!