Available in:  EE

The module lifecycle stagePreview
The module has requirements for installation

Module Overview

The managed-trino module manages Trino clusters in Kubernetes clusters. It allows users to configure and scale Trino clusters according to their needs, ensuring optimal performance and security. Key features:

  • Automatic deployment: Deploys a Trino instance using simple YAML configuration
  • Standalone: Supports single instance installation.
  • External Connections: Allows configuring meta storage such as Hive MetaStore and object storage such as S3
  • Configuration management: Separate Trino Class resource for templating approach to service creation with the ability to flexibly validate user configs
  • Status: Informative set of states for tracking deployed Trino.

Enabling the Module

To enable the managed-trino module, apply the following manifest:

apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
  name: managed-trino
spec:
  enabled: true
  version: 1

After enabling the module, a cluster resource TrinoClass named default will be automatically created.

Quick Start

For module usage examples, see:

Main Resources

The Managed Service Trino module offers tools for two conditional roles User and Administrator. The main objects of the module are the Trino, Trino Class resources and the Trino Operator state controller.

Conditional Administrator role:

  • manages the cluster wide Trino Class resource and creates validation templates, deployment rules, configuration for future services deployed in DKP.
  • Has access to the system namespace d8-managed-trino, where Trino Operator is deployed, to its service logs, state determination.

Conditional User role:

  • manages the Trino resource and configures the service taking into account the Trino Class created by the Administrator.

Administrator Resources

TrinoClass

The TrinoClass resource allows restricting the creation of invalid configurations and predefining some values. Each Trino resource must be associated with an existing TrinoClass resource. Before deploying the service, all configuration will be checked against the corresponding TrinoClass. Detailed resource description

Trino Operator

When the module is enabled, the Trino Operator controller is deployed in the system namespace d8-managed-trino and reconciles the states of Trino and the final service in all user namespaces.

User Resources

Trino

The main resource that describes the state of the service. Must be created inside a user namespace, and serves as the source of truth for the state of a specific deployed Trino service. Detailed resource description