What is DevOps? DevOps is more than a series of tools or automation. It’s a culture. DevOps breaks down traditional silos and departments through the intersection of core methodologies that the industry is built upon – automation, collaboration, integration and communication.
DevOps allows a company to react quickly to customer demand and achieve a faster speed-to-market, enabling continual release and adjustment cycles by implementing Agile methodologies. DevOps drills down to a culture whose core focus is working towards achieving company goals, not just the task at hand.
Improve quality and ensure precision while saving resources.
Achieve accountability, openness and quality assurance.
Dedicate the right resources to the right tasks for the right results.
Communicate, collaborate and cultivate success.
At CenturyLink we take a unique approach that delivers a comprehensive set of cloud services on an enterprise-grade platform. IT Ops and DevOps can maximize efficiencies by deploying IT solutions on a single platform that brings IaaS, PaaS, automation, orchestration and other fabric services together in a secure, isolated environment running in a secure multi-tenant cloud. This capability allows both cloud services to be managed from a central point of control with a single interface for SLAs and administration.
Automation takes on a whole new shape with Runner, which easily automates and orchestrates complex IT solutions across multiple environments – on CenturyLink Cloud, other cloud platforms, on-prem and external data centers. Runner leverages the power and functionality of Ansible, and exposes it to integrate cloud and on-premise connectivity. It is state-based and idempotent, so you get the same result every time you run a job.
Infrastructure automation tool Runner enables developers to quickly provision, interact with, and modify IT environments, regardless of where they reside. You can manage environments residing on the CenturyLink Cloud Platform or third-party clouds like Amazon, Google, and Azure, as well as on-premise infrastructure and servers in remote data center. The service brings together state-based and parallel job execution with multi-cloud and multi-data center execution, all in one powerful engine. This is an ideal tool for enabling DevOps environments where agility is key to maintaining a fluid process.
Learn more about Runner to accelerate DevOps.
With Kubernetes and Docker on CenturyLink Cloud, organizations of any size can obtain the same benefits of powerful development processes, tools and systems used by technology giants to stay on the leading edge. With a simple-to-use Blueprint, you can deploy Kubernetes clusters and Docker containers on both virtual machines and physical servers.
Kubernetes and Docker are a natural fit for the culture of DevOps. Docker provides a clear deliverable for software development while allowing operations to focus on the environment outside the container. Kubernetes simplifies operations by providing a declarative, automated platform to take your application from development all the way to production.
Developers can reap the benefits of packing applications in Docker containers while also leveraging the developer-oriented features inside of Kubernetes. It provides an integrated way to perform rolling updates, blue/green deployments, A/B testing and canary deployments. In addition to the Docker toolchain, you have access to many tools with built-in Kubernetes support: OpenShift, Jenkins, Fabric8, Deis and more.
Used in concert, Docker and Kubernetes on CenturyLink Cloud increase the agility and efficiency of DevOps teams by offering an ideal platform for continuous integration and continuous deployment approach. Using Docker as the build and deployment artifact, organizations gain a portable and sharable package. Additionally, Kubernetes provides integrated deployment options, as well as a fully-automated production platform.
The Docker File acts as a contract of sorts between Development and Operations teams. Development ensures that the app inside the container functions as desired, while Ops ensures the environment within which the container is deployed provides the desired characteristics. And thanks to the declarative nature of Kubernetes, engineers define the desired service parameters (e.g. number of container replicas, resource utilization, auto scaling and load balancing using JSON or YAML files) and rely on Kibernetes to ensure that the running state meets the desired state.
Chef turns infrastructure into code. With Chef you can automate how you build, deploy, and manage your infrastructure. Your infrastructure becomes as versionable, testable, and repeatable as application code.
GitHub is the largest web-based, distributed revision control system that functions as a source hosting service. GitHub integrates source code management (SCM) while providing graphic-based web applications to go beyond strictly command-line capabilities – increasing its flexibility and effectiveness to stay on top of bugs. GitHub is a functional service that enables collaboration-based features that rely on speed, data accuracy and support for integrated issue tracking.
“Forking” a Repo is a GitHub native functionality that enables a user to create a new project based off of an existing repo in GitHub. This feature encourages the further development of programs, especially open source projects. If a user finds a project on GitHub that they would like to contribute to, that user can fork the repo, make the appropriate changes, and release the revised project as a new repo.
Pull requests let users tell others about changes pushed to a repository on GitHub. Once a pull request is sent, interested parties can review the set of changes, discuss potential modifications, and even push follow-up commits if necessary.
Social networking within GitHub is a powerful feature. The ease of communication is a major contributing factor that allows projects to grow. Each user on GitHub has their own profile, which can act like a resume of sorts, showing past work and contributions to other projects via pull requests.
Frequently, multiple developers simultaneously work on a project, which can make keeping track of changes made and by whom difficult. GitHub takes care of this problem by tracking all changes that have been pushed to the repository.
GitHub provides users with help documentation that enables users to learn more about the functionality of the service, enhance automation processes, track issues, review code, publish feedback and integrate tools and applications to build better software.