Skip to content

Commit a0007bc

Browse files
[docs] Explain application management strategies.
Co-authored-by: Timofei Larkin <lllamnyp@gmail.com> Signed-off-by: Nick Volynkin <nick.volynkin@gmail.com>
1 parent 70efbe7 commit a0007bc

1 file changed

Lines changed: 74 additions & 24 deletions

File tree

content/en/docs/guides/applications.md

Lines changed: 74 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,24 @@ aliases:
77
- /docs/components
88
---
99

10-
## Managed Kubernetes
10+
11+
## Application Management Strategies
12+
13+
Cozystack deploys applications in two complementary ways:
14+
15+
- **Operator‑managed applications** – Cozystack bundles a specific version of a Kubernetes Operator that installs and continuously reconciles the application.
16+
As a rule, the operator chooses one of the most recent stable versions of the application by default.
17+
18+
- **Chart‑managed applications** – When no mature operator exists, Cozystack packages an upstream (or in‑house) Helm chart.
19+
The chart’s `appVersion` pin tracks the latest stable upstream release, keeping deployments secure and up‑to‑date.
20+
21+
## Tenants
22+
23+
Tenants in Cozystack are implemented as managed applications.
24+
Learn more about tenants in [Tenant System]({{% ref "/docs/guides/tenants" %}}).
25+
26+
27+
## Managed (Tenant) Kubernetes Cluster
1128

1229
Cozystack deploys and manages Kubernetes clusters as standalone applications within each tenant’s isolated environment.
1330
These clusters are fully separate from the root management cluster and are intended for deploying tenant-specific or customer-developed applications.
@@ -27,7 +44,9 @@ Deployment involves the following components:
2744

2845
This architecture ensures isolated, scalable, and efficient Kubernetes environments tailored for each tenant.
2946

