Shturval Platform Architecture

The Shturval container orchestration platform architecture consists of a management cluster (Cluster Management) and workload clusters (client clusters):

  • Management cluster — a Kubernetes container orchestration cluster that creates and manages client container orchestration clusters. It can also be used as a standalone cluster.
  • Client cluster — a container orchestration cluster deployed under management cluster control.

Platform structure

structure

Management cluster

The management cluster manages client cluster infrastructure, centralizes log and monitoring metric collection and storage, and manages access and users. The management cluster is not intended to run or control workloads in client clusters. If the management cluster fails, client clusters continue to operate. Management cluster recovery is described here. Deploying a DR management cluster is described here.

Installation is supported on Linux only. Management cluster installation starts on a dedicated machine.

Supported OS versions for the installation host
Operating systemSystem versionKernel version
Astra Linux SE1.7.5, 1.85.10, 5.15, 6.1, 6.6
Debianbullseye5.10
Debianbookworm6.1.0
UbuntuNoble 24.046.8
RED OS86.6, 6.12
RosaChrome6.6
Alt Linux106.1
RHEL95.14
Rocky Linux95.14
SberLinux5.9.15.14
Supported OS versions for cluster nodes
Operating systemSystem versionKernel version
Astra Linux SE1.7, 1.7.5, 1.85.10, 5.15, 6.1, 6.6
Debianbullseye5.10
Debianbookworm6.1.0
UbuntuFocal 20.045.10
UbuntuJammy 22.045.15
UbuntuNoble 24.046.8
RED OSMurom, 7.3.4, 85.10, 5.15, 6.1, 6.6, 6.12
RosaChrome6.6
Alt Linux106.1
OSnovaOnyx6.6
Oracle Linux8.x*5.15
RHEL95.14
Rocky Linux95.14
SberLinux5.9.15.14
* Before installation with the Shturval v2 provider, disable Firewalld on all hosts.

The recommended management cluster configuration is:

  • 3 Control Plane nodes;
  • 3 Worker nodes (or more).

The management cluster can be deployed on a single Control Plane node. See Resource requirements for details.

These requirements apply if you do not use the management cluster to run custom workloads. If you use the management cluster as a standalone cluster, allocate additional resources for custom workloads on top of the requirements below.

ParameterCPU (vCPU)Memory (GiB)Disk (GiB)IOPS
Mirror (Registry)416300300
Control Plane node1216200600
Worker node1562800600

Client cluster

Client clusters can be created after the management cluster is deployed successfully. Clusters can be deployed in a secure configuration. This option sets up a secure connection to Kubelet and automatically configures an audit policy. You can create client clusters with different Kubernetes versions under one management cluster.

You can create client clusters using pre-provisioned hosts or infrastructure provider templates:

ParameterCPU (vCPU)Memory (GiB)Disk (GiB)IOPS
Control Plane node1216200600
Worker*2 + WL*8100300
Infra Worker1616800600

The Worker node requirement of 2 + WL applies only when Infra Worker nodes are present in the cluster. It means you must add the CPU required for custom workloads to the minimum count (2 CPU). When no Infra Worker nodes are present, use the recommended Worker node requirement of 16 + WL.

You can create and manage clusters:

  • in the GUI;
  • from the command line using commands;
  • through the API (for example, to embed requests in CI/CD pipelines).

Management cluster interaction with client clusters

The management cluster:

  • manages cluster creation and client cluster infrastructure objects (including machines and machinehealthchecks);
  • provides centralized access management, including user permissions and sessions;
  • provides centralized storage and GUI visualization of client cluster metrics and logs.

Network interaction between the management cluster and client clusters in different configurations is described here.

Installation

The shtil initial deployment utility is used to deploy the Shturval platform. It supports deployment in open and closed (air-gapped) environments. All information required for platform installation is available in the Installation section.

Updates

The platform releases two types of versions:

  • minor. Minor versions are released four times per year, once per quarter. The two most recent minor versions are supported. Bug fixes and component vulnerability remediations are not released for unsupported versions.
  • patch. Patch versions are released optionally when vulnerabilities and defects need to be addressed.

Manual and automatic cluster updates are available for each version type. Each cluster is updated independently. Updates are available in closed and open environments.

For more details on how updates work, see here.

Shturval release version and Kubernetes version mapping

Version mapping
Release versionKubernetes version
2.13.11.34.3
2.13.01.34.3
2.12.11.34.1
2.12.01.34.1
2.11.01.33.1
2.10.01.32.3
2.9.21.31.8
2.9.11.31.3
2.8.11.30.5
2.8.01.30.5
2.7.21.29.6
2.7.11.29.6
2.7.01.29.4
2.6.11.29.1
2.6.01.29.1
2.5.31.28.9
2.5.21.28.3
2.5.11.28.3
2.5.01.28.3
2.4.11.27.6
2.4.01.27.6
2.3.31.26.10
2.3.21.26.5
2.3.11.26.5
2.3.01.26.5
2.2.61.25.9
2.2.51.25.9
2.2.41.25.9
2.2.01.25.9

For clusters running Kubernetes 1.34.x, see Cluster troubleshooting for operational details.

Authentication and authorization

The platform does not store users. The exception is the built-in (backup) account with administrative rights created by default during platform installation.

For user authentication, the platform integrates with a centralized directory service. Supported directories include:

  • Active Directory;
  • OpenLDAP;
  • FreeIPA;
  • ALDPro;
  • SambaDC.

The internal authentication service is used by default. You can connect an external service that supports OIDC OAuth 2.0, such as Blitz or Keycloak.

The platform includes a predefined set of access roles for flexible access configuration at multiple levels:

  • the management cluster and all client clusters;
  • the management cluster or a specific client cluster;
  • specific objects in the management cluster or a client cluster;
  • a specific namespace in the management cluster or a client cluster;
  • specific objects in a namespace of the management cluster or a client cluster.

Every request is authorized. For example, if a user’s access rights change after authentication, unauthorized access is denied.

Using services

During platform and client cluster installation, you can choose services to deploy automatically. The service list is available here. All services are scanned for vulnerabilities before use in the platform.

Logging and monitoring

VM Agent is used to collect metrics in client clusters and the management cluster. Vector collects logs. Cluster logs are available on the Logs tab of the cluster dashboard. Metrics are available on preconfigured Grafana dashboards. Grafana access uses SSO with the role model.

If a cluster is installed in a secure configuration, an Audit Policy is configured automatically and a corresponding project is created in VLogs. You can flexibly manage alerting from the platform GUI.

Graphical interface

The platform GUI is available in Russian and English with light or dark themes. It includes tooltips and informational messages to simplify platform use. The GUI also supports object management through manifest import and YAML manifest editing. Platform GUI pages link to documentation for the corresponding platform version.

Security

The Shturval platform includes built-in tools for cluster security:

You can also install overlay security tools, such as Kaspersky Container Security.

Backup and restore

The Shturval platform includes a Velero-based backup and restore module. Manual and automated backups are available in clusters and namespaces. S3 storage is required to store backups.