Skip to main content

Install the connector

The connector is a Trino plugin, installed into an existing Trino deployment. Deploy Trino first following the Trino deployment documentation.

For Kubernetes, see Connectors on Kubernetes, which covers the image and init container approaches.

Requirements

Trino server 435 through 478. An unsupported version can be forced with gravitino.trino.skip-version-validation, untested.

Every Trino node needs network access to the Gravitino server, on 8090 by default, and to the underlying catalog systems. The Hive, Iceberg, MySQL, and PostgreSQL connectors must be installed in Trino, since this connector delegates to them.

The coordinator must run with catalog.management=dynamic, which is not the default.

Choosing the Package

The connector is built against six Trino version segments and the package has to match the server.

Trino serverPackage segment
435 to 439trino-connector-435-439
440 to 445trino-connector-440-445
446 to 451trino-connector-446-451
452 to 468trino-connector-452-468
469 to 472trino-connector-469-472
473 to 478trino-connector-473-478

Archives are named gravitino-trino-connector-{segment}-{version}.tar.gz and published on GitHub Releases. To build one instead:

./gradlew :trino-connector:{segment}:assembleTrinoConnector

The archive lands in distribution/.

Installing

Unpack the archive, rename the resulting directory to gravitino, and copy it into Trino's plugin directory. The rename is required, not cosmetic, and the plugin path differs between Trino images and distributions.

Enable dynamic catalog management in etc/config.properties on the coordinator.

catalog.management=dynamic

Create etc/catalog/gravitino.properties with at least connector.name, gravitino.uri, and gravitino.metalake. The full property set is on the Trino connector page.

Restart Trino, then confirm with SHOW CATALOGS. The gravitino catalog means the plugin loaded. Catalogs from your metalake appearing beside it means the server connection works. A gravitino catalog alone usually means dynamic catalog management is off, the metalake name is wrong, or the server is unreachable from the Trino nodes.

Connector logging is optional and enabled with a JVM argument.

-Dlog4j.configurationFile=file:///etc/trino/log4j2.properties