Category Archives: Platform as a Service

Collaborative

ALM PaaS Bridges the Dev Gap

ALM PaaS bridges the development gap between corporate IT and distributed outsourced development activities.  The traditional gap impedes system integration, user acceptance testing, visibility into project progress, and corporate governance. Stephen Withers describes an often true, and ineffective current ALM state:

” the CIO does not have visibility of the overall project: this is a major problem.”

A top CIO desire is to obtain portfolio-wide visibility into development velocity, operational efficiency, and application usage.

What solution or best practices do you see solving balkanized, silo development tooling, governance, workflow, and status reporting across distributed outsourced teams?  Does your desired solution integrate with tools a CIO’s outsourced organizations  are using?

Continue reading

Home Port Lighthouse - Galle

From the Home Port Lighthouse

The crew in the Home Port Lighthouse spotted a few interesting posts were spotted.   Here are the links and my sighting report:

Location: CloudBees Cloud App Development Platform Available on Verizon Cloud
WSO2 App Factory is an Open Source PaaS offering functionality similar to CloudBees. The DevOps PaaS delivers Jenkins, continuous delivery, enterprise governance, and DevOps best practices.

 

Location: Harnessing the Power of APIs
Are you publishing Naked APIs, or Managed APIs?  A managed API is:

  • Actively advertised and subscribe-able
  • Available with an associated, published service-level agreement (SLA)
  • Secured, authenticated, authorized and protected
  • Monitored and monetized with analytics

When creating an API Management program, consider including these five steps:

  • Step 1 Embrace the Managed API
  • Step 2 Establish a Monetization Model
  • Step 3 Make APIs Easy for Developers to Access
  • Step 4 Employ Governance
  • Step 5 Monitor API Use

 

Location:Cloud Spending Spikes, Here’s Where to Invest

  • Excellent distinction by Dave when parsing Cloud’s momentum and investment drivers. “That’s not new money, just moved money.”
  • ” focus on the specific aspects and the value they bring to your business — that’s where you want to align your own investments.”

When DevOps Meets ALM in the Cloud, teams can follow a three step PaaS performance metrics adoption plan:

๏Step 1: Foundational value metrics focus on Time to Market

๏Step 2: Optimization value metrics focus on Portfolio Efficiency

๏Step 3: Transformational value metrics focus on Productivity

 

 

 

 

public cloud, private cloud, and fuzzy cloud demarcation

Public/private and internal/external are two separate dimensions.  Public, private, or community attributes specify how widely the cloud service is shared; a sharing dimension.  Internal or external denote the consumer’s view of the Cloud’s service interface.  The view is associated with a consumer’s responsibility for service development, operations, and management; a responsibility dimension.  A third dimension, on-premise or outsourced, describes where the service assets are located; a location dimension.  Many architects conflate the three dimensions. NIST has recently published a Cloud Computing Reference Architecture which spends considerable prose disentangling the concepts.  According to NIST:

A private cloud gives a single Cloud Consumer organization the exclusive access to and usage of the infrastructure and computational resources. It may be managed either by the Cloud Consumer organization or by a third party, and may be hosted on the organization’s premises (i.e. on-site private clouds) or outsourced to a hosting company (i.e. outsourced private clouds).

 

Let’s run through three quick use cases describing public, private, and community:

Continue reading

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