The CenturyLink Cloud Platform offers users plenty of versatility and control regarding different deployment methodologies all under one umbrella, with a host of services, products, and features -- notably AppFog. In this article, we recap three topics, and the accompanying documentation and articles, that showcase AppFog's integration with different deployment methods and strategies; we invite you to read on and learn more!
Using AppFog and the 12-Factor Apps Methodology
First, let's discuss the 12-Factor App methodology in relation to CenturyLink Cloud's AppFog, a product that can easily leverage this methodology within the Software-as-a-Service (SaaS) world. The above article illustrates the development of a malleable and living outline for creating highly-organized, scalable applications known as the “12-Factor App” methodology. This approach positively changes the manner in which developers view their specific application architecture.
The application deployment process can be a laborious and time-consuming task; especially when considerations like networking, automation, virtualization, testing, and establishing runtime environments are key factors. By using the 12-Factor App methodology with the CenturyLink Cloud platform's products and services, users can organize and reduce the complexity of the deployment process.
The main takeaway from the previously mentioned article is an understanding of how to apply the 12-Factor App principles and standards while using a tool like CenturyLink's AppFog, which allows developers to create software with less worry centered on the application infrastructure. Additionally, the article spells out how the 12-Factor App Methodology functions as an invaluable blueprint for developers to use as an excellent step-by-step process (with corresponding standards) en route to deploying reliable SaaS products.
How to Set Up a Blue-Green Deployment Methodology with AppFog
Creating a large-scale web app is a multi-step exercise, which is detailed here. The deployment step is usually one of the most critical executions in the process. It's important to understand the situational needs of a Blue-Green deployment with AppFog. A non-negotiable element for a good deployment strategy is making sure processes are less complicated and more streamlined for developers and engineers. As such, the Blue-Green deployment methodology provided by AppFog may be a viable solution.
What's great about AppFog is that the team at CenturyLink Cloud understands the importance of having a strong framework to support the maintenance and scalability of applications. Using AppFog makes run time environments, load balancing, and reporting less time-consuming facets of the process. The reality is that devs and engineers need to ship code quickly, and their staging and production environments must ensure that deployment is virtually flawless to avoid causing problems for users or accruing significant downtime.
The Blue-Green deployment article really delves into automated deployment ("the cutover") -- pushing software from a testing environment to a live, production environment. Naturally, that cutover needs to happen smoothly and with minimal downtime, which is where a Blue-Green deployment strategy plays to its strengths. This method maximizes the chances of safe deployments, since an application has two independent production environments that are as close to identical as possible. The article also depicts how Blue-Green Deployments work -- at any point in time, one environment is live, while the other receives no user traffic (in other words: when the ‘Blue’ environment is live, the pre-deployment testing takes place on the ‘Green’ environment). When a test passes on the Green environment, an admin can reroute traffic from the Blue environment to the Green environment, which will now have updated, QA tested, and approved code.
By taking readers through the Centurylink Control Portal, the article shows how a Blue-Green deployment strategy allows for immediate rollbacks if an error is detected in the live environment (recall that users can reroute traffic to whichever of the two independent and identical production environments is inactive).
How to Set-up a Rails App with CenturyLink’s AppFog and Bare Metal
Another topic worth exploring is setting-up a Rails app with CenturyLink Cloud's AppFog on its Bare Metal servers. There is a helpful Knowledge base article that details how to set up and deploy a Rails app with AppFog. With CenturyLink Cloud's Bare Metal offering, we can take that one step further by deploying a simple Rails app on the provisioned Bare Metal servers. One of the main benefits of using a Bare Metal server is that it fills the void of virtual machines (VMs) and on-premise, dedicated physical servers within the cloud. In essence, customers have the security and seclusion of a physical server with the scalability and provisioning capabilities of a shared VM.
Deploying a Rails app on a Bare Metal server can be done in different ways, however, it's helpful to think about all deployments from an architectural perspective. Creating separate repository and application servers when deploying makes sense from an architectural perspective, and since CenturyLink Cloud's PaaS offering, AppFog, is similar to Heroku, it's logical to move the Rails application to the Bare metal servers with AppFog. This is done by moving an application database to PostgreSQL and then creating the PostgreSQL on a Bare Metal server. All of the deployments and provisioning can be easily done through the CenturyLink Cloud UI, which makes the process even simpler. Users can deploy two separate Bare Metal servers (one for the repository and one for the application), install PostgreSQL on the database server, and then set up a Rails application on each server using AppFog. In some instances, mainly for learning purposes, users could provision a public IP with the UI, but this is not the most secure method (so make sure this is done in a staging environment, NOT a production environment). Be sure to check the CenturyLink Cloud knowledge base for more requirements and information.
Deploying Rails with AppFog, and even setting up separate servers, provides a foundational understanding of what the Century Cloud platform can do, but there are other many other ways to utilize CenturyLink Cloud offerings. For example, customers can use the CenturyLink Cloud API to provision and manipulate Bare Metal servers. Be sure to explore all the options here.
In all three of these articles, the straightforward approach, database configuration procedures, AppFog considerations, and migration and deployment details are easy to follow and showcase the CenturyLink Cloud Platform's wide array of cloud-based hosting products and services. Check back soon to catch a deeper delve into each of these subjects as they relate to our Cloud Platform.