Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Appearance settings
Discussion options

I had deployed actions runner controller
(oci://ghcr.io/actions/actions-runner-controller-charts/gha-runner-scale-set-controller) in Namespace1 & then multiple scale set helm charts (oci://ghcr.io/actions/actions-runner-controller-charts/gha-runner-scale-set) ,each scaleset attached to different runner group on github.com side) in Namespace1.
It is working fine . Also for scale-set-controller , I have set

flags:
    watchSingleNamespace: Namespace1

So far so good. controller & listener pods are running in Namespace1 , ephemeral runner pods gets launched when I trigger GH workflow targeted to relevant labels/runner group etc.

Now I want to replicate this setup (action runner setup) for GHES (Github enterprise server, aka on-prem github) in same K8 cluster . So I am installing again actions runner controller (oci://ghcr.io/actions/actions-runner-controller-charts/gha-runner-scale-set-controller) this time in Namespace2 , setting

flags:
    watchSingleNamespace: Namespace2

& then multiple scale set helm charts oci://ghcr.io/actions/actions-runner-controller-charts/gha-runner-scale-set (each attached to different runner group on GHES side) in Namespace2 .

Here I see in Namespace2 controller pod gets launched , but listener pods don't come up in Namespace2. Because of this , ephemeral runners/listeners are not getting registered to GHES.

I am wondering if I am doing right thing ? OR I should stick with only one actions runner controller in Namespace1( also remove watchSingleNamespace: Namespace1) & then install multiple scale set helm charts in diff namespaces (let's say some scalesets in Namespace2 attached github.com runner groups , some in Namespace3 attached to GHES runner groups) etc ?

All I wanted to know if we can have multiple actions runner controller helm charts (i.e (oci://ghcr.io/actions/actions-runner-controller-charts/gha-runner-scale-set-controller) in single K8 cluster ?

You must be logged in to vote

Replies: 1 comment · 1 reply

Comment options

Hey,
Did you get this running? I would have gone with the single controller approach as well but didnt try yet. If you did, would be awesome if you could share your experience!

You must be logged in to vote
1 reply
@sameerjethvani-alation
Comment options

Hmm based on initial experiment it seems multiple controllers (actions runner controller) won't work in single k8 cluster , as there are some cluster scoped resources (specifically CRDs) being created as part of controller & that causes behaviour (listener pods for second controller doesn't come up etc in another namespace ) , which I am facing.
Also I saw entries of ephemeral pods/listener pods getting mixed in first controller pod logs etc .

All in all , it seems we need to have only one controller (actions runner controller, gha-runner-scale-set-controller) in some namespace & can have multiple scale sets (gha-runner-scale-set) in any namespace/s

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
2 participants
Morty Proxy This is a proxified and sanitized view of the page, visit original site.