Managed databases - Hikube

PostgreSQL, MariaDB, Redis, MongoDB, ClickHouse.
kubectlapply - that's it.

Five fully managed databases on Hikube. Automatic replication, failover, S3 backups, auto-generated credentials. Zero database engine maintenance.

5 DBS

PostgreSQL - MariaDB - Redis - MongoDB - ClickHouse

Native HA

Automatic replication + failover

S3 backup

Scheduled encrypted backups

0 config

Automatically generated credentials
Comparison

The right engine for every application

Each service is based on a recognized Kubernetes operator: CloudNativePG, MariaDB-Operator, Spotahome, Altinity. Lifecycle management (deployment, replication, failover, backup) is fully automated.

Service
Type
replication
use cases
PostgreSQL
Relationship
Streaming + Failover
Transactional applications, APIs, SaaS
MariaDB
Relationship
Binog + auto-failover
CMS, e-commerce, legacy applications
Redis
Value key
Sentinel + auto-failover
Cache, sessions, queues
MongoDB
Documents
Replica Set + election
APIs, catalogs, semi-structured data
ClickHouse
Analytical (OLAP)
ReplicatedMergeTree + Keeper
Analytics, logs, data lake, OLAP
SERVICES

Each database in detail

Postgres

Automatic failover Streaming replication PITR

Managed PostgreSQL service based on CloudNativePG. A primary accepts writes, and replicas are synchronized by streaming replication from the primary. In the event of failure, a replica is automatically promoted without manual intervention.

Replicas are distributed across different datacenters. With replicas: 3, you get 1 primary + 2 standbys on 3 sites.

  • WAL + PITR backups
    WALs are continuously archived to S3. Restoration possible at any time between two backups.
  • Declarative users and databases
    Declare your users, databases, admin and readonly roles directly in the manifest. Credentials stored in an auto-generated Secret.
  • PostgreSQL extensions
    Enable uuid-ossp, pgcrypto, hstore and other extensions per database in the databases[name].extensions section.
  • Optional synchronous replication
    Configure quorum.minSyncReplicas so that a transaction is committed only after confirmation of a replica. uement.

Production recommendation

replicas: 3 + quorum.minSyncReplicas: 1 for a good compromise between performance and durability.
yaml
apiVersion: apps.cozystack.io/v1alpha1
kind: Postgres
metadata:
name: example
spec:
replicas: 3
resourcesPreset: micro
size: 10Gi
users:
user1:
password: strongpassword
databases:
myapp:
roles:
admin:
- user1
readonly:
- user2
extensions:
- uuid-ossp
quorum:
minSyncReplicas: 0
maxSyncReplicas: 0
backup:
enabled: false
# destinationPath: s3://bucket/path/
# endpointURL: https://prod.s3.hikube.cloud
# retentionPolicy: 30d

 

Why managed

Less ops, more business code

Maintaining a database in production means managing version updates, monitoring replication, configuring backups, testing restoration procedures and intervening at 3 a.m. when a primary goes down. This is not added value, it's infrastructure.

With Hikube, this burden disappears. You declare what you want - type of database, number of replicas, size, users - and the operator automatically provisions, replicates, fails over and backs up. Your teams focus on queries, schema and application performance, not infrastructure.

Databases are hosted in Switzerland, in the same datacenter as your Kubernetes Hikube clusters. Latency between your application and your database is minimal, and your data never leaves Europe.

markup-cropped-2

Automatic failover without intervention

Primary failure? The operator promotes a replica in seconds. No alert at 3 a.m., no manual action.

markup-cropped-2

Declarative scaling

Change replicas or size in the manifest, apply. The operator takes care of the rolling update without downtime.

markup-cropped-2

Testable, scheduled backups

WAL archiving for PostgreSQL, Restic for MariaDB / MongoDB / ClickHouse. Configurable retention, documented restoration. A backup that has never been tested is not a backup.

markup-cropped-2

Kubernetes-native credentials

Each base generates a Secret in your namespace. Inject it into your pods via envFrom, no keys in the clear in your manifests or Git repositories.

Use cases

Which base for which need?

