Category Archives: Platform as a Service

Cloud DevOps and The Path Towards Governance

Cloud DevOps and PaaS are paving a path towards teams adopting governance best practices.  Teams often follow human nature and take the path of least resistance.  DevOps automates activities, and with adequate up-front planning, DevOps can make ‘the right thing to do the easy thing to do’.

Governance is the precepts, policies, processes, and tooling used to conform activities, minimize risk, and maximize effectiveness.   As Mike Kavis states in a recent blog post,

  Many IT and DevOps shops always look at governance as a dirty word because it sounds too much like government, which sounds too much like bureaucracy and waste. The problem with governance is not with governance itself, but with how organizations have tried to implement (or not implement) it.

 

DevOps principles and practices combined with PaaS characteristics will quicken IT solution development and delivery.   A DevOps focus on continuous activity execution (e.g. continuous build, continuous integration, continuous test, continuous delivery) creates a ‘no wait’ environment.   Teams do not have to wait for the next script to run or for the next activity to commence.  By incorporating automation into developer and operations processes, teams bypass time consuming manual tasks and gain faster phase execution.  Both DevOps and PaaS promote simple, on-demand self-service environments that shield team members from complexity and reduce skill hurdles.  By offering on-demand self-service access, rapid business innovation and experimentation is possible. By reducing complexity, team members are not required to obtain special training and skills before consuming IT services and infrastructure.

A configurable DevOps PaaS can implement governance best practices and be readily adopted by teams without extensive implementation effort.  Effective application delivery governance presents a simplified and unified user experience to complex development tools, processes, and team hand-offs.  By integrating software promotion best practices, test automation, continuous integration, and issue tracking, application delivery governance raises software quality while reducing delivery timeframes.  For more information, read about how to accelerate agility and maintain governance with DevOps PaaS

Recommended Reading

 

Adopting DevOps and Governance Webinar

Application Services Governance requires more than a SOA Registry

Application Services Governance

 

Creating a SaaS App with the Multi-Tenant Carbon Framework – Step 1

When using traditional application servers and integration middleware, developing a multi-tenant SaaS application that meets SaaS requirements (i.e. personalization, tenant dimensions, self-service, resource optimization, and data aggregation) is a non-trivial exercise.  The prior blog post in this SaaS series describes the requirements and constraints for SaaS applications.

Because WSO2 Carbon based middleware servers contain a tenancy framework, development teams may rapidly migrate single-tenant web applications into multi-tenant SaaS applications.  WSO2 Carbon creates a multi-tenant environment inside the middleware servers (i.e. application server, integration server, Enterprise Service Bus) and delivers unparalleled tenant density.   For more information on the cost and effort savings, read the multi-tenant, shared container PaaS white paper.

The WSO2 Carbon framework creates tenant partitions, registers tenant specific applications, provides tenant administration tools, and holds run-time tenant context.

In this blog post series, we will deploy a tenant-aware SaaS application on the WSO2 Application Server 5.1, illustrate how to acquire the Carbon Context object, and demonstrate multi-tenancy in action.  The WSO2 Application Server is based on Apache Tomcat, and extends Tomcat with enterprise security, logging, management, clustering, and multi-tenancy; turning the open source Apache Tomcat project into Enterprise, Cloud-Native Tomcat++

 

 Step 1 – Deploy Carbon and Acquire Carbon Context

The SaaS application demonstrates tenant-specific framework objects, illustrates tenancy isolation, and reviews the Java Tenancy API within WSO2 Carbon.   The application code is available from GitHub at https://github.com/karux/CarbonSaaSTest.git

The Carbon Context object holds registry, cache, queue, user realm, and role based access control (RBAC) information for each tenant run-time context. Each SaaS application can use a Carbon platform API to access context details and personalize the application experience.

 

This blog tutorial and example code demonstrates the following getting started concepts and steps:

  • Getting Started #1 – Defining a Tenancy Dimension Model
    • Step 0: Deploy the WSO2 Application Server and start server
    • Step 1:  Log into the Carbon administration console as the super-administrator
  • Getting Started #2 – Provisioning SaaS Applications
    • Step 0: Compile the CarbonSaaSTest Application
    • Step 1: Provision a Global Tenant Scope SaaS Application
  • Getting Started #3 – Acquire Tenant Context

Continue reading

Building Multi-tenant SaaS Applications

Multi-tenant SaaS applications deliver a personalized client experience while maximizing performance and efficiency.   Many teams are challenged by the specialized knowledge required to create a SaaS application on a legacy Java platform.  Creating SaaS applications requires detailed knowledge of multi-tenancy, contextual personalization, declarative programming, and infrastructure scaling.  The WSO2 Carbon platform contains unique Cloud-Native frameworks that decrease development challenges when building multi-tenant SaaS applications.

Continue reading

Enterprise Private PaaS Adoption and Differentiation

The secret is starting to leak out from multiple sources; Private PaaS adoption by enterprise end-user organizations is off to a slow start in 2012-2013.  Application development teams are missing an opportunity to accelerate their agility and operate at the speed of Now.  As enterprise teams evaluate Private PaaS alternatives and PaaS architecture, they must carefully identify cloud benefits, cloud characteristics, cloud-native platform options, and cloud adoption strategies.

Continue reading

How can Everytown IT adopt DevOps and achieve business benefit?

Donnie Berkholz has an excellent blog post describing why EveryTown IT hesitates to adopt DevOps and Cloud, even though they realize significant business benefit may be achieved.   Donnie describes how EveryTown IT lives in:

