The Cloud Experience Everywhere
1829913 Members
1479 Online
109993 Solutions
New Article
ServicesExperts

GitOps everywhere: Leverage modern cloud-native toolchains in a traditional IT environment

Cloud-native toolchains allow for faster delivery of value to your customers. That’s why it’s important for traditional IT to leverage and modernize delivery methods to compete and stay ahead of the curve.

By Guillermo Ramirez Garcia, Chief Solution Architect, Cloud Native Computing Practice Area, HPE Pointnext Services

HPE-Pointnext-Services-technology-consulting-services-cloud-native.pngThe rapid development and adoption of cloud-native stacks brings a better developer experience and improved security and reproducibility, while increasing the speed at which organizations deliver value. These stacks are leaving more traditional stacks behind. As a result, there is increasing pressure from the markets, organizations and developers to bring traditional stacks into the modern era.

Organizations often wonder whether the same techniques and toolchains of the modern stacks can be used to configure not-so-modern applications or infrastructures.

The answer is yes.

But how can IT leaders help their organizations to adopt these modern techniques and toolchains?

For example, the competitive landscape of tools and services that surrounds the major DevOps tools has made them simple to integrate with any modern stack, more often than not with a simple click. These tools and services provide out-of-the-box functionality that can be leveraged not only for developing new offerings for customers but also by your operations teams (e.g. monitoring, tracing, backup, etc).

The goal of these tools is to make software development projects easy to deploy, easy to configure, pluggable, and as self-described as possible. They achieve this by leveraging source control systems and CI/CD pipelines to reduce the complexity between a change being made and production deployment.

Our goal is to leverage the same procedure.

However, what happens with applications and infrastructure that weren’t designed in such a way? Can they still leverage a modern approach? Yes. Using GitOps.

GitOps is a way to implement continuous deployment toolchains for your applications/infrastructure, and it focuses on 3 main areas:

  1. Developer-centric experience
  2. Infrastructure as code (IaC), storing the state of your applications/infrastructure as configuration files (see What is Infrastructure as Code?)
  3. Reconciliation loops that make the desired state of your infrastructure as code match what’s deployed.

HPE-Pointnext-Services-GitOps-Image-1.png

 

And that’s it! At its core, a modern GitOps toolchain consists of these 3 steps, which can be easily translated to any environment.

Now it’s easy to picture how an application/infrastructure can be modernized with GitOps.

Developer-centric experience

Developers can leverage their tooling and workflows to keep pushing changes to Git repositories, using all or any Git workflows they are familiar with.

Infrastructure as code

Now the state of your application/infrastructure is defined as configuration and stored in Git; some capabilities are starting to become more accessible:

  1. Easy and fast error recovery. You can always redeploy to a known working state.
  2. Self-documented deployments. Your configuration is your deployment; unknown states coming from manual changes are minimized,
  3. Redeployment in new environments is easier and can be automated.
  4. Immutable application/infrastructure deployments.
  5. Each commit is a deployment; each commit is value delivered.

Reconciliation tools

Reconciliation tools take the desired state from Git and make sure it matches your environment. These tools work mainly in two paradigms:

  1. Declarative infrastructure as code
  2. Imperative infrastructure as code

Choosing declarative or imperative definitions for your infrastructure as code is, more often than not, dictated by your organization and/or team.

For example:

  1. Declarative IaC can use a tool like Argo CD to deploy and keep your environment synchronized in a single step using a reconciliatory loop. In this example, Argo CD will ensure that your environment is always in the desired state by observing both the desired state of your IaC and what’s currently deployed.
 
  1. Imperative IaC can use Jenkins to execute an Ansible playbook every time a commit is pushed to your Git repository, or periodically. Even though this is a more traditional approach, it can simulate a reconciliatory loop and give you the same result in your environment.
 

HPE-Pointnext-Services-GitOps-Image-3.png

 

Why is GitOps important and what value does it bring to my organization?

Automation is a competency that any organization must master to bring order to this chaotic landscape. Once the right people, code, and tools are in place, new automation opportunities to modernize start to become more apparent to the organization. GitOps is just one of the ways to ensure control and confidence over how, when, and what you deliver.

FAQs

  1. Is my organization ready for GitOps? In short, most probably yes.
  2. Do I need specific tooling to modernize our current infrastructure? No, Using GitOps doesn’t mean using a specific set of tools; it is a framework for automation best practices.
  3. Can HPE Pointnext Services help me modernize our current infrastructure? Definitely yes.

HPE Pointnext Services can help you to modernize from applications to infrastructure with modern frameworks to help you bring value faster, more reliably, and more confidently to your customers.

Read about the HPE Cloud-Native Software Development service: Accelerating Innovation in the Cloud.

Learn more about Cloud Consulting Services from HPE Pointnext Services.

Guillermo Ramirez Garcia.jpgGuillermo Ramirez Garcia joined HPE in 2014 to help advance the development and adoption not only of OpenStack but Open Source in general in the enterprise area. Since then he has had hands-on experience in the development of OpenStack components as a core developer for Freezer, a backup, restore and DR solution for OpenStack. He also has experience in the delivery of OpenStack infrastructure for private clouds in telcos, banks, host providers and many more enterprises worldwide, and in the planning and delivery of proof-of-concepts for customers interested in these technologies.

Guillermo also has hands-on experience designing automation and monitoring infrastructure for private clouds, as well as the onboarding and operation of application workloads on private clouds. He is currently working as an Open and Private Cloud Technology Lead, helping teams deliver OpenStack and Kubernetes infrastructures to customers worldwide as well as providing enterprise-ready solution designs that can be leveraged by the extended team in future engagements.


Services Experts
Hewlett Packard Enterprise

twitter.com/HPE_Pointnext
linkedin.com/showcase/hpe-pointnext-services/
hpe.com/pointnext

 

About the Author

ServicesExperts

HPE Services Team experts share their insights on the topics and technologies that matter most for your business.