Yandex Cloud
Поиск
Связаться с экспертомПопробовать бесплатно
  • Кейсы
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
  • Marketplace
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Искусственный интеллект
    • Безопасность
    • Инструменты DevOps
    • Бессерверные вычисления
    • Управление ресурсами
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Калькулятор цен
    • Тарифы
    • Акции и free tier
  • Кейсы
  • Документация
  • Блог
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»
Yandex Managed Service for Trino
RU
  • Начало работы
    • Все инструкции
      • Получение информации об имеющихся кластерах
      • Создание кластера
      • Изменение кластера
      • Обновление версии Trino
      • Остановка и запуск кластера
      • Подключение к кластеру
      • Управление доступом к кластеру
      • Техническое обслуживание
      • Управление ресурсными группами
      • Удаление кластера
  • Справочник Terraform
  • Квоты и лимиты
  • Управление доступом
  • Правила тарификации
  • Метрики Yandex Monitoring
  • Аудитные логи Audit Trails
  • История изменений

В этой статье:

  • Настройка групп безопасности
  • Группы безопасности для работы с Yandex MPP Analytics for PostgreSQL
  • Инструменты командной строки
  • Trino CLI
  • Подключение из графических IDE
  • WebSQL
  • Примеры строк подключения
  • Python
  • Java
  • Node.js
  1. Пошаговые инструкции
  2. Кластеры
  3. Подключение к кластеру

Подключение к кластеру Trino

Статья создана
Yandex Cloud
Обновлена 21 мая 2026 г.
  • Настройка групп безопасности
    • Группы безопасности для работы с Yandex MPP Analytics for PostgreSQL
  • Инструменты командной строки
    • Trino CLI
  • Подключение из графических IDE
  • WebSQL
  • Примеры строк подключения
    • Python
    • Java
    • Node.js

В этом разделе представлены настройки для подключения к кластеру Managed Service for Trino с помощью инструментов командной строки, из графических IDE и WebSQL. О подключении из кода вашего приложения см. Примеры строк подключения.

Подключаться к кластеру Managed Service for Trino, у которого включен приватный доступ, можно только из той сети, в которой расположен кластер.

Примечание

Если для подключения требуется указывать порт, используйте порт 443.

Настройка групп безопасностиНастройка групп безопасности

Группы безопасности не ограничивают входящий трафик кластера Managed Service for Trino и не влияют на доступность веб-интерфейса Trino. Настраивать правила для входящего трафика не нужно.

Вы можете использовать группы безопасности, чтобы задавать правила для исходящего трафика, например при настройке нового каталога.

Чтобы подключаться к кластеру Trino с виртуальной машины в Yandex Cloud, настройте группу безопасности ВМ, с которой будет происходить подключение. Пример правил для ВМ:

  • Для входящего трафика:

    • Диапазон портов — 22.
    • Протокол — TCP.
    • Источник — CIDR.
    • CIDR блоки — 0.0.0.0/0.

    Это правило позволяет подключаться к ВМ по протоколу SSH.

  • Для исходящего трафика:

    • Протокол — Любой (Any).
    • Диапазон портов — 0-65535.
    • Назначение — CIDR.
    • CIDR блоки — 0.0.0.0/0.

    Это правило разрешает любой исходящий трафик, что позволяет не только подключаться к кластеру, но и устанавливать на ВМ необходимые для этого утилиты.

Группы безопасности для работы с Yandex MPP Analytics for PostgreSQLГруппы безопасности для работы с Yandex MPP Analytics for PostgreSQL

Для подключения к кластеру Yandex MPP Analytics for PostgreSQL коннектор использует протокол GPFDIST:

  • Координаторы и воркеры Trino выполняют запросы к мастеру Yandex MPP Analytics for PostgreSQL через TCP-порт 6432.
  • Сегменты Yandex MPP Analytics for PostgreSQL передают данные на воркеры Trino через TCP-порт GPFDIST из диапазона 30078–30085.