30-
- Managed application reference: [Kubernetes]({{% ref "/docs/reference/applications/kubernetes" %}})
47+
- Supported version: Kubernetes v1.32.4
48+
- Kubernetes operator: [aenix-io/etcd-operator](https://github.com/aenix-io/etcd-operator) v0.4.2
49+
- Managed application reference: [Kubernetes]({{% ref "/docs/reference/applications/kubernetes" %}})
3150

3251

3352
## Managed PostgreSQL
@@ -36,8 +55,11 @@ Nowadays, PostgreSQL is the most popular relational database.
3655
Its platform-side implementation involves a self-healing replicated cluster.
3756
This is managed with the increasingly popular CloudNativePG operator within the community.
3857

39-
- Website: [cloudnative-pg.io](https://cloudnative-pg.io/)
40-
- Managed application reference: [PostgreSQL]({{% ref "/docs/reference/applications/postgres" %}})
58+
59+
- Supported version: PostgreSQL 17
60+
- Kubernetes operator: [cloudnative-pg/cloudnative-pg](https://github.com/cloudnative-pg/cloudnative-pg) v1.24.0
61+
- Website: [cloudnative-pg.io](https://cloudnative-pg.io/)
62+
- Managed application reference: [PostgreSQL]({{% ref "/docs/reference/applications/postgres" %}})
4163

4264

4365
## Managed MySQL (MariaDB)
@@ -49,19 +71,23 @@ This cluster is managed using the increasingly popular mariadb-operator.
4971
For each database, there is an interface for configuring users, their permissions,
5072
as well as schedules for creating backups using [Restic](https://restic.net/) currently the most efficient tool.
5173

52-
- Website: [mariadb.com](https://mariadb.com/)
53-
- Managed application reference: [MySQL]({{% ref "/docs/reference/applications/mysql" %}})
74+
- Supported version: MariaDB 11.4.3
75+
- Kubernetes operator: [mariadb-operator/mariadb-operator](https://github.com/mariadb-operator/mariadb-operator) v0.18.0
76+
- Website: [mariadb.com](https://mariadb.com/)
77+
- Managed application reference: [MySQL]({{% ref "/docs/reference/applications/mysql" %}})
5478

5579

5680
## Managed Redis
5781

5882
Redis is the most commonly used key-value in-memory data store.
5983
It is most often used as a cache, as storage for user sessions, or as a message broker.
6084
The platform-side implementation involves a replicated failover Redis cluster with Sentinel.
61-
This is managed by the spotahome redis-operator.
85+
This is managed by the spotahome/redis-operator.
6286

63-
- Website: [redis.io](https://redis.io/)
64-
- Managed application reference: [Redis]({{% ref "/docs/reference/applications/redis" %}})
87+
- Supported version: Redis 6.2.6+ (based on `alpine`)
88+
- Kubernetes operator: [spotahome/redis-operator](https://github.com/spotahome/redis-operator) v1.3.0-rc1
89+
- Website: [redis.io](https://redis.io/)
90+
- Managed application reference: [Redis]({{% ref "/docs/reference/applications/redis" %}})
6591

6692

6793
## Managed FerretDB
@@ -70,26 +96,32 @@ FerretDB is an open source MongoDB alternative.
7096
It translates MongoDB wire protocol queries to SQL and can be used as a direct replacement for MongoDB 5.0+.
7197
In Cozystack, it is backed by PostgreSQL.
7298

73-
- Website: [ferretdb.io](https://www.ferretdb.io/)
74-
- Managed application reference: [FerretDB]({{% ref "/docs/reference/applications/ferretdb" %}})
99+
- Supported version: FerretDB 1.24.0.
100+
- Website: [ferretdb.io](https://www.ferretdb.io/)
101+
- Managed application reference: [FerretDB]({{% ref "/docs/reference/applications/ferretdb" %}})
75102

76103

77-
## Managed Clickhouse
104+
## Managed ClickHouse
78105

79106
ClickHouse is an open source high-performance and column-oriented SQL database management system (DBMS).
80107
It is used for online analytical processing (OLAP).
81108
In the Cozystack platform, we use the Altinity operator to provide ClickHouse.
82109

83-
- Website: [clickhouse.com](https://clickhouse.com/)
84-
- Managed application reference: [Clickhouse]({{% ref "/docs/reference/applications/clickhouse" %}})
110+
- Supported version: 24.9.2.42
111+
- Kubernetes operator: [Altinity/clickhouse-operator](https://github.com/Altinity/clickhouse-operator) v0.25.0
112+
- Website: [clickhouse.com](https://clickhouse.com/)
113+
- Managed application reference: [Clickhouse]({{% ref "/docs/reference/applications/clickhouse" %}})
114+
85115

86116
## Managed RabbitMQ
87117

88118
RabbitMQ is a widely known message broker.
89119
The platform-side implementation allows you to create failover clusters managed by the official RabbitMQ operator.
90120

91-
- Website: [rabbitmq.com](https://www.rabbitmq.com/)
92-
- Managed application reference: [RabbitMQ]({{% ref "/docs/reference/applications/rabbitmq" %}})
121+
- Supported version: RabbitMQ 4.1.0+ (latest stable version)
122+
- Kubernetes operator: [rabbitmq/cluster-operator](https://github.com/rabbitmq/cluster-operator) v1.10.0
123+
- Website: [rabbitmq.com](https://www.rabbitmq.com/)
124+
- Managed application reference: [RabbitMQ]({{% ref "/docs/reference/applications/rabbitmq" %}})
93125

94126

95127
## Managed Kafka
@@ -99,8 +131,10 @@ It aims to provide a unified, high-throughput, low-latency platform for handling
99131
In Cozystack, we use [Strimzi](https://github.com/cozystack/cozystack/blob/main/packages/system/kafka-operator/charts/strimzi-kafka-operator/README.md)
100132
to run an Apache Kafka cluster on Kubernetes in various deployment configurations.
101133

102-
- Website: [kafka.apache.org](https://kafka.apache.org/)
103-
- Managed application reference: [Kafka]({{% ref "/docs/reference/applications/kafka" %}})
134+
- Supported version: Apache Kafka, 3.9.0
135+
- Kubernetes operator: [strimzi/strimzi-kafka-operator](https://github.com/strimzi/strimzi-kafka-operator) v0.45.0
136+
- Website: [kafka.apache.org](https://kafka.apache.org/)
137+
- Managed application reference: [Kafka]({{% ref "/docs/reference/applications/kafka" %}})
104138

105139

106140
## Managed HTTP Cache
@@ -111,17 +145,20 @@ Nginx is traditionally used to build CDNs and caching servers.
111145
The platform-side implementation features efficient caching without using a clustered file system.
112146
It also supports horizontal scaling without duplicating data on multiple servers.
113147

114-
- Website: [nginx.org](https://nginx.org/)
115-
- Managed application reference: [http-cache]({{% ref "/docs/reference/applications/http-cache" %}})
148+
- Included versions: Nginx 1.25.3, HAProxy latest stable.
149+
- Website: [nginx.org](https://nginx.org/)
150+
- Managed application reference: [http-cache]({{% ref "/docs/reference/applications/http-cache" %}})
116151

117152

118153
## Managed NATS Messaging
119154

120155
NATS is an open-source, simple, secure, and high performance messaging system.
121156
It provides a data layer for cloud native applications, IoT messaging, and microservices architectures.
122157

123-
- Website: [nats.io](https://nats.io/)
124-
- Managed application reference: [NATS]({{% ref "/docs/reference/applications/nats" %}})
158+
- Supported version: NATS 2.10.17
159+
- Website: [nats.io](https://nats.io/)
160+
- Managed application reference: [NATS]({{% ref "/docs/reference/applications/nats" %}})
161+
125162

126163
## Managed VPN Service
127164

@@ -132,5 +169,18 @@ It operates by launching Shadowsocks instances on demand.
132169
The Shadowsocks protocol uses symmetric encryption algorithms.
133170
This enables fast internet access while complicating traffic analysis and blocking through DPI (Deep Packet Inspection).
134171

135-
- Website: [getoutline.org](https://getoutline.org/)
136-
- Managed application reference: [VPN]({{% ref "/docs/reference/applications/vpn" %}})
172+
- Supported version: Outline Server, v1.12.3+ (stable)
173+
- Website: [getoutline.org](https://getoutline.org/)
174+
- Managed application reference: [VPN]({{% ref "/docs/reference/applications/vpn" %}})
175+
176+
177+
## Managed TCP Balancer
178+
179+
The Managed TCP Load Balancer Service simplifies the deployment and management of load balancers.
180+
It efficiently distributes incoming TCP traffic across multiple backend servers, ensuring high availability and optimal resource utilization.
181+
182+
Managed TCP Load Balancer Service efficiently utilizes HAProxy for load balancing purposes.
183+
HAProxy is a well-established and reliable solution for distributing incoming TCP traffic across multiple backend servers, ensuring high availability and efficient resource utilization. This deployment choice guarantees the seamless and dependable operation of your load balancing infrastructure.
184+
185+
186+
- Docs: https://www.haproxy.com/documentation/

0 commit comments

Comments
 (0)