Oracle Cloud Infrastructure¶
OCI is the long-running compute home — the most generous free tier for sustained workloads.
Always-free allotment¶
| Resource | Quota |
|---|---|
| AMD VMs (E2.1.Micro) | 2 instances, 1/8 OCPU + 1 GB RAM each |
| Ampere ARM (A1.Flex) | 4 OCPU + 24 GB total, splittable across up to 4 instances |
| Block volumes | 200 GB total |
| Object Storage | 20 GB standard + 10 GB archive |
| Vault (KMS) | 150 secret versions, 20 software key versions |
| NoSQL DB | 25 GB + 133M reads/writes/mo per table, up to 3 tables |
| MySQL HeatWave | 1 DB system in PHX-AD-2 only — MySQL.Free shape (1 OCPU, 8 GB RAM, 50 GB storage). Optional HeatWave cluster (in-memory analytics) can be enabled. Reserved, not provisioned — see below. |
| Outbound transfer | 10 TB/month |
What's running¶
claude-edge(E2.1.Micro, PHX-AD-2) — runningclaude-utility(E2.1.Micro, PHX-AD-2) — runningclaude-ampere— provisioning loop active; rotates across all 3 Phoenix ADs every 10 min, retries until capacity opens. The free Ampere tier is famously hard to grab in Phoenix.claude-cloud-vault— DEFAULT type (software-backed); primary cross-cloud secret store for the entire stack- Object Storage namespace
axd9ku6m85mx— available, no buckets provisioned yet
Tenancy¶
- Region: us-phoenix-1
- Compartment: root tenancy
- Identity: claude@bytell.com via OCI federation, profile DEFAULT in
~/.oci/config
Notes¶
- E2.1.Micro is fixed at 1/8 OCPU — fine for low-frequency cron / utility workloads, struggles with anything sustained-CPU. For the right workload, the 1 GB RAM ceiling matters more than the OCPU floor (e.g.
sshdwill OOM if you run a heavy daemon alongside it). - Ampere is the workhorse once landed — 4 OCPU baseline, 24 GB RAM, ARM. Capacity is rationed by Oracle's free-tier policy and effectively requires polling.
- 10 TB egress means OCI is where bulk data leaves the stack — backups, archives, exports.
Reserved free-tier capability: MySQL HeatWave¶
The Always-Free MySQL HeatWave slot is available but deliberately not provisioned — see ISSUE-048 in the local ProjectMgmt/closed/ archive for the evaluation that landed there. The slot stays reserved against future use cases that warrant it.
What it would buy us if provisioned:
- Managed MySQL 8 with daily backups, single-AD durability — useful if a workload needs managed MySQL specifically (Cerebro is on Postgres, so not a current fit).
- HeatWave Cluster — in-memory analytics accelerator on top of the base MySQL.
- HeatWave Lakehouse — SQL queries over Parquet/CSV/JSON in OCI Object Storage (free 10 GB), in-place. Does not work against arbitrary S3-compatible endpoints like Cloudflare R2; per docs, the URI / PAR / Resource Principal access methods are all OCI-Object-Storage-shaped. If we wanted Lakehouse over our existing R2 archive, we'd need to dual-write the relevant Parquet to OCI Object Storage as well.
- HeatWave Vector Store — pgvector-equivalent inside MySQL.
- HeatWave GenAI — in-DB RAG using OCI GenAI's Cohere models (different LLM family from the AI gateway's Claude path).
What would justify provisioning:
| If you decide to… | …HeatWave Free becomes the right tool |
|---|---|
| Migrate Cerebro from Postgres to a managed MySQL with backups | Stops the Mellon Docker-Postgres backup gap (cheaper alternatives: pg_dump → R2 cron) |
| Run ad-hoc SQL over Cribl logs without touching BigQuery's 1 TB-queried/mo cap | Requires Cribl to dual-write archives to OCI Object Storage |
| Stand up an in-DB vector + structured store for a future product where Supabase pgvector doesn't fit | Speculative |
| Experiment with HeatWave GenAI for in-DB RAG over OCI-resident data | Different LLM family from the existing AI gateway |
What would not justify provisioning:
- "It's free" — the slot stays free whether or not we use it; provisioning without a real workload is the stack-expansion anti-pattern documented in
project_stack_expansion_thresholdmemory. - Crosswire's Phase 6 archive-query needs — covered cleanly by BigQuery via the existing Cribl→Pub/Sub bridge.
- Using HeatWave to serve traffic — single-AD = no HA; not a workload candidate.
Constraints when provisioning eventually happens:
- PHX-AD-2 only (zero quota in AD-1, AD-3).
- No public IP allowed; connect from within
claude-cloud-vcn(utility-oci, edge-oci, or a Bastion). - 8 GB RAM total caps the HeatWave hot-working-set well below the 50 GB storage cap; design queries with that in mind.
- Single-AD = scheduled OCI maintenance windows take it down.