Данные, передающиеся по протоколу GPFDIST между кластерами Yandex MPP Analytics for PostgreSQL и Trino, не шифруются. Чтобы обеспечить безопасное подключение, настройте группы безопасности на стороне Yandex MPP Analytics for PostgreSQL и (опционально) на стороне Managed Service for Trino.

Настройка на стороне Yandex MPP Analytics for PostgreSQLНастройка на стороне Yandex MPP Analytics for PostgreSQL

Входящий трафик
Исходящий трафик
  • Правило для трафика внутри кластера Yandex MPP Analytics for PostgreSQL:

    • Диапазон портов — 0-65535.
    • Протокол — Любой (Any).
    • Источник — Группа безопасности.
    • Группа безопасности — Текущая (Self).
  • Правило для подключения из кластера Trino:

    • Диапазон портов — 6432.
    • Протокол — TCP.
    • Источник — Группа безопасности.
    • Группа безопасности — укажите группу безопасности кластера Trino.
  • Правило для трафика внутри кластера Yandex MPP Analytics for PostgreSQL:

    • Диапазон портов — 0-65535.
    • Протокол — Любой (Any).
    • Источник — Группа безопасности.
    • Группа безопасности — Текущая (Self).
  • Правило для подключения к кластеру Trino:

    • Диапазон портов — 30078-30085.
    • Протокол — TCP.
    • Источник — Группа безопасности.
    • Группа безопасности — укажите группу безопасности кластера Trino.

Настройка на стороне Managed Service for TrinoНастройка на стороне Managed Service for Trino

Правила групп безопасности на стороне Trino настраиваются зеркально правилам на стороне Yandex MPP Analytics for PostgreSQL. Настройка правил для кластера Trino является опциональной, но позволяет дополнительно обезопасить кластер.

Входящий трафик
Исходящий трафик

Правило для приема данных от сегментов Yandex MPP Analytics for PostgreSQL:

  • Диапазон портов — 30078-30085.
  • Протокол — TCP.
  • Источник — Группа безопасности.
  • Группа безопасности — укажите группу безопасности кластера Yandex MPP Analytics for PostgreSQL.

Правило для подключения к мастеру Yandex MPP Analytics for PostgreSQL:

  • Диапазон портов — 6432.
  • Протокол — TCP.
  • Источник — Группа безопасности.
  • Группа безопасности — укажите группу безопасности кластера Yandex MPP Analytics for PostgreSQL.

Инструменты командной строкиИнструменты командной строки

Trino CLITrino CLI

Если у вас еще нет интерфейса командной строки Trino, установите его по инструкции на официальном сайте Trino.

Чтобы подключиться к кластеру Managed Service for Trino:

  1. Создайте IAM-токен и поместите его в переменную окружения TRINO_PASSWORD:

    export TRINO_PASSWORD=$(yc iam create-token)
    

    IAM-токен, хранящийся в переменной TRINO_PASSWORD, служит паролем для подключения к кластеру Managed Service for Trino. Чтобы использовать его, укажите при подключении флаг --password.

  2. Подключитесь к кластеру Managed Service for Trino:

    ./trino c-<идентификатор_кластера>.trino.yandexcloud.net --user iam --password
    

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

Подключение из графических IDEПодключение из графических IDE

Перед подключением:

  1. Создайте IAM-токен:

    yc iam create-token
    
  2. Сохраните полученный токен. Он будет использоваться в качестве пароля при подключении.

