|
2 | 2 |
|
3 | 3 | AboutBits PostgreSQL Operator is a Kubernetes operator that helps you manage PostgreSQL databases, roles (users), and privileges in a declarative way using Custom Resource Definitions (CRDs). |
4 | 4 |
|
| 5 | +## Architecture |
| 6 | + |
| 7 | +``` |
| 8 | +┌──────────────────────────────────────────────────────────────────────────┐ |
| 9 | +│ Kubernetes Cluster │ |
| 10 | +│ ┌────────────────────────┐ ┌────────────────────────────────────────┐ │ |
| 11 | +│ │ PostgreSQL │ │ PostgreSQL Operator │ │ |
| 12 | +│ │ Operator CRDs │──▶│ ┌──────────────────────────────────┐ │ │ |
| 13 | +│ │ │ │ │ ClusterConnection Controller │ │ │ |
| 14 | +│ │ ┌────────────────────┐ │ │ ├──────────────────────────────────┤ │ │ |
| 15 | +│ │ │ ClusterConnection │ │ │ │ Database Controller │ │ │ |
| 16 | +│ │ └──────────▲─────────┘ │ │ ├──────────────────────────────────┤ │ │ |
| 17 | +│ │ │ │ │ │ Role Controller │ │ │ |
| 18 | +│ │ ┌──────────┴─────────┐ │ │ ├──────────────────────────────────┤ │ │ |
| 19 | +│ │ │ - Database │ │ │ │ Schema Controller │ │ │ |
| 20 | +│ │ │ - Schema │ │ │ ├──────────────────────────────────┤ │ │ |
| 21 | +│ │ │ - Role │ │ │ │ Grant Controller │ │ │ |
| 22 | +│ │ │ - Grant │ │ │ ├──────────────────────────────────┤ │ │ |
| 23 | +│ │ │ - DefaultPrivilege │ │ │ │ DefaultPrivilege Controller │ │ │ |
| 24 | +│ │ └────────────────────┘ │ │ └──────────────────────────────────┘ │ │ |
| 25 | +│ └────────────────────────┘ └────────────────────┬───────────────────┘ │ |
| 26 | +│ │ │ |
| 27 | +│ ▼ │ |
| 28 | +│ ┌──────────────────────────────────┐ │ |
| 29 | +│ │ PostgreSQL Server │ │ |
| 30 | +│ │ (SQL) │ │ |
| 31 | +│ └──────────────────────────────────┘ │ |
| 32 | +└──────────────────────────────────────────────────────────────────────────┘ |
| 33 | +``` |
| 34 | + |
5 | 35 | ## Usage |
6 | 36 |
|
7 | 37 | This operator allows you to manage PostgreSQL resources using Kubernetes manifests. |
|
0 commit comments