Organizations are modernizing their application development, focusing on microservices and applications that are transforming their industries. As they differentiate their offerings and services, they constantly strive to build new innovative processes faster, automating workflows, and scaling solutions. By taking advantage of open source tools, developers are building new business use cases and incorporating distributed, event-driven architectures that help automate workflows.
But it’s difficult to deliver consistency. Whenever a component or service changes, there is a risk of the workflow breaking down. Even after a solution is built, it lacks scalability, there’s no way to keep deployments in sync, and modifications to support new projects require a complete rebuild. Typical reference architectures are point-in-time snapshots of a solution that don’t evolve with software updates, and changes in software versions or introducing new processes into an architecture may cause the system to break. New workflow patterns are not repeatable and it is typically difficult to extend the pattern to multiple locations or at the edge.
One way to overcome some of these challenges is to design and build your workflow with GitOps. Blueprints are built into code, so parts of the solution are built, deployed, and maintained together. And since the pattern is now reproducible, it can be scaled as required, both within a core data center or public cloud and out to multiple edge locations.
Red Hat Validated Patterns
Red Hat works with customers, partners and the community to help build industry use case patterns and we deliver a framework that developers can use, contribute to, and modify. For solution architects and developers, this accelerates their own distributed architecture builds, and we demonstrate how our use of GitOps in these patterns provides repeatability, scalability and extensibility.
Moving more data processing and analytics to the edge can significantly accelerate many use cases. For example, ingesting images at a clinical edge location and building a detection workflow can help accelerate diagnoses. Industrial machine specification monitoring based on sensor data can facilitate predictive maintenance.
Red Hat Validated Patterns are detailed deployment blueprints created for extended edge use cases. These predefined edge computing configurations bring together Kubernetes and other open source tools, such as ArgoCD, Kafka, Ceph, Knative and others to help organizations deliver edge architectures faster. Best of all, because they are operationalized, they can be deployed and maintained repeatedly.
Solution architects, developers, and data engineers gain insights on how to build distributed workflows based on Kubernetes. They see how patterns can be built and maintained over time, and see some real-world examples of patterns and code that have been developed.
Our solution patterns, to date, have been built with GitOps, but what about those devices that don’t currently run Red Hat OpenShift? How do organizations incorporate patterns in edge environments where some devices may not fully or even partially embrace the GitOps philosophy? Also, Virtual Machines (VMs) and other devices may be better served by being automated with Red Hat Ansible Automation Platform. The Ansible Edge GitOps pattern explores some of the possibilities of using an OpenShift-based Ansible Automation Platform deployment to manage edge devices. This pattern is based on work done with a partner in the chemical manufacturing industry, although we have seen many other opportunities ranging from retail to research.
Effective cloud-native DevSecOps includes securing both the platform and the applications deployed to the platform. Securing the deployed applications also requires securing the supply chain. Not all applications are developed in-house. Confidence in external applications and technologies is critical.
In this pattern, we demonstrate a horizontal solution for multi-cluster DevSecOps use cases. We include CI/CD pipelines with security gates; image scanning, signing and storage in a registry; and deployment to clusters that provide advanced security monitoring and alerting.
How do I get started?
Community Hybrid Cloud Patterns is where it all begins. We look for novel customer use cases, create an open source demonstration of the use case, validate the pattern with its components with the relevant product engineering teams, and create GitOps based automation to make them easily repeatable and extendable. Users are encouraged to contribute and modify the pattern for their own specific application, or use the frameworks and fork existing patterns to create their own. Here, we have great collaboration across Red Hat engineering teams, as well as customers, the community and partners. Once a Community Pattern has been fully developed and tested, it becomes a candidate for a Validated Pattern. Architects and developers are able to engage with Community Patterns here: https://hybrid-cloud-patterns.io/
Validated Patterns are operationalized distributed event-driven architectures that are based on fully developed Community Patterns. Example application code is provided as a demonstration along with the various open source projects and Red Hat products required for the deployment to work. By automating the patterns, the solution includes Continuous Integration (CI), with triggers for new product versions (including betas), so that Red Hat proactively finds and fixes breakage to avoid bit-rot. Patterns are maintained with quick-start deployment instructions for solution architects and developers at: https://redhat-gitops-patterns.io/
Over the coming months, you can expect to see additional patterns and application integration in the Community Patterns. In addition to the Community Patterns we have delivered, we are actively working with partners, showcasing new, novel use cases. You can contribute or fork these patterns from this repository. As we continue to operationalize and build a pipeline for these patterns, they will be promoted to the Validated Pattern repository. As such, you can expect to see new Validated Patterns based on the Ansible Edge and Secure Supply Chain patterns in the near future. Keep an eye on our blog for relevant new posts and please contribute! Try out our patterns for yourself, and please engage with us as you have interesting ideas to enhance or create new patterns.
About the author
Michael St-Jean is a Technical Alliance executive focused on building joint solutions with partners that accelerate time to value for organizations' strategic technology initiatives. For over two decades, Michael has worked with cross-functional teams helping organizations solve complex business challenges with innovative technology solutions and strategies.