Elasticsearch statefulset не создает volumesClaims в rook-cephfs

#elasticsearch #kubernetes #kubernetes-statefulset #kubernetes-pvc

#elasticsearch #kubernetes #kubernetes-statefulset #kubernetes-pvc

Вопрос:

Я пытаюсь развернуть elasticsearch statfulset и предоставить хранилище, подготовленное rook-ceph storageclass.

Модуль находится в режиме ожидания из-за: Ошибка при планировании 87 по умолчанию -доступно 0/4 узлов планировщика: 4 модуля имеют несвязанные немедленные постоянные запросы объема.

Набор с полным состоянием выглядит следующим образом:

 apiVersion: apps/v1
kind: StatefulSet
metadata:
  name: elasticsearch
  namespace: rcc
  labels:
    app: elasticsearch
    tier: backend
    type: db
spec:
  serviceName: es
  replicas: 3
  selector:
    matchLabels:
      app: elasticsearch
      tier: backend
      type: db
  template:
    metadata:
      labels:
        app: elasticsearch
        tier: backend
        type: db
    spec:
      terminationGracePeriodSeconds: 300
      initContainers:
      - name: fix-the-volume-permission
        image: busybox
        command:
        - sh
        - -c
        - chown -R 1000:1000 /usr/share/elasticsearch/data
        securityContext:
          privileged: true
        volumeMounts:
        - name: data
          mountPath: /usr/share/elasticsearch/data
      - name: increase-the-vm-max-map-count
        image: busybox
        command:
        - sysctl
        - -w
        - vm.max_map_count=262144
        securityContext:
          privileged: true
      - name: increase-the-ulimit
        image: busybox
        command:
        - sh
        - -c
        - ulimit -n 65536
        securityContext:
          privileged: true
      containers:
      - name: elasticsearch
        image: docker.elastic.co/elasticsearch/elasticsearch-oss:7.7.1
        ports:
        - containerPort: 9200
          name: http
        - containerPort: 9300
          name: tcp
        resources:
          requests:
            memory: 4Gi
          limits:
            memory: 6Gi
        env:
          - name: cluster.name
            value: elasticsearch
          - name: node.name
            valueFrom:
              fieldRef:
                fieldPath: metadata.name
          - name: discovery.zen.ping.unicast.hosts
            value: "elasticsearch-0.es.default.svc.cluster.local,elasticsearch-1.es.default.svc.cluster.local,elasticsearch-2.es.default.svc.cluster.local"
          - name: ES_JAVA_OPTS
            value: -Xms4g -Xmx4g
        volumeMounts:
        - name: data
          mountPath: /usr/share/elasticsearch/data
  volumeClaimTemplates:
  - metadata:
      name: data
    spec:
      accessModes:
        - ReadWriteOnce
      storageClassName: rook-cephfs
      resources:
        requests:
          storage: 5Gi
 

и резонанс пвх не создается, это:

Обычный сбой привязки 47 секунд (x62 более 15 м) persistentvolume-controller для этого утверждения не доступны постоянные тома, и класс хранилища не задан

Есть идеи, что я делаю не так?

Комментарии:

1. Можете ли вы создавать другие PVCS, используя это storageClassName: , просто не в ES StatefulSet, или все PVCs бомбят одинаково? Какие шаги по устранению неполадок вы уже пробовали?

2. да, у меня есть другие pvc, работающие в том же классе storageclass, без проблем

3. в качестве дополнительных шагов я попытался создать PV вручную, но они тоже не сработали.

4. Тогда как насчет редактирования вашего вопроса, чтобы включить в него действия, которые вы предприняли, и их результаты; мы не на вашем компьютере, чтобы знать, что вы знаете, поэтому помогите нам помочь вам

5. Я изменил storageClassName на rook-ceph-block, и он работает

Ответ №1:

После добавления класса хранилища rook-ceph-block и изменения класса storageclass на этот, он работал без каких-либо проблем.