Deployment of Elasticsearch to EKS cluster with helm

Hello elastic community,

I'm trying to install ELK stack on AWS EKS cluster. I've created the cluster using CDK and now trying to deploy elasticsearch using helm:

helm install elasticsearch elastic/elasticsearch -n monitoring -f values.yaml --set replicas=1

While my values.yaml is like:

---
# Permit co-located instances for solitary minikube virtual machines.
antiAffinity: "soft"

# Shrink default JVM heap.
esJavaOpts: "-Xmx512m -Xms512m"

# Allocate smaller chunks of memory per pod.
resources:
  requests:
    cpu: "100m"
    memory: "512M"
  limits:
    cpu: "1000m"
    memory: "512M"

# Request smaller persistent volumes.
volumeClaimTemplate:
  accessModes: [ "ReadWriteOnce" ]
  storageClassName: "standard"
  resources:
    requests:
      storage: 10Gi

The deployment is successful but elasticsearch pod remains permanently in Pending state:

(base) ➜  ~ kubectl get pods -n monitoring
NAME                     READY   STATUS    RESTARTS   AGE
elasticsearch-master-0   0/1     Pending   0          12m
(base) ➜  ~

When I run describe option of kubectl I see the following event:

Events:
  Type     Reason            Age   From               Message
  ----     ------            ----  ----               -------
  Warning  FailedScheduling  4m9s  default-scheduler  running PreBind plugin "VolumeBinding": binding volumes: timed out waiting for the condition

Could someone help me to understand what I'm missing?

Note that the size of the heap should not be larger than 50% of available memory. The smallest heap I have seen used is 512MB, which would require 1GB of RAM for the pod.

I changed the resources memory to 1Gi. It didn't help. Still see pod in the pending state. I suspect that it could be related to mouning EBS

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.