Banzai Cloud is now part of Cisco

Banzai Cloud Logo Close
Home Products Benefits Blog Company Contact

Bring your own Kubernetes to Pipeline for Day 2 operations

Author Janos Matyas

The content of this page hasn't been updated for years and might refer to discontinued products and projects.

Two weeks ago we announced, the tech preview for Banzai Cloud Pipeline 2.0, the hybrid any-cloud platform. That new platform allows customers to build hybrid Kubernetes clusters in four different ways, across 5 cloud providers and on-premise datacenters and introduces a new acronym: BYOK, Bring your own Kubernetes!

BYOK

Day 2 operations 🔗︎

Kubernetes has changed how workloads are run by providing a convenient abstraction layer over infrastructure. While many of our customers use Pipeline to create all their clusters, and want to kickstart their Day 0 and Day 1 experiences, others want to reuse the clusters that they have already deployed.

Day 0 refers to defining requirements, laying down key architectural building blocks, and is the first step towards Kubernetes adoption. Day 1 is the more tangible phase of installation, setup and K8s configuration.

While Banzai Cloud Pipeline and PKE offers an opinionated production ready hybrid cloud container management platform and Kubernetes distribution to speed up Day 0 and Day 1 operations, it’s the Day 2 capabilities that bring huge differentiating value to our customers.

Day 2 usually involves maintenance, optimization, housekeeping, continuous improvement, backup and restoration, as well as auditing and monitoring of the (single, multi or hybrid) Kubernetes platform. These features are all part of Pipeline’s new integrated cluster services, and can be added into any Kubernetes cluster, not just ones provisioned with Pipeline.

Note that Pipeline supports provisioning Kubernetes clusters on bare metal, VMware, Amazon, Azure, and Google cloud using either cloud provider-managed K8s, or our own CNCF-certified Kubernetes distribution, PKE

If you’d like to read more about our new integrated cluster services, please check out our Introducing the DNS integrated service for Pipeline clusters blog post.

Bring your own Kubernetes 🔗︎

Developers often adopt Kubernetes before their organization’s has choosen a specific Kubernetes distribution, and, with Pipeline, there had been a demand to support (and preserve the already existing investment in) bringing your own Kubernetes.

Our aim had been to make the import process extremely easy to do. First, you need to install the Banzai CLI.

Once you have the CLI installed, log in to Pipeline, and have your Kubeconfig available.

You will then need to run the following command:

banzai cluster import --kubeconfig=mykubeconfig.yaml --name=mycluster

You can also extract the Kubeconfig from your current kubectl context. Simply run banzai cluster import --magic for this.

Wait, that’s it? Yes, because your cluster will be brought under the management of Pipeline. At this point you can add all the integrated cluster services we’ve introduced so far through the UI, CLI or API. These are services like federated monitoring, centralized log collection, Vault based security, DNS management, service meshes, disaster recovery, security scans and lots more.

You can check the import’s status with banzai cluster get mycluster.

Once the cluster is ready, you can use the Banzai shell. banzai cluster shell executes a shell within the context of a selected cluster. If you type a command in the open shell, or pass it as arguments, it will be executed in a prepared environment. For example, you can list the nodes of the cluster using the original kubectl command:

banzai cluster shell -- kubectl get nodes

Add an integrated cluster service to a BYOK 🔗︎

Once you’ve installed a vanilla Kubernetes cluster, you can turn on integrated cluster services to help support enterprise requirements. For instance, let’s do this with monitoring.

In the shell of your choice, run the following command:

banzai cluster service monitoring activate

and complete the interactive wizard, or specify the options in a file or on standard input:

banzai cluster service monitoring activate --file - <<EOF
{
  "prometheus": {
      "enabled": true,
      "storage": {
          "size": 1000,
          "retention": "10d"
      }
  },
  "exporters": {
      "enabled": true,
      "nodeExporter": {
          "enabled": true
      },
      "kubeStateMetrics": {
          "enabled": true
      }
  }
}
EOF
The result will be the following.

Monitoring

If you’d like to deactivate the service, run the following command:

banzai cluster service monitoring deactivate

Wrap up 🔗︎

There are increasing number of integrated cluster services available in the Pipeline platform, so please check our free developer service to try some, or follow along in the appropriate documentation.

Not all of the advanced features in Pipeline are available when you bring your own Kubernetes (some require in-depth knowledge of the underlying infrastructure, which is available only for clusters provisioned with Pipeline). We are, however, constantly working to increase the list of integrated services we provide, and to widen our customers’ options when choosing a Kubernetes based container management platform.