# ============================================================================= # eBdesk SiCABE — Ingestion agent OpenMetadata: Trino (Iceberg via Nessie) # ============================================================================= # Menjelaskan mengapa file ini ada: # Membuat SERVICE di OpenMetadata hanya menyimpan konfigurasi koneksi. Metadata # sesungguhnya (database → schema → tabel → kolom) baru diambil oleh AGENT # (ingestion pipeline). Halaman Explore membaca search index, dan index itu # hanya terisi setelah agent berjalan. Tanpa file ini, service `trino_sicabe` # ada tetapi Explore kosong. # # Catatan skema (penting, berbeda dari skema API): # - di API OM 1.13.1 field TLS 'verifySSL' DITOLAK; di Ingestion Framework # yang benar adalah `verify` (string), di sini "false" karena sertifikat Trino # self-signed. # - `username` wajib di level config; `authType` memakai BasicAuth (username+password). # - Identitas agent = `svc_om` dengan role `data-catalog`: baca-saja # (select + kolom "*" untuk SEMUA tabel) sehingga katalog Explore LENGKAP, # namun TANPA hak write/ddl. (Sebelumnya identitas ini memakai `data-analyst` # sehingga katalog hanya sebagian.) # # Jalankan (butuh TRINO_SVC_OM_PASSWORD & OM_JWT_TOKEN di environment): # metadata ingest -c ingest-trino.yaml # ============================================================================= source: type: trino serviceName: trino_sicabe serviceConnection: config: type: Trino scheme: trino hostPort: trino-coordinator:8443 username: svc_om # BasicAuth hanya berisi `password` (username ada di level config) — # sesuai contoh resmi 'metadata ingest' untuk Trino. authType: password: ${TRINO_SVC_OM_PASSWORD} catalog: iceberg # `verify` adalah path CA bundle (string) — OM hanya meneruskannya bila # truthy, dan klien Trino memperlakukannya sebagai path. Memakai sertifikat # Trino (diekspor scripts/generate-trino-keystore.sh, di-mount ke # /etc/ssl/trino) membuat TLS DIVERIFIKASI, bukan dimatikan. verify: /etc/ssl/trino/trino.crt supportsMetadataExtraction: true supportsProfiler: true supportsQueryComment: true # Batasi ke namespace yang dikelola (bronze/silver/gold). Karena ini # pattern di level KONEKSI, filter schema juga tersedia di sourceConfig. schemaFilterPattern: includes: - bronze - silver - gold sourceConfig: config: type: DatabaseMetadata markDeletedTables: false includeTables: true includeViews: true includeTags: false sink: type: metadata-rest config: {} workflowConfig: loggerLevel: INFO openMetadataServerConfig: hostPort: http://openmetadata-server:8585/api authProvider: openmetadata securityConfig: jwtToken: ${OM_JWT_TOKEN}