Jun 5, 2025

Error listing tables for catalog opensearch: Timeout connecting to

When you have this error trino in Docker and OpenSearch in your local machine. Run the follow command in trino Docker.

docker exec -it trino bash //Acess trino host bash shell

curl -v -u {{username}}:{{password}} https://host.docker.internal:9200 // HTTPS

curl -v http://host.docker.internal:9200 //HTTP


*   Trying 192.168.65.254:9200...

* Connected to host.docker.internal (192.168.65.254) port 9200(#0)

> GET / HTTP/1.1

> Host: host.docker.internal:9200

> User-Agent: curl/7.76.1

> Accept: */*

>

* Mark bundle as not supporting multiuse

< HTTP/1.1 200 OK

< content-type: application/json; charset=UTF-8

< content-length: 567

<

{

  "name" : "localhost",

  "cluster_name" : "aa_cr_elasticsearch",

  "cluster_uuid" : "5Oup3egsQtm_QJhlhKbopA",

  "version" : {

    "distribution" : "opensearch",

    "number" : "2.18.0",

    "build_type" : "zip",

    "build_hash" : "99a9a81da366173b0c2b963b26ea92e15ef34547",

    "build_date" : "2024-10-31T19:08:37.998479Z",

    "build_snapshot" : false,

    "lucene_version" : "9.12.0",

    "minimum_wire_compatibility_version" : "7.10.0",

    "minimum_index_compatibility_version" : "7.0.0"

  },

  "tagline" : "The OpenSearch Project: https://opensearch.org/"

}

* Connection #0 to host host.docker.internal left intact



Add the following setting to opensearch.yml and your trino can see indices.

network.host: 0.0.0.0
network.publish_host: 192.168.65.254

May 22, 2025

Setup Superset(4.1.2) with OpenSearch(2.1.8) in Windows

 

Prerequisites

  • Docker Desktop: Install Docker Desktop with WSL 2 enabled (for Windows users). 

    • Make sure virtualization settiong of BIOS. It should be ON.

  • Python: Ensure you have Python 3.9 or 3.10 installed.

  • WSL (Optional but recommended for Windows): Enable WSL and install a Linux distribution like Ubuntu from the Microsoft Store. 

  • OpenSearch: Ensure SQL plugin installed.

Setup Docker Compose:

  • Clone the Superset repository: Use git clone https://github.com/apache/superset.git to clone the repository. 

  • Navigate to the Superset directory: cd superset

  • Run Docker Compose: Execute docker compose up (or docker-compose up) to start the Superset containers. This will launch the necessary services, including the Superset backend and frontend. 

Access Superset:

  • Open a web browser and go to http://localhost:8088/. You should see the Superset login page. admin/admin

Connect OpenSearch

Elasticsearch is not default DB. We need to add it.

Add Elasticsearch connector

  1. Create requirements-local.txt under github\superset\docker

     

  2. Add the driver, elasticsearch-dbapi selected in step 1 above

    echo "elasticsearch-dbapi" >> ./docker/requirements-local.txt
  3. Rebuild your local image with the new driver baked in

    docker-compose build --force-rm
  4. Fire things back up

    docker-compose up

Add database(Elasticsearch) to Superset

  1. Click “Database Connections” on the top right Settings menu.

    image-20250506-195349.png
  2. Click “+ Database”

    image-20250506-195528.png
  3. Select ElasticSearch(OpenDistro SQL)

    image-20250509-041526.png


  4. Set URI: odelasticsearch+https://user:password@host.docker.internal:9200/?verify_certs=False&v2=true

    b10820e9-f6af-4478-a0b5-46b1e180f925.png
  5. Create a new SQL: Database: OpenSearch, Schema: default, See table schema: your index

  6. Create a chart: Click “Create Chart” button. You can see table chart.

    image-20250510-020202.png