DataGrip
DBeaver
  1. Создайте источник данных:
    1. Выберите в меню File → New → Data Source → Trino.
    2. Введите имя источника данных.
    3. Укажите параметры подключения на вкладке General:
      • Host — c-<идентификатор_кластера>.trino.yandexcloud.net.

        Если вы подключаетесь к кластеру Managed Service for Trino через сервисное подключение, то в качестве адреса хоста укажите c-<идентификатор_кластера>.trino.pe.yandexcloud.net.

      • Port — 443.

      • User — iam.

      • Password — созданный ранее IAM-токен.

  2. Нажмите ссылку Test Connection для проверки подключения. При успешном подключении будет выведен статус подключения, информация о СУБД и драйвере.
  3. Нажмите кнопку OK, чтобы сохранить источник данных.
  1. Создайте новое соединение с БД:
    1. Выберите в меню База данных пункт Новое соединение.
    2. Выберите из списка Trino.
    3. Нажмите кнопку Далее.
    4. Укажите параметры подключения на вкладке Главное:
      • Хост — c-<идентификатор_кластера>.trino.yandexcloud.net.

        Если вы подключаетесь к кластеру Managed Service for Trino через сервисное подключение, то в качестве адреса хоста укажите c-<идентификатор_кластера>.trino.pe.yandexcloud.net.

      • Порт — 443.

      • В блоке Аутентификация укажите:

        • Имя пользователя — iam;
        • Пароль пользователя — созданный ранее IAM-токен.
  2. Нажмите кнопку Тест соединения ... для проверки подключения. При успешном подключении будет выведен статус подключения, информация о СУБД и драйвере.
  3. Нажмите кнопку Готово, чтобы сохранить настройки соединения с БД.

WebSQLWebSQL

  1. Перейдите на страницу каталога.

  2. Перейдите в сервис Managed Service for Trino.

  3. Откройте ваш кластер Managed Service for Trino.

  4. Перейдите в раздел WebSQL.

  5. Нажмите кнопку Перейти в WebSQL.

  6. В открывшемся редакторе SQL-запросов выполните запрос:

    SELECT version() AS version;
    

    В ответе на запрос будет информация о версии Trino.

Примеры строк подключенияПримеры строк подключения

PythonPython

Перед подключением:

  1. Установите зависимости:

    pip3 install trino
    
  2. Создайте IAM-токен и поместите его в переменную окружения TOKEN:

    export TOKEN=$(yc iam create-token)
    
Подключение
  1. Пример кода:

    connect.py

    import os
    from contextlib import closing
    from trino.dbapi import connect
    from trino.auth import BasicAuthentication
    
    TIMEOUT = 10
    COORDINATOR_URL = 'c-<идентификатор_кластера>.trino.yandexcloud.net'
    IAM_TOKEN = os.environ['TOKEN']
    
    def get_version():
        auth = BasicAuthentication(username='iam', password=IAM_TOKEN)
        with closing(connect(host=COORDINATOR_URL, port=443, auth=auth, request_timeout=TIMEOUT)) as conn:
            with closing(conn.cursor()) as cur:
                cur.execute('SELECT version() as version')
                rows = cur.fetchall()
                print(rows[0])
    
    if __name__ == "__main__":
        get_version()
    

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

    Если вы подключаетесь к кластеру Managed Service for Trino через сервисное подключение, то в качестве адреса хоста укажите c-<идентификатор_кластера>.trino.pe.yandexcloud.net.

  2. Подключение:

    python3 connect.py
    

JavaJava

