How Codefresh supports Kubernetes clusters
Codefresh is one of the few CI/CD solutions that has native support for Kubernetes clusters, not only for deploying applications to them, but also running pipelines on Kubernetes.
Codefresh has native support for Kubernetes in the following areas:
- Connecting a cluster globally
- Viewing the cluster status
- Viewing the environment dashboard
- Deploying to a cluster with the GUI
- Deploying to a cluster with a pipeline
- Running pipelines on a cluster
Connecting a Kubernetes cluster to Codefresh
Like all other Codefresh integrations, Kubernetes clusters are connected once on an Account level. You can add a cluster from a specific cloud provider or a “generic” cluster for any compliant cluster:
Once you connect a cluster it gets a unique name inside your account that is important when it comes to using this cluster inside a pipeline. From the same screen you can also connect internal clusters that are behind your firewall .
Viewing the Codefresh cluster dashboard
After you connect a cluster, several graphical dashboards are automatically populated. The first one is the Codefresh Kubernetes dashboard.
You can use this Dashboard to get basic information for your cluster such such as services, pods, deployments etc.
From the same dashboard you can also add/change configmaps and even edit directly the manifest of a resource.
Viewing the environment dashboard
The second dashboard that is enabled after you connect a cluster (but not automatically populated) is the environment dashboard.
This dashboard shows a live view of a Kubernetes application along with the status of the latest builds that affected this environment. You can define such environments either directly from the GUI or programmatically in a pipeline.
Ad-hoc deployments with the Codefresh GUI
You can also create a Pull Secret from the GUI.
Automated deployments with Codefresh pipelines
You can also deploy to a cluster in a pipeline. Codefresh offers several ways for Kubernetes deployments. The important point here is that all connected clusters are automatically available to all pipelines with their unique name as a
Using a cluster for running CI/CD pipelines
Finally you can also use the Codefresh Runner to run pipelines in your cluster.