Skip to main content
Community Hub

Connect on-premises databases to Kubernetes

TL;DR

You can configure and use [Atlan's metadata-extractor tool](/apps/connectors/database/on-premises-databases/how-tos/set-up-on-premises-database-access) to extract metadata from on-premises databases with Kubernetes deployment architecture, as an alternative to using Docker Compose.

Your AI can read this via Docs MCPcurl -fsSL "https://docs.atlan.com/install-docs-mcp" | bashConnect
Deprecated

This job execution mode was deprecated on June 30, 2026 and is no longer supported or maintained, including bug fixes. Existing workflows may break/be disabled without warning. For all implementations, switch to Self-deployed runtime.

Overview: You will need access to a machine that can run Kubernetes on-premises. You will also need your database access details, including credentials.

You can configure and use Atlan's metadata-extractor tool to extract metadata from on-premises databases with Kubernetes deployment architecture, as an alternative to using Docker Compose.

Get metadata-extractor tool​

To get the metadata-extractor tool:

  1. Raise a support ticket to get a link to the latest version.
  2. Download the image using the link provided by support.

Load image to Kubernetes cluster​

You can't upload the extractor image directly to a Kubernetes cluster. You must upload the extractor image to a container registry that your Kubernetes cluster can access. This ensures that Kubernetes can readily deploy pods with the metadata-extractor tool.

Apply configuration maps​

ConfigMaps contain essential settings that enable the metadata-extractor tool to connect to your database, including connection details and extraction parameters. This can help you customize the extraction process to fit your database environment.

  1. Deploy configurations to your specific database setup:

    kubectl apply -f config-maps.yml
  2. Create a config-maps.yml containing your database settings, for example:

    apiVersion: v1
    kind: ConfigMap
    metadata:
    name: atlan-extractor-config-mysql
    data:
    DOWNLOAD_JDBC: "true"
    DOWNLOAD_JDBC_URL: "https://example.com/path/to/jdbc-driver.tar.gz"
    DRIVER: "com.example.jdbc.Driver"
    # Add other necessary configurations as key-value pairs
    • Replace example values with details of your database connection and the JDBC driver.

Deploy extraction job​

Set up the CronJob for metadata extraction from the database:

kubectl apply -f job.yml

Example​

Create a job.yml for the extraction job with details like the following:

apiVersion: batch/v1
kind: CronJob
metadata:
name: atlan-extractor-cron-job
spec:
schedule: "@weekly"
jobTemplate:
spec:
template:
spec:
containers:
- name: crawler
image: your-registry/path-to-extractor-image:latest
# Define environment variables and volume mounts as required

Configure cron job schedule​

The CronJob is configured to execute weekly by default.

To configure the CronJob schedule:

  1. Open the job.yml file.
  2. In the spec section, for schedule:, replace the "@weekly" cron expression with your preferred schedule. For example, use "@daily" for daily executions or provide a custom cron schedule.

For more information on CronJob schedules, refer to Kubernetes documentation.

Trigger job manually​

To trigger an immediate metadata extraction, execute the CronJob manually:

kubectl create job --from=cronjob/atlan-extractor-cron-job crawl-mysql-$(date '+%Y-%m-%d-%H-%M-%S')

Request files from Atlan​

To get started, contact Atlan support to request sample ConfigMap and CronJob files for supported SQL connectors:

  • Microsoft SQL Server
  • MySQL
  • Oracle
  • PostgreSQL