How do you manage your Kubernetes? Whatever your answer, there’s a better way.
We’re all well aware that Kubernetes is designed for container scheduling, management, and orchestration, but what if you want to build a hybrid application which will run in a multi-cloud environment? Or need more than one Kubernetes cluster? How do you simplify instantiation and lifecycle management? Be stumped no more.
For these use cases, proper orchestration is needed – enter Cloudify. Cloudify provides infrastructure management capabilities such as instantiation, auto-healing, and auto-scaling. From a lifecycle management perspective, Kubernetes is just another ‘infrastructure’ that Cloudify is able to orchestrate – just like AWS, Google Cloud, Azure, OpenStack, or VMWare. Cloudify ensures your cloud-native applications can be deployed, healed, scaled, and managed on multiple clouds as well as non-containerized environments simultaneously.
Using Cloudify for Kubernetes, users can
- Create and delete resources hosted by a Kubernetes cluster
- Add new nodes to a cluster
- Orchestrate hybrid cloud scenarios with regular services and microservices in a single deployment
- Associate pods with particular nodes in your cluster, and more.
Users can leverage Cloudify as the infrastructure manager for K8s, granting the ability to scale and autoscale nodes natively, configure networking and load balancing, have storage, and compute customization with native multi-cloud support. The Kubernetes plugin also enables auto-scaling of nodes, Kubernetes management of infrastructure lifecycle, and an open infrastructure with native Kubernetes interface.
This is just the tip of the Iceberg – using Cloudify’s latest capabilities, you can perform advanced actions on your Kubernetes clusters that can’t be done anywhere else this easily.
Let’s start at the very beginning. There are many ways to deploy and configure a Kubernetes cluster, not to mention the different clouds to deploy it on. For these tasks Cloudify provides an extensive Marketplace, including different Kubernetes blueprints utilizing different cloud providers and deployment tools (E.g. Terraform, SpotOcean).
Inside the other tabs, you can find various blueprints that utilize the Kubernetes components, or rather, blueprints that can act as an infrastructure for creating the Kubernetes cluster.
Perhaps the best example is the Helm tab, which includes plenty of quick-deploy blueprints to easily manage and expand your Kubernetes cluster; those deployments can then be updated according to any day-2 operation needs. All while working smoothly with Helm SDK thanks to the robust Cloudify’s Helm plugin. Managing Kubernetes has never been easier.
Another great example is Terraform. As Kubernetes and Terraform-based environments tend to be highly distributed and dynamic, managing them through a static CI/CD pipeline requires constant maintenance to adapt to the changes in the underlying environments.
Along with the Kubernetes plugin, Cloudify can help Terraform users easily keep track of their various Terraform modules and manage them from top to bottom.
This, and Cloudify’s flawless integration with other IaC frameworks, allows users to avoid re-inventing the wheel and leverage existing resources and their automation regarding the tool they automated with.
That’s all nice and comfortable when you create a new Kubernetes environment, but what about your existing clusters? How can our platform bridge the gap between the common issue of migration? Even though Cloudify blueprints can be configured to utilize pre-existing clusters in your environment, we wanted to make the migration experience even smoother.
To close this gap we have the K8S Discovery tab, which can be found in the Blueprint Marketplace. This tab includes blueprints according to your cloud of choice which can easily scan your selected account and region to find existing K8S clusters.
Check out the Discovery docs and examples here.
In a nutshell, using Cloudify’s Kubernetes plugin will:
- Grant extended support for all Kubernetes platforms – including multiple authentication methods, resource state management, and dynamic API binding for all Kubernetes resources.
- Deliver built-in support for all major Kubernetes cluster infrastructure setups: OpenShift, KubeSpray, GKE, EKS, and AKS- on private and public clouds.
- Automate service deployment across multiple Kubernetes clusters and clouds.
- Deploy Kubespray clusters in any IaaS/ on bare metal, deploy OpenShift on AWS, and access full automation of GKE, EKS and ASK instantiations.
- Along with the Helm plugin package management for Kubernetes is done easily by utilizing properties from clusters exposed in your Manager.
- Discover existing K8S clusters across AWS, GCP, and Azure for quick migration to manage clusters via Cloudify.
- Utilize the extensive Marketplace catalog of Kubernetes installation and configuration methods, to easily deploy a Kubernetes cluster using Terraform, different clouds, and elevate different technologies like SpotOcean, or Disaster recovery services.
- Provide service & workflow monitoring for advanced Kubernetes Management UI. Automate deployment, configuration, and management tasks using rich workflow visualization.
- Bring home CI/CD Integration via a built-in Jenkins plugin that automates deployments across development, production, and clusters/ namespaces under one common CI/CD pipeline.
- Deliver ONE automation platform, giving users interoperability between Kubernetes and non-Kubernetes services …and between clusters. Finally, users can avoid costly blueprint transformation, easily connect and manage orchestration platforms and enjoy end-to-end service automation.
Want to learn even more about Cloudify for Kubernetes?
Check out the Kubernetes Plugin docs here
Looking for a practical example first? Check this out