Pulp operator directly from git isnt installing the rest of the pods

Problem:
pulp operator directly from git isnt installing the rest of the pods
Installed pulp using below
kubectl create ns pulp-test

git clone https://github.com/pulp/pulp-operator.git /tmp/pulp-operator

cd pulp-operator 
NAMESPACE=pulp-test make install deploy
kubectl -n pulp-test apply -f- <<EOF
apiVersion: v1
kind: Secret
metadata:
  name: 'test-s3'
stringData:
  s3-access-key-id: "xxxx"
  s3-secret-access-key: "xxxxx"
  s3-bucket-name: "xxxxx"
  s3-region: "xxxxx"
EOF

kubectl -n pulp-test apply -f-<<EOF
apiVersion: repo-manager.pulpproject.org/v1beta2
kind: Pulp
metadata:
  name: test
spec:
  object_storage_s3_secret: test-s3
  api:
    replicas: 1
  content:
    replicas: 1
  worker:
    replicas: 1
  web:
    replicas: 1
EOF

% kubectl get pods -n pulp-test
NAME                                                READY   STATUS    RESTARTS   AGE
pulp-operator-controller-manager-6d7ddc9c54-6mhpg   1/1     Running   0          8m29s

Rest of the pods arent coming up even when spec: object_storage_s3_secret is mentioned the CR

Below error seen in the operator pod logs
2025-01-09T07:08:51Z INFO controller/controller.go:217 Starting workers {“controller”: “pulpbackup”, “controllerGroup”: “repo-manager.pulpproject.org”, “controllerKind”: “PulpBackup”, “worker count”: 1}
2025-01-09T07:08:51Z INFO controller/controller.go:217 Starting workers {“controller”: “pulprestore”, “controllerGroup”: “repo-manager.pulpproject.org”, “controllerKind”: “PulpRestore”, “worker count”: 1}
2025-01-09T07:08:51Z INFO controller/controller.go:217 Starting workers {“controller”: “pulp”, “controllerGroup”: “repo-manager.pulpproject.org”, “controllerKind”: “Pulp”, “worker count”: 1}
2025-01-09T07:09:51Z ERROR repo_manager/precheck.go:184 could not find any storage definition for Database. You must configure storage for Pulp and Database pods.

Trying this to checkout the APT signing option (available in main branch of pulp-operator), that doesnt exist in 1.0.0-beta.4 helm version of operator.

Expected outcome:
the rest of the pods should have come up
Pulpcore version:
pulp-operator version: 1.0.7-beta.5
Pulp plugins installed and their versions:

Operating system - distribution and version:

Other relevant data:

Just following up on this issue, any guidance would be appreciated.

@hyagi Can you help with this?

Hi @tarangini-shetty,

Sorry for the late response!
In PR #1385 we removed the support for emptyDir (ephemeral storage) installations.
From the test Pulp CR provided, you configured the storage for pulpcore pods, but now you also need to configure a storage for the database. Please, check the Configure Pulp Database doc for the steps to configure it. Basically, you will need to:
1- configure a storage_class or persistent volume claim for the pulp-operator to provision the DB pods for you

  • for example:
spec:
  database:
    postgres_storage_class: my-sc-for-database

OR
2- configure pulp-operator to use an external postgresql installation (for example, AWS RDS)

3 Likes

Thank you for sharing the detailed info. Sure, will add the additional config needed.