RocketChat / helm-charts

Repository for RocketChat helm charts
36 stars 67 forks source link

Add node selector to deployments #99

Open atropos112 opened 1 year ago

atropos112 commented 1 year ago

Rocketchat (currently) does not support arm64. I am running nodes that are both arm64 and amd64 and currently can't select for rocketchat to only run on amd64 as such I sometimes see crashlooping because it tries to schedule on arm64 node.

Best and easiest solution here is to add nodeSelector to deployment templates. PR here: https://github.com/RocketChat/helm-charts/pull/98

ChrisJBurns commented 1 year ago

I don't mind closing mine: https://github.com/RocketChat/helm-charts/issues/97 ?

TheBoboNL commented 1 year ago

you can use the affinity node to do this select, however than you run into the issue with upgrading that the hook-verify-mongodb-version.yaml does not support this affinity and can deploy a pod on a ARM node.

So that yaml will also need to be updated.

to use the affinity you get something like this:

affinity:
  nodeAffinity:
    requiredDuringSchedulingIgnoredDuringExecution:
      nodeSelectorTerms:
      - matchExpressions:
        - key: kubernetes.io/arch
          operator: In
          values:
          - amd64
ChrisJBurns commented 1 year ago

@TheBoboNL its recommended to use nodeSelector as per https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#affinity-and-anti-affinity