itsbalamurali / neon-operator

Neon serverless Postgres database helm chart
https://neon.tech
MIT License
53 stars 5 forks source link

pageserver FailedScheduling #10

Closed william-lbn closed 3 months ago

william-lbn commented 9 months ago
root@node1:~/serverless/neon-operator# kubectl describe pod -n database        pageserver-0
Name:             pageserver-0
Namespace:        database
Priority:         0
Service Account:  default
Node:             <none>
Labels:           app=pageserver
                  apps.kubernetes.io/pod-index=0
                  controller-revision-hash=pageserver-d7bcc7d78
                  statefulset.kubernetes.io/pod-name=pageserver-0
Annotations:      <none>
Status:           Pending
IP:               
IPs:              <none>
Controlled By:    StatefulSet/pageserver
Containers:
  pageserver:
    Image:       neondatabase/neon
    Ports:       9898/TCP, 6400/TCP
    Host Ports:  0/TCP, 0/TCP
    Command:
      pageserver
      -D
      /data/.neon/
      -c
      id=$(POD_INDEX)
      -c
      broker_endpoint='http://storage-broker.database.svc.cluster.local:50051'
    Limits:
      cpu:     100m
      memory:  200Mi
    Requests:
      cpu:      100m
      memory:   200Mi
    Readiness:  http-get http://:9898/v1/status delay=5s timeout=1s period=5s #success=1 #failure=3
    Environment:
      POD_INDEX:               (v1:metadata.labels['apps.kubernetes.io/pod-index'])
      BROKER_ENDPOINT:        http://storage-broker.database.svc.cluster.local:50051
      AWS_ACCESS_KEY_ID:      <set to the key 'AWS_ACCESS_KEY_ID' in secret 'neon-storage-credentials'>      Optional: false
      AWS_SECRET_ACCESS_KEY:  <set to the key 'AWS_SECRET_ACCESS_KEY' in secret 'neon-storage-credentials'>  Optional: false
    Mounts:
      /data/.neon/ from pageserver-data-volume (rw)
      /data/.neon/pageserver.toml from pageserver-config-volume (rw,path="pageserver.toml")
      /etc/pageserver/auth_public_key.pem from auth-public-key-volume (rw,path="auth_public_key.pem")
      /var/run/secrets/kubernetes.io/serviceaccount from kube-api-access-txr8d (ro)
Conditions:
  Type           Status
  PodScheduled   False 
Volumes:
  pageserver-data-volume:
    Type:       PersistentVolumeClaim (a reference to a PersistentVolumeClaim in the same namespace)
    ClaimName:  pageserver-data-volume-pageserver-0
    ReadOnly:   false
  pageserver-config-volume:
    Type:      ConfigMap (a volume populated by a ConfigMap)
    Name:      pageserver
    Optional:  false
  auth-public-key-volume:
    Type:        Secret (a volume populated by a Secret)
    SecretName:  neon-storage-credentials
    Optional:    false
  kube-api-access-txr8d:
    Type:                    Projected (a volume that contains injected data from multiple sources)
    TokenExpirationSeconds:  3607
    ConfigMapName:           kube-root-ca.crt
    ConfigMapOptional:       <nil>
    DownwardAPI:             true
QoS Class:                   Guaranteed
Node-Selectors:              <none>
Tolerations:                 node.kubernetes.io/not-ready:NoExecute op=Exists for 300s
                             node.kubernetes.io/unreachable:NoExecute op=Exists for 300s
Events:
  Type     Reason            Age                  From               Message
  ----     ------            ----                 ----               -------
  Warning  FailedScheduling  10s (x32 over 150m)  default-scheduler  0/4 nodes are available: pod has unbound immediate PersistentVolumeClaims. preemption: 0/4 nodes are available: 4 Preemption is not helpful for scheduling..
root@node1:~/serverless/neon-operator# 

How to create configmap

image

william-lbn commented 9 months ago

When creating a tenant, the spec information is not complete. No information such as pageServer.

image

william-lbn commented 9 months ago

How to obtain auth_public_key.pem or generate it. Do you have a document introduction

image

william-lbn commented 9 months ago

Discovered that PV does not exist. This needs to be created in advance.

image

william-lbn commented 9 months ago

PV needs to be created in advance. but pageserver is not ready.

image

william-lbn commented 9 months ago

it`ok. pv path set 777 permissions