Перед подключением:

  1. Установите зависимости:

    sudo apt update && sudo apt install --yes openjdk-21-jre maven
    
  2. Создайте директорию для проекта Maven:

    cd ~/ && mkdir -p project/src/main/java/com/example && cd project/
    
  3. Создайте конфигурационный файл для Maven:

    pom.xml
    <?xml version="1.0" encoding="utf-8"?>
    <project xmlns="http://maven.apache.org/POM/4.0.0"
            xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
            xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
    
        <modelVersion>4.0.0</modelVersion>
        <groupId>com.example</groupId>
        <artifactId>app</artifactId>
        <version>0.1.0</version>
        <packaging>jar</packaging>
        <properties>
            <maven.compiler.source>21</maven.compiler.source>
            <maven.compiler.target>21</maven.compiler.target>
            <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
        </properties>
        <dependencies>
            <dependency>
                <groupId>io.trino</groupId>
                <artifactId>trino-jdbc</artifactId>
                <version>469</version>
            </dependency>
        </dependencies>
        <build>
            <finalName>${project.artifactId}-${project.version}</finalName>
            <plugins>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-assembly-plugin</artifactId>
                    <version>3.7.1</version>
                    <executions>
                        <execution>
                            <goals>
                                <goal>single</goal>
                            </goals>
                            <phase>package</phase>
                            <configuration>
                                <descriptorRefs>
                                    <descriptorRef>
                                        jar-with-dependencies</descriptorRef>
                                </descriptorRefs>
                                <archive>
                                    <manifest>
                                        <mainClass>com.example.App</mainClass>
                                    </manifest>
                                </archive>
                            </configuration>
                        </execution>
                    </executions>
                </plugin>
                <plugin>
                    <groupId>org.apache.maven.plugins</groupId>
                    <artifactId>maven-jar-plugin</artifactId>
                    <version>3.4.2</version>
                    <configuration>
                        <archive>
                            <manifest>
                                <mainClass>com.example.App</mainClass>
                            </manifest>
                        </archive>
                    </configuration>
                </plugin>
            </plugins>
        </build>
    </project>
    
    
  4. Создайте IAM-токен и поместите его в переменную окружения TOKEN:

    export TOKEN=$(yc iam create-token)
    
Подключение
  1. Пример кода:

    src/main/java/com/example/App.java

    package com.example;
    
    import java.sql.DriverManager;
    import java.util.Properties;
    
    public class App {
        private static final String COORDINATOR_URL = "c-<идентификатор_кластера>.trino.yandexcloud.net";
    
        public static void main(String[] args) {
            String url = String.format("jdbc:trino://%s", COORDINATOR_URL);
            String iamToken = System.getenv("TOKEN");
      
            Properties properties = new Properties();
            properties.setProperty("user", "iam");
            properties.setProperty("password", iamToken);
            properties.setProperty("SSL", "true");
    
            try (var connection = DriverManager.getConnection(url, properties)) {
                var rs = connection.createStatement().executeQuery("SELECT version() as VERSION");
                if (rs.next()) {
                    System.out.println(rs.getString(1));
                }
            } catch (Exception e) {
                e.printStackTrace();
            }
        }
    }
    
    

    Идентификатор кластера можно запросить со списком кластеров в каталоге.

    Если вы подключаетесь к кластеру Managed Service for Trino через сервисное подключение, то в качестве адреса хоста укажите c-<идентификатор_кластера>.trino.pe.yandexcloud.net.

  2. Сборка и подключение:

    mvn clean package && \
    java -jar target/app-0.1.0-jar-with-dependencies.jar
    

Node.jsNode.js

Перед подключением:

  1. Установите зависимости:

    sudo apt update && sudo apt install --yes nodejs npm && \
    npm install trino-client
    
  2. Создайте IAM-токен и поместите его в переменную окружения TOKEN:

    export TOKEN=$(yc iam create-token)
    
Подключение

app.mjs

"use strict";
import {BasicAuth, Trino} from 'trino-client';

const COORDINATOR_URL = 'c-<идентификатор_кластера>.trino.yandexcloud.net'
let TOKEN = process.env.TOKEN

async function get_version() {
    const trino = Trino.create({server: COORDINATOR_URL,auth: new BasicAuth('iam', TOKEN)});
    const query = await trino.query('SELECT version() as VERSION');
    const queryResult = await query.next()
    console.log(queryResult.value.data[0][0])
}

get_version();

Идентификатор кластера можно запросить со списком кластеров в каталоге.

Если вы подключаетесь к кластеру Managed Service for Trino через сервисное подключение, то в качестве адреса хоста укажите c-<идентификатор_кластера>.trino.pe.yandexcloud.net.

Подключение:

node app.mjs

Была ли статья полезна?

Предыдущая
Остановка и запуск кластера
Следующая
Управление доступом к кластеру
Создавайте контент и получайте гранты!Готовы написать своё руководство? Участвуйте в контент-программе и получайте гранты на работу с облачными сервисами!
Подробнее о программе
Проект Яндекса
© 2026 ТОО «Облачные Сервисы Казахстан»