Finish RAILIANCE-WP-0016 apps-pg resource evidence
Publish capacity, recovery, labor, and allocation-driver evidence for resource:railiance:apps-pg so resource-control can forecast and allocate without reading application data or inventing booked cost.
This commit is contained in:
parent
b5fb44b53e
commit
6033ae1aef
6 changed files with 566 additions and 6 deletions
139
docs/evidence/RAILIANCE-WP-0016-apps-pg-observation.json
Normal file
139
docs/evidence/RAILIANCE-WP-0016-apps-pg-observation.json
Normal file
|
|
@ -0,0 +1,139 @@
|
|||
{
|
||||
"schema_version": "0.1",
|
||||
"record_type": "usage_observation",
|
||||
"resource_id": "resource:railiance:apps-pg",
|
||||
"source": "railiance-platform",
|
||||
"workplan_id": "RAILIANCE-WP-0016",
|
||||
"reef": "reef-railiance",
|
||||
"captured_at": "2026-08-14T00:04:19Z",
|
||||
"identity": {
|
||||
"cluster": "apps-pg",
|
||||
"namespace": "databases",
|
||||
"pod": "apps-pg-1",
|
||||
"image": "ghcr.io/cloudnative-pg/postgresql:16",
|
||||
"postgres_version": "PostgreSQL 16.13 (Debian 16.13-1.pgdg11+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 10.2.1-6) 10.2.1 20210110, 64-bit",
|
||||
"created_at": "2026-08-09T00:15:53Z",
|
||||
"phase": "Cluster in healthy state"
|
||||
},
|
||||
"capacity": {
|
||||
"instances_provisioned": 1,
|
||||
"instances_ready": 1,
|
||||
"cpu_request": null,
|
||||
"memory_request": null,
|
||||
"cpu_limit": null,
|
||||
"memory_limit": null,
|
||||
"storage_provisioned": "10Gi",
|
||||
"storage_class": "local-path",
|
||||
"max_connections": 100
|
||||
},
|
||||
"utilization": {
|
||||
"cpu_observed": "9m",
|
||||
"memory_observed": "102Mi",
|
||||
"pgdata_bytes": 619083120,
|
||||
"wal_bytes_since_init": 587202560,
|
||||
"sessions": 7,
|
||||
"databases": [
|
||||
{
|
||||
"name": "apps_meta",
|
||||
"bytes": 7830551,
|
||||
"backends": 0,
|
||||
"xact_commit": 14374,
|
||||
"xact_rollback": 0,
|
||||
"blks_read": 126,
|
||||
"blks_hit": 525989,
|
||||
"tup_inserted": 0,
|
||||
"tup_updated": 0,
|
||||
"tup_deleted": 0
|
||||
},
|
||||
{
|
||||
"name": "coulomb_social_db",
|
||||
"bytes": 8952855,
|
||||
"backends": 0,
|
||||
"xact_commit": 14754,
|
||||
"xact_rollback": 0,
|
||||
"blks_read": 41,
|
||||
"blks_hit": 574766,
|
||||
"tup_inserted": 982,
|
||||
"tup_updated": 77,
|
||||
"tup_deleted": 11
|
||||
},
|
||||
{
|
||||
"name": "postgres",
|
||||
"bytes": 7830551,
|
||||
"backends": 1,
|
||||
"xact_commit": 146383,
|
||||
"xact_rollback": 0,
|
||||
"blks_read": 356,
|
||||
"blks_hit": 3445068,
|
||||
"tup_inserted": 0,
|
||||
"tup_updated": 4,
|
||||
"tup_deleted": 0
|
||||
},
|
||||
{
|
||||
"name": "vergabe_db",
|
||||
"bytes": 7668239,
|
||||
"backends": 0,
|
||||
"xact_commit": 0,
|
||||
"xact_rollback": 0,
|
||||
"blks_read": 0,
|
||||
"blks_hit": 0,
|
||||
"tup_inserted": 0,
|
||||
"tup_updated": 0,
|
||||
"tup_deleted": 0
|
||||
}
|
||||
]
|
||||
},
|
||||
"consumers": [
|
||||
{
|
||||
"database": "coulomb_social_db",
|
||||
"workload": "coulomb-social",
|
||||
"role": "coulomb_social",
|
||||
"cost_attribution_key": "platform:coulomb-social",
|
||||
"bytes": 8952855,
|
||||
"xact_commit": 14754,
|
||||
"backends": 0,
|
||||
"share_of_consumer_bytes": 0.5386
|
||||
},
|
||||
{
|
||||
"database": "vergabe_db",
|
||||
"workload": "vergabe-teilnahme",
|
||||
"role": "vergabe",
|
||||
"cost_attribution_key": "platform:vergabe-teilnahme",
|
||||
"bytes": 7668239,
|
||||
"xact_commit": 0,
|
||||
"backends": 0,
|
||||
"share_of_consumer_bytes": 0.4614
|
||||
}
|
||||
],
|
||||
"recovery": {
|
||||
"cluster_ready": true,
|
||||
"continuous_archiving": true,
|
||||
"scheduled_backup_present": false,
|
||||
"option_a_target": false,
|
||||
"restore_drill_recorded": false,
|
||||
"rpo": "unbounded",
|
||||
"rto": "undefined",
|
||||
"failure_domain": "single-host local-path on railiance01"
|
||||
},
|
||||
"allocation": {
|
||||
"method": "proportional",
|
||||
"driver": "database_gb",
|
||||
"method_version": "apps-pg-dbbytes-v1",
|
||||
"consumer_bytes": 16621094,
|
||||
"residual_bytes": 586800924,
|
||||
"residual_key": "platform:apps-pg-overhead",
|
||||
"notes": [
|
||||
"Consumer share is pg_database_size of declared consumer databases only.",
|
||||
"Residual is PGDATA minus all non-template databases (WAL and catalogs)."
|
||||
]
|
||||
},
|
||||
"provenance": {
|
||||
"commands": [
|
||||
"kubectl get cluster apps-pg -n databases -o json",
|
||||
"kubectl top pod -n databases -l cnpg.io/cluster=apps-pg",
|
||||
"kubectl exec -n databases apps-pg-1 -c postgres -- du -sb /var/lib/postgresql/data/pgdata",
|
||||
"psql non-secret catalog and pg_stat_database queries"
|
||||
],
|
||||
"authority": "reef-railiance Kubernetes API + local postgres catalog"
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue