ControlTier Inc. > Open.ControlTier
 
Font size:      

ControlTier Application Service Provisioning Solution

Coordinates build, deployment, configuration, and management procedures for an entire application stack

 

ControlTier Job Center in Action

 

This solution provides an enterprise-ready Application Service Provisioning System for any size Software as a Service (SaaS) or E-Commerce organization. ControlTier coordinates the build, deployment, configuration, and management procedures for an entire application stack -- from source code checkout through to a running service. This solution uses the open source ControlTier Solution Platform.

Unlike most automation solutions that are focused exclusively on hardware and OS provisioning for production environments, ControlTier was built to focus on the application build and deployment processes that happen all across development, QA, and production environments. ControlTier's core strength is coordinating the chain of events that are needed to build and deploy a collection of integrated applications (what we call a "site"). ControlTier gives you the framework, tools, and building blocks you need to fully automate these processes and provide your organization with reliable and flexible "push-button" control over its application services.

You'll use the Application Service Provisioning Solution to:

 

project graph tomcat module client console console module editor

more screenshots...

 

ControlTier Benefit #1: Self-Service
Enables an environment of self-service where you can safely delegate build and deployment tasks to people of varying skill level and knowledge

ControlTier Benefit: Enables Self Service

 

ControlTier Benefit #2: Visibility
Visibility into application deployment state, application environment inventory, dependencies, and configuration

ControlTier Benefit: Visibility

 

ControlTier Benefit #3: Notifications
Notify all relevant people when a build or deployment action takes place. Also send out periodic reports or status updates

ControlTier Benefit: Notifications

 

ControlTier Benefit #4: Reusable Automation
ControlTier is a highly componentized and object oriented system that facilities flexibility and rapid reuse. Anyone can create libraries of automation and share them. Using automation libraries you can quickly stamp out new services or new versions of existing services in any environment.

ControlTier Benefit: Reusable Automation

 

ControlTier Benefit #5: Open Source
All of the tool and components that make up the ControlTier System are fully open source. There is no dual licencing or hidden gotchas. Everything is free. Aside from the economic benefit this provides to users, it is our firm belief that all users must have the freedom to use and reuse ControlTier (and their newly acquired automation skills) as much as they want and wherever they want.

 

Standard Automation Pattern: Builders and Deployers

While ControlTier can automate many operational processes, there are two that are the core focus of the solution:

 

The Code Build and Deployment process provides end-to-end coordination for building and deploying an application’s code modules. This process checks out code, calls build tools, packages the release, and deploys it (including any application server restarts). This process also makes it easy to manage rollbacks.

The Data Build and Deployment processes is designed to address the specific needs around promoting an application’s data from one environment to the next. With a release, there are usually four types of data to consider: application data, catalog data, configuration, and content. Each follows a variant of the same basic workflow: export data from reference data source, version as a package in ControlTier repository, coordinate the import of the data to the target (including coordinating the execution of data management scripts before during and after that process). Because of ControlTier’s flexible architecture it is equally adept at working with and migrating small and large datasets.

Both of these processes follow the same general pattern and utilize a package-centric methodology. Builders provide the automation for creating packages and/or importing those packages into the ControlTier repository. Deployers are responsible for coordinating all of the steps that need to happen to distribute and install those packages (including the intelligently-ordered coordinated shutdown and startup of impacted services).

Below is an example of the pattern in action:

Coordinated process Diagram

Building your own application service provisioning solution is primarily done by configuring workflow commands defined in the library's automation modules. These modules divide up the end-to-end provisioning process into a control hierarchy, with each tier in the hierarchy responsible for a particular phase of the process. For example, coordinating the end-to-end build and deployment process is handled by the Updater module, while the coordination of overall deployment lifecycle is handled by the Site module. The management of the deployment lifecycle for each application component is done by the Deployment module and if the application has runtime state, it is handled by the Service module.

 

How do you know you need ControlTier?

 

 

Next: Learn about the Package-centric Methodology used by this solution→