How to connect Gitlab project to Kubernetes cluster?

August 6, 2019 548 views
Kubernetes Git Development

I want to connect my Gitlab project with a Kubernetes cluster.

Basically I want to try to create my first CI/CD pipeline.

2 Answers
bobbyiliev MOD August 6, 2019
Accepted Answer

Hello,

With GitLab this is quite straight forward to do.

Prerequisites:

  • Deploy a K8s cluster on DigitalOcean. If you do not have that already, here’s how to do it:

https://www.digitalocean.com/docs/kubernetes/how-to/create-clusters/

  • Follow the instructions on how to install kubectl and connect to the cluster. You can follow the steps here:

https://www.digitalocean.com/docs/kubernetes/how-to/connect-to-cluster/

  • Create an account with Gitlab.com

  • Create your GitLab project

Once you have all that ready, you could follow the steps on the official GitLab website, they have really good documentation on how to add an existing Kubernetes cluster to your project:

https://docs.gitlab.com/ee/user/project/clusters/#add-existing-kubernetes-cluster

The best thing is that once you’ve added the cluster, you can just install applications like Helm Tiller and Prometheus, directly via your GitLab interface with just one click.

Hope that this helps!
Regards,
Bobby

  • Create a gitlab-admin serviceaccount.
  • Create the gitlab-admin cluster role binding with RBAC authorization.
  • Get the gitlab-admin secret you just created in the kube-system namespace, and take the token out. This will be used as your TOKEN.
  • Get your project’s namespace’s default token secret and extract the certificate. This will be your CA.
  • Get your cluster’s public URL (which could be an IP address). This will be your API URL.
  • Your project’s namespace (which has to be unique — and not default) will be your NAMESPACE.
  • Now connect your cluster through the GitLab Kubernetes portal.
edited by MattIPv4
Have another answer? Share your knowledge.