2024-08-27 14:41:12 +05:30

3.7 KiB

title slug
Run the Amundsen Connector Externally /connectors/metadata/amundsen/yaml

{% connectorDetailsHeader name="Amundsen" stage="PROD" platform="OpenMetadata" availableFeatures=[] unavailableFeatures=[] / %}

In this section, we provide guides and references to use the Amundsen connector.

Configure and schedule Amundsen metadata and profiler workflows from the OpenMetadata UI:

{% partial file="/v1.5/connectors/external-ingestion-deployment.md" /%}

Requirements

Before this, you must create the service you want to get metadata for.
You can learn how to do it by folowing the initial part of the Connector documentation for the service. You can find the connectors list here.

Python Requirements

{% partial file="/v1.5/connectors/python-requirements.md" /%}

To run the Amundsen ingestion, you will need to install:

pip3 install "openmetadata-ingestion[amundsen]"

Metadata Ingestion

All connectors are defined as JSON Schemas. Here you can find the structure to create a connection to Amundsen.

In order to create and run a Metadata Ingestion workflow, we will follow the steps to create a YAML configuration able to connect to the source, process the Entities if needed, and reach the OpenMetadata server.

The workflow is modeled around the following JSON Schema

1. Define the YAML Config

{% codePreview %}

{% codeInfoContainer %}

Source Configuration - Service Connection

{% codeInfo srNumber=12 %}

hostPort: Host and port of the Amundsen Neo4j Connection. This expect a URI format like: bolt://localhost:7687.

{% /codeInfo %}

{% codeInfo srNumber=13 %}

username: Username to connect to the Amundsen. This user should have privileges to read all the metadata in Amundsen.

{% /codeInfo %}

{% codeInfo srNumber=14 %}

password: Password to connect to the Amundsen.

{% /codeInfo %}

{% codeInfo srNumber=15 %}

maxConnectionLifeTime: Maximum connection lifetime for the Amundsen Neo4j Connection.

{% /codeInfo %}

{% codeInfo srNumber=16 %}

validateSSL: Enable SSL validation for the Amundsen Neo4j Connection.

{% /codeInfo %}

{% codeInfo srNumber=17 %}

encrypted: Enable encryption for the Amundsen Neo4j Connection.

{% /codeInfo %}

Sink Configuration

{% codeInfo srNumber=18 %}

To send the metadata to OpenMetadata, it needs to be specified as type: metadata-rest.

{% /codeInfo %}

{% partial file="/v1.5/connectors/yaml/workflow-config-def.md" /%} {% /codeInfoContainer %}

{% codeBlock fileName="filename.yaml" %}

source:
  type: Amundsen
  serviceName: local_amundsen
  serviceConnection:
    config:
      type: Amundsen
      hostPort: http://localhost:10000
      username: username
      password: password
      maxConnectionLifeTime: 50
      validateSSL: false
      encrypted: false
  sourceConfig:
    config:
      type: DatabaseMetadata
sink:
  type: metadata-rest
  config: {}

{% partial file="/v1.5/connectors/yaml/workflow-config.md" /%}

{% /codeBlock %}

{% /codePreview %}

{% partial file="/v1.5/connectors/yaml/ingestion-cli.md" /%}