Each motor has its own strengths. Here are concrete situations in which each is the best choice, and why.

Multi-tenant SaaS application

Each client has an isolated schema in the same PostgreSQL instance. ACID transactions, integrity constraints, complex joins. The secondary replica absorbs reporting requests without impacting the primary.

replicas: 3 - quorum: 1 - WAL backup

CMS and e-commerce platform

WordPress, Magento, PrestaShop. All these applications are designed for MariaDB. Migration from self-hosted MariaDB without code changes. External LoadBalancer provides direct access from administration tools.

replicas: 3 - external: true - Restic backup

Session cache and rate limiting

Storage of user sessions in a high-frequency API. Sub-millisecond latency, automatic key expiration (TTL), atomic counters for rate limiting. The Sentinel guarantees continuity even if the master falls.

replicas: 3 - authEnabled: true - storageClass: local

Product catalog and REST API

E-commerce catalog with variable attributes according to category (clothing, electronics, food). MongoDB's flexible schema avoids table migrations for each new product type. Indexing on any nested field...

replicas: 3 - Replica Set - Restic backup

Real-time analytics on application logs

Handle billions of events (logs, metrics, clicks). Aggregated queries run in seconds, even on multi-terabyte tables, thanks to column storage and sharding. Ideal for BI dashboards and real-time alerts.

shards: 2 - replicas: 2 - Keeper: 3

Complete stacks for ML applications

PostgreSQL for structured data (users, jobs), Redis for the ML job queue and results cache, MongoDB for model artifacts and metadata (variable structure), ClickHouse for real-time inference metrics.

PG + Redis + Mongo + ClickHouse
Common features

What all services share

Every database managed on Hikube exhibits the same fundamental mechanisms, regardless of the technology chosen.

  • Declarative deployment via kubectl
    A YAML manifest, a kubectl apply. The operator automatically provision and maintain the cluster.

  • Credentials auto-generated in a Secret
    Each service generates a Kubernetes Secret <service>-<name>-credentials containing passwords. No manual configuration of access.

  • Integrated S3 backups
    PostgreSQL uses WAL archiving + CloudNativePG. MariaDB and ClickHouse use Restic. All to any compatible S3 endpoint, including Hikube buckets.

  • Resource presets or explicit configuration
    resourcesPreset (nano to 2xlarge) for quick start-up. resources.cpu and resources.memory for production environments. Both are mutually exclusive.

range
Ration
RECOMMENDED USE
nano
250m
128 Mi
micro
500m
256 Mi
small
1 CPU
512 mi
medium
1 GPU
1 Gi
large
2 GPUS
2 Gi
xlarge
4 GPUS
4 Gi
2xwide
8 GPUS
8 Gi
FAQ

Questions about managed databases

Can I save to Hikube S3 buckets?

Yes, this is the recommended use case. Create a Hikube bucket, retrieve the credentials from the generated Secret, and enter them in the backup section of your manifest, so that your backups remain on the same infrastructure, in Switzerland.

What's the difference between resourcesPreset and resources?

resourcesPreset applies a predefined profile (nano, micro, small...). This is the easiest way to get started. If you define resources.cpu and resources.memory explicitly, the preset is ignored entirely. The two are mutually exclusive - don't combine them in the same manifest.

Is ClickHouse suitable for my transactional requests?

No. ClickHouse is an OLAP engine optimized for analytical queries - aggregations, column scans on large volumes. It is not suited to frequent transactional operations (unitaryUPDATE / DELETE, ACID transactions). For transactional queries, use PostgreSQL or MySQL on Hikube.

Is the MySQL service compatible with my existing MySQL applications?

Yes, the MySQL service on Hikube is based on MariaDB, an open-source fork of MySQL that is fully compatible with the MySQL protocol, syntax and clients. Your applications, drivers and ORMs will work without modification.

How many Redis replicas are needed for automatic failover?

Minimum 3. Redis Sentinel needs a quorum - a majority of Sentinels (2 out of 3) must agree to decide on a failover. With replicas: 3, you get 3 Redis pods and 3 Sentinel pods, guaranteeing quorum even if one Sentinel is unavailable.