## Summary - Add `doc-card-titles` mise task to enumerate all doc cards by title/id and detect duplicates - Remove redundant aliases from zk cards where alias matched the id - Rename `reference/storage/postgresql.md` title to "PostgreSQL Storage" to avoid duplicate with `reference/services/postgresql.md` - Convert all 175 path-based wiki-links `[[reference/path|Title]]` to title-based `[[Title]]` format - Add pre-commit hook to check for duplicate card titles on doc changes ## Deployment and Testing - [x] Pre-commit hooks pass - [x] `mise run doc-card-titles` shows no duplicates - [ ] Verify wiki-links work correctly in Quartz build 🤖 Generated with [Claude Code](https://claude.com/claude-code) Reviewed-on: https://forge.ops.eblu.me/eblume/blumeops/pulls/89
59 lines
1.5 KiB
Markdown
59 lines
1.5 KiB
Markdown
---
|
|
title: PostgreSQL
|
|
tags:
|
|
- service
|
|
- database
|
|
---
|
|
|
|
# PostgreSQL
|
|
|
|
Database cluster via CloudNativePG operator.
|
|
|
|
## Quick Reference
|
|
|
|
| Property | Value |
|
|
|----------|-------|
|
|
| **URL** | `tcp://pg.ops.eblu.me:5432` |
|
|
| **Metrics** | `http://cnpg-metrics.tail8d86e.ts.net:9187/metrics` |
|
|
| **Namespace** | `databases` |
|
|
| **Cluster** | `blumeops-pg` |
|
|
| **Operator** | CloudNativePG |
|
|
|
|
## Databases
|
|
|
|
| Database | Owner | Purpose |
|
|
|----------|-------|---------|
|
|
| miniflux | miniflux | [[Miniflux]] feed data |
|
|
| teslamate | teslamate | [[TeslaMate]] vehicle data |
|
|
|
|
## Users
|
|
|
|
| User | Role | Purpose |
|
|
|------|------|---------|
|
|
| postgres | superuser | CNPG internal |
|
|
| miniflux | app owner | Owns miniflux database |
|
|
| teslamate | superuser | TeslaMate (needs extensions) |
|
|
| eblume | superuser | Admin access |
|
|
| borgmatic | pg_read_all_data | [[Borgmatic|Backup]] access |
|
|
|
|
## Backup
|
|
|
|
Backed up via [[Borgmatic]] `postgresql_databases` hook. Streams `pg_dump` directly to Borg (no intermediate files, no downtime). See [[Backup]] for overall backup policy.
|
|
|
|
## Credentials
|
|
|
|
**1Password items:**
|
|
- `guxu3j7ajhjyey6xxl2ovsl2ui` - eblume password
|
|
- `mw2bv5we7woicjza7hc6s44yvy` - borgmatic password
|
|
|
|
**CNPG-managed secrets:**
|
|
- `blumeops-pg-app` - miniflux user
|
|
- `blumeops-pg-eblume` - eblume superuser
|
|
- `blumeops-pg-borgmatic` - borgmatic backup user
|
|
- `blumeops-pg-teslamate` - teslamate user
|
|
|
|
## Related
|
|
|
|
- [[Miniflux]] - Feed reader database
|
|
- [[TeslaMate]] - Vehicle data database
|
|
- [[Borgmatic]] - Database backup
|