a world where inertia rules the day, where business is king and sysadmins have little to no say in major changes. And it’s a world where even experimentation is difficult and must be done on the smallest of scales.

Sound familiar?

Continue reading

Stratos Cloud Native PaaS Reloaded

WSO2 Stratos 2.0 reloads the definition of Cloud Native PaaS.   With Stratos 2.0, IT teams can:

  1. Move all their applications to the Cloud by plugging non-Cloud-aware servers and frameworks onto a PaaS Cloud-enablement framework. The fully extensible cartridge model allows new services, languages and frameworks, and runtime containers to be plugged in to the PaaS framework.
  2. Achieve Cloud scale for PHP applications, MySQL databases, and Tomcat hosted web applications.
  3. Deliver a single PaaS deployment over multiple IaaS environment (hybrid cloud).  WSO2 Stratos supports popular IaaS providers (vmWare, EC2, OpenStack, CloudStack, Rackspace, Eucalyptus) via the Apache jclouds project and Puppet based deployers.
  4. Improve TCO by lowering and optimizing run-time cost by moving applications to VM-based IaaS or choosing a lightweight Linux Container (LXC) deployment model that optimizes resource consumption and minimizes application infrastructure footprint.

 

Additionally,  the Stratos bits have been officially accepted as an Apache incubator project.

Cloud Native Paas Recommended Reading

Cloud Native PaaS is for Real – Available Today

 

Cloud-aware applications and PaaS architecture

Apache Stratos Brings Cloud Native PaaS to Apache

PaaS Outlook for 2013

 

 

 

 

Apache Stratos brings Cloud-Native PaaS to Apache

WSO2 has proposed the Apache Stratos project at the Apache Foundation.

Apache Foundation

Apache Stratos will be a polyglot PaaS framework, providing developers a cloud-native environment for developing, testing, and running scalable applications.  With Apache Stratos, IT providers will gain high utilization rates, automated resource management, and platform-wide insight including monitoring and billing.

Apache is the obvious choice for a project that already embodies Apache values and is driven by developers who are committers on many other Apache projects.  By donating the project to Apache, WSO2 desires to attract open community members from the following constituencies:

  • Organizations adopting Private PaaS deployment within an enterprise and accelerating enterprise application deployment.
  • PaaS providers relying on a PaaS framework to build a PaaS that is customized to their particular vertical industry, ecosystem, or internal development processes.
  • SaaS providers requiring a widely-deployed and supported elastic, multi-tenant Cloud-native platform.
  • ISPs offering hosted application services with higher resource utilization capabilities than provided by IaaS layers.
  • IaaS vendors providing higher-level PaaS services to their customers.
  • Analytics, data, integration, and application server vendors adding cloud capabilities to their products through Stratos Cartridges.

The proposed committer list includes individuals from SUSE, Citrix, NASA Jet Propulsion Lab (JPL), Sungard, and EngineYard.   Join the Apache Stratos community, participate in extending the 100% Open Source PaaS framework, and create a Cloud-Native fabric.

Apache Stratos

Figure 1.0: Apache Stratos Architecture

Recommended Reading

Apache Stratos Proposal

WSO2 Stratos Product Page

 

 

 

Apache Foundation

Cloud Native Private PaaS is for real – Available Today!

quote of the day from #Gartner’s Eric Knipp about Cloud Native Private PaaS:

“Do you wait around until 2015 (or later) for Java EE 8 to bring you the cloudy features you’re looking for, now that we know for sure that Java EE 7 won’t have any? Or, do you just wait for your preferred IT megavendor to get around to offering you a for-real, multitenant, cloud native Private PaaS that goes beyond simply slapping a pre-built middleware stack onto a virtual machine? ”

The tongue in cheek statements imply that a best-of-breed IT vendor can offer you a Cloud Native Private PaaS alternative today.   Check out the Cloud Native Private PaaS architecture underlying WSO2 Stratos – available today.

Cloud Native Private PaaS

 

Recommended Reading for Cloud Native Private PaaS

Cloud Native Private PaaS Architecture

Cloud aware applications and PaaS Architecture

Cloud Native PaaS or Cloud Washed PaaS

 

 

Bridge IaaS and PaaS

Bridge IaaS and PaaS to more efficiently and flexibly tackle the challenges of the modern connected enterprise.

As enterprises deploy private IaaS clouds into production, they are reevaluating their future application delivery models. SUSE and WSO2 believe that private PaaS will leverage the automation and scalability of Private IaaS solutions, such as OpenStack-based SUSE Cloud, and deliver secure, standardized development environments that will make migrating to an agile, service oriented delivery model possible.

View the Bridging IaaS with PaaS webinar presentation, and

Continue reading

PaaS Outlook for 2013

The dZone Definitive Guide to PaaS IaaS Solutions  delivers a detailed picture of the diverse Cloud landscape and a PaaS Outlook for 2013 (authored by me).
dZone Guide to PaaS IaaS Solutions

With simple comparison grids and product description pages, complete with unbiased, third-party reviews, you’ll be able to make a well-informed, data-driven decision about the cloud services you want to adopt. The solution you choose is entirely dependent on the types of tasks you want to perform. This guide will help you decide what best fits your company’s needs, and what to look for in the solution you buy.

The PaaS Outlook provides a brief insiders perspective on:

  • The importance of Programming Language Support
  • Using Cloud-based DevOps processes to accelerate and automate delivery
  • The hybrid platform goal state