docs: Fix CloudNativePG operator deployment issues#28
Merged
Conversation
Fix issues reported by @sabre1041 during operator deployment: ## Issues Fixed ### 1. Incorrect Namespace References - Changed all references from `cnpg-system` to `postgresql-operator-system` - The EDB operator creates `postgresql-operator-system`, not `cnpg-system` - Updated in: - docs/quick-start-guide.md (OpenShift and CRC sections) - Expected output examples - Troubleshooting section ### 2. Missing Server-Side Apply Flag - Added `--server-side --force-conflicts` to all operator deployments - Required because CRDs are too large for client-side apply - Updated in: - docs/quick-start-guide.md (OpenShift Quick Start) - docs/quick-start-guide.md (CRC Quick Start) - docs/install-kubernetes-manual.md (Manual install) - Added explanatory notes about why this flag is required ### 3. Missing Pull Secret Documentation - Added pull secret creation step to OpenShift Quick Start - Added pull secret creation (commented) to CRC Quick Start - Documented when pull secret is required vs optional - Linked to EDB registry pull secret example ## Changes by File ### docs/quick-start-guide.md - **OpenShift Quick Start:** - Added Step 2: Create EDB Registry Pull Secret (optional) - Renumbered subsequent steps (2→3, 3→4, 4→5, 5→6, 6→7) - Changed `oc apply` to `oc apply --server-side --force-conflicts` - Fixed namespace from `cnpg-system` to `postgresql-operator-system` - Updated expected output to show correct namespace and deployment names - **CRC Quick Start:** - Added commented pull secret creation - Changed `oc apply` to `oc apply --server-side --force-conflicts` - Fixed namespace from `cnpg-system` to `postgresql-operator-system` - **Troubleshooting:** - Fixed operator logs command to use `postgresql-operator-system` ### docs/install-kubernetes-manual.md - Changed direct `oc apply` to download + server-side apply - Added wait command for operator readiness - Added explanatory note about server-side apply requirement ## Testing - ✅ Verified no remaining `cnpg-system` references in docs/ - ✅ All operator deployment commands now use server-side apply - ✅ Pull secret documentation added where needed - ✅ Step numbering corrected in quick-start guide ## Fixes Resolves deployment issues reported by @sabre1041: - CRDs too big → Fixed with --server-side --force-conflicts - Wrong namespace → Fixed all cnpg-system → postgresql-operator-system - Missing pull secret → Added documentation with examples Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fix operator deployment issues reported by @sabre1041 during testing:
cnpg-systemvspostgresql-operator-system)Issues Reported by @sabre1041
Issue 1: CRDs Too Big
--server-side --force-conflictsflags to all deployment commandsIssue 2: Wrong Namespace
cnpg-systemtopostgresql-operator-systemIssue 3: Missing Pull Secret
Changes Made
docs/quick-start-guide.md
OpenShift Quick Start (15 min):
oc apply -k→oc apply --server-side --force-conflicts -kcnpg-system→postgresql-operator-systemCRC Quick Start (30 min):
oc apply -k→oc apply --server-side --force-conflicts -kcnpg-system→postgresql-operator-systemTroubleshooting Section:
docs/install-kubernetes-manual.md
Operator Installation:
oc applyto download + server-side applyTechnical Details
Why Server-Side Apply?
The CloudNativePG CRDs contain extensive schemas that result in very large manifests. When using client-side apply, kubectl/oc stores the entire manifest in a
kubectl.kubernetes.io/last-applied-configurationannotation, which can exceed Kubernetes' annotation size limits (~256KB).Server-side apply:
Namespace Naming
The EDB operator manifest creates:
postgresql-operator-systempostgresql-operator-controller-managerpostgresql.k8s.enterprisedb.ioThis differs from the community CloudNativePG operator which uses:
cnpg-systemcnpg-controller-managerpostgresql.cnpg.ioPull Secret Requirements
Pull secret is needed ONLY when using EDB subscription images:
docker.enterprisedb.com/edb/edb-postgres-advanced:*edb-postgres)Testing
Verification
cnpg-systemreferences in documentationManual Testing Recommended
Before merging, recommend testing on a fresh cluster:
Documentation Impact
Files modified: 2
docs/quick-start-guide.md(+35 lines, -12 lines)docs/install-kubernetes-manual.md(+16 lines, -6 lines)Sections updated:
Credit
Issues reported and tested by: @sabre1041
Thank you for the detailed feedback! These fixes should resolve all three deployment issues.
Checklist
Ready to merge - Fixes critical operator deployment issues preventing successful installation.
cc: @sabre1041