litmus-helm icon indicating copy to clipboard operation
litmus-helm copied to clipboard

How to set node selectors, tolerations, resources on the agent pods?

Open emmahsax opened this issue 1 year ago • 1 comments

Hello. I am trying to install litmus with Terraform by calling the helm chart like the following:

resource "helm_release" "litmus" {
  chart      = "litmus"
  name       = "litmus"
  namespace  = "litmus"
  repository = "https://litmuschaos.github.io/litmus-helm/"
  version    = "3.1.0"
  values                     = [
    <<-EOT
        mongodb:
          auth:
            replicaSetKey: "..."
            rootPassword: "..."
          nodeSelector:
            "mywebsite.com/nodegroup": "nodegroupname"
          resources:
            "limits":
              "cpu": "512m"
              "memory": "512Mi"
            "requests":
              "cpu": "256m"
              "memory": "256Mi"
          tolerations:
            - "effect": "NoSchedule"
              "key": "mywebsite.com/nodegroup"
              "operator": "Equal"
              "value": "nodegroupname"

          arbiter:
            nodeSelector:
              "mywebsite.com/nodegroup": "nodegroupname"
            resources:
              "limits":
                "cpu": "256m"
                "memory": "256Mi"
              "requests":
                "cpu": "100m"
                "memory": "128Mi"
            tolerations:
              - "effect": "NoSchedule"
                "key": "mywebsite.com/nodegroup"
                "operator": "Equal"
                "value": "nodegroupname"

        portal:
          frontend:
            nodeSelector:
              "mywebsite.com/nodegroup": "nodegroupname"
            resources:
              "limits":
                "cpu": "256m"
                "memory": "256Mi"
              "requests":
                "cpu": "100m"
                "memory": "128Mi"
            tolerations:
              - "effect": "NoSchedule"
                "key": "mywebsite.com/nodegroup"
                "operator": "Equal"
                "value": "nodegroupname"

          server:
            authServer:
              resources:
                "limits":
                  "cpu": "256m"
                  "memory": "256Mi"
                "requests":
                  "cpu": "100m"
                  "memory": "128Mi"
            nodeSelector:
              "mywebsite.com/nodegroup": "nodegroupname"
            tolerations:
              - "effect": "NoSchedule"
                "key": "mywebsite.com/nodegroup"
                "operator": "Equal"
                "value": "nodegroupname"

        upgradeAgent:
          controlPlane:
            image:
              repository: litmuschaos/upgrade-agent-cp
              tag: 2.9.0
          nodeSelector:
            "mywebsite.com/nodegroup": "nodegroupname"
          resources:
            "limits":
              "cpu": "256m"
              "memory": "256Mi"
            "requests":
              "cpu": "100m"
              "memory": "128Mi"
          tolerations:
            - "effect": "NoSchedule"
              "key": "mywebsite.com/nodegroup"
              "operator": "Equal"
              "value": "nodegroupname"
    EOT,
  ]
}

But none of this configures the node selectors, tolerations, and resources on:

  • chaos-exporter
  • chaos-operator
  • event-tracker
  • subscriber
  • workflow-controller

Since https://github.com/litmuschaos/litmus/pull/3527 was merged, I feel like we should be able to set them. But maybe the helm charts haven't been updated with this capability?

Any guidance anyone can provide would be greatly appreciated.

And yes, I did look at https://github.com/litmuschaos/litmus-helm/issues/163

emmahsax avatar Mar 20 '24 16:03 emmahsax

Hi @emmahsax , This should be fix by including this issue with the revamp of litmus-helm.

uditgaurav avatar May 13 '24 12:05 uditgaurav