Home Explore Blog CI



kubernetes

2nd chunk of `content/en/blog/_posts/2016-09-00-Deploying-To-Multiple-Kubernetes-With-Kit.md`
1402e384b9c3c57d6bb21aea6b333e9c9cd3ec35525788f40000000100000988
](https://raw.githubusercontent.com/InVisionApp/kit/master/media/kit-logo-horz-sm.png)

[kit](https://github.com/InVisionApp/kit) is a suite of components that, when plugged into your CI/CD system and source control, allows you to continuously deploy updates (or entirely new services!) to as many clusters as needed, all leveraging webhooks and without having to host an external service.  

Using kit’s templating format, you can define your service files once and have them reused across multiple clusters. It works by building on top of your usual Kubernetes manifest files allowing them to be defined once and then reused across clusters by only defining the unique configuration needed for that specific cluster. This allows you to easily build the orchestration for your application and deploy it to as many clusters as needed. It also allows the ability to group variations of your application so you could have clusters that run the “development” version of your application while others run the “production” version and so on.  

Developers simply commit code to their branches as normal and kit deploys to all clusters running that service. Kit then manages updating the image and tag that is used for a given service directly to the repository containing all your kit manifest templates. This means any and all changes to your clusters, from environment variables, or configurations to image updates are all tracked under source control history providing you with an audit trail for every cluster you have.  

We made all of this Open Source so you can [check out the kit repo](https://github.com/InVisionApp/kit)!  

**Is kit Right For Us?**  

If you are running Kubernetes across several clusters (or namespaces) all needing to continuously deploy, you bet! Because using kit doesn’t require hosting any external server, your team can leverage the webhooks you probably already have with github and your CI/CD system to get started. From there you create a repo to host your Kubernetes manifest files which tells what services are deployed to which clusters. Complexity of these files is greatly simplified thanks to kit’s templating engine.The kit-image-deployer component is incorporated into the CI/CD process and whenever a developer commits code to master and the build passes, it’s automatically deployed to all configured clusters.  

Title: kit Details: Multi-Cluster Deployment Tool
Summary
kit is a suite of components designed to integrate with CI/CD systems and source control, enabling continuous deployments to multiple Kubernetes clusters. It uses a templating format to reuse service definitions across clusters, only requiring unique configurations for each. By managing image and tag updates in the repository containing the manifest templates, all changes are tracked under source control, providing an audit trail. It's suitable for teams managing deployments across several Kubernetes clusters or namespaces, leveraging existing webhooks and CI/CD systems.