Gitlab-ci runners on k8s


We are using as our codebase, and we want to start using the gitlab CI/CD instead of jenkins.
Following your docs, we decided to use gitlab runners on our EKS cluster for running the CI/CD pipelines. We installed with your gitlab-runner helm chart the runner on our EKS cluster, and it’s registered as needed and we can run jobs on it as needed.

My question is, how does the connection between to the runner is happening? when a push happens to some test repo, and .gitlab-ci.yml file telling to trigger a job, how does can connect to my gitlab-runner, which is in EKS cluster, and don’t have any service/ingress exposing it to the world? I didn’t added my EKS cluster to gitlab(didn’t added the API + CA + SA token), so how it knows to connect to my EKS cluster and tell my gitlab-runner pod to spin some new build pod?

I think the runners talk to, not the other way around. So your runners don’t need to be public in order to receive jobs. Instead they “ask” for jobs.

1 Like