Over time Kubernetes has become the de facto container orchestration technology in the DevOps world. However, Kubernetes is notoriously difficult to set up and manage bare-metal. This challenge has led to a number of companies creating Kubernetes management solutions with a wide variety of applications. With the wealth of different options available, it can be extremely challenging to find the solution that fits your organization and needs. This article compares two products with very approaches to managing Kubernetes: Google Cloud Platform Anthos and Red Hat OpenShift.

Anthos

Brass Tacks

    • A hybrid-cloud tool: designed for managing multiple GKE clusters at scale across multiple environments. Can be run on GCP, AWS, Azure, or on prem. Tagline is “Application Modernization platform. Let’s you write applications and run them anywhere”
    • Single pane of glass for managing multiple clusters.
    • Anthos Config Management for configuration management/policy enforcement. Applies codified policies/configuration (via standard Kubernetes yaml files)
    • Anthos GKE – GKE clusters managed by Anthos across multiple environments. GKE is very close to bare metal Kubernetes and can be easily portable to other Kubernetes environments without complex migrations.
      • For Example, migrating from AWS ECS to Kubernetes would require a complex migration as it is a fundamentally different paradigm, even with following gitops principles. Whereas moving a GKE cluster to an Amazon EKS cluster would simply mean applying a codified Kubernetes configuration with some relatively minor overhead.
    • Anthos Service Mesh – tool based on Istio to aid with service management. To help with the increasing complexity of networking within containerized environments and microservices. Microservices are grouped, and a service mesh helps monitor traffic throughout, along with other features such as policy enforcement.
    • GCP config Connector – A service that translates GCP service APIs (IE Cloud SQL or PubSub) into Kubernetes-native APIs so that they can be treated as part of the environment and deployed as such.

Bells and whistles

    • Cloud Run for Anthos – Serverless platform on Anthos based on Knative. Allows developers to not have to worry about infrastructure and integrates with other non-serverless Kubernetes services.

Helpful Links:

OpenShift

Brass Tacks

    • A Kubernetes Container platform: Openshift is a layer on top of Kubernetes meant to simplify the management of Kubernetes and containerized workflows. It’s purpose is to get developers’ code up and running quickly without as much complexity in setting up things like CI/CD pipelines, Docker registries, etc.
    • An out of the box container solution with many common tools that are often used for Kubernetes Clusters: Ansible, Jenkins, Istio, etc.
    • Very Opinionated. Openshift has a very specific and relatively inflexible methodology. You have to play by it’s rules. This can severely limit it’s flexibility and it’s uses.
    • Aimed at smaller teams who don’t have the time to setup a workflow for Kubernetes, but want to realize the benefits of Kubernetes.
    • Very simple deployment process. “Click of a button” is the phrase often used in Openshift’s marketing.
    • Multi-cluster option added after-the-fact with Red Hat Advanced Cluster Management.

Helpful Links

Comparisons

    • Comparing OpenShift and Anthos is a bit of an Apples-to-Oranges Comparison. OpenShift is an out-of-the-box, opinionated Kubernetes solution, whereas Anthos is a Hybrid cloud solution for Kubernetes.
    • OpenShift is great for those small teams who want some of the benefits of containerization, Kubernetes, and automation without having to set up several different systems. However this comes at the sacrifice of flexibility, portability, and potentially scalability.
    • Anthos is a management layer on top of GKE, which is Google’s managed Kubernetes service. GKE is a very thin layer on top of Kubernetes and essentially bare-metal Kubernetes minus the setup. With access to kubectl and other tools. This paradigm allows clusters in GKE to be easily moved to other environments or clouds that support Kubernetes.
    • The extensions to GKE that Anthos provide allow ease of managing multiple Kubernetes clusters across a wide variety of environments, on-prem or in cloud. Anthos Configuration Manager is useful for applying configurations to multiple Kubernetes clusters.
    • GKE and Anthos do not come bundled with any CICD tools, however they support most standard tools (GitLab, Jenkins, etc.).
    • Generally, Anthos and GKE are far less opinionated than OpenShift. There are some tools bundled in for logging and other purposes as well as many add-ons like Cloud Run, but some tools will need to be added. This allows much greater flexibility at the cost of having to set them up.

Conclusion

If your team is small and you have a need for an immediate, out-of-the box workflow for Kubernetes, OpenShift can provide that. However, for other enterprises with larger needs, and existing CI/CD flows that don’t need to be replaced, Anthos might be a better option. Anthos’ strength is it’s flexibility and can be integrated into many environments easily, although it is most at home in a hybrid cloud solution.