Ingest data from DynamoDB (installed locally)

Versions (relevant - OpenSearch/Dashboard/Server OS/Browser):

Data-Prepper-2.6.0

Describe the issue:

Hi there
I have a question about Ingesting data from DynamoDB using Data-Prepper.

We are using DynamoDB and OpenSearch Serverless, we successfully created OpenSearch Ingestion pipelines to sync data from DynamoDB to OpenSearch Serverless Collections (on AWS management console).

Now, we are building our own local development environment, we deployed DynamoDB, OpenSearch and Data-Prepper on Docker Containers. I tried to create a pipeline (shown in below) in order to sync data from local DynamoDB to local OpenSearch, but I got an error “awsAuthenticationConfig must not be null”.

I am not sure how to config awsAuthenticationConfig, since it is a DynamoDB hosted locally. Just wondering Data-Prepper supports ingesting data from DynamoDB to OpenSearch locally? or any suggestions for local development and testing?

Thanks

Configuration:

cdc-pipeline:
  source:
    dynamodb:
      tables:
        - table_arn: "arn:aws:dynamodb:ddblocal:000000000000:table/TableName"
          stream:
            start_position: "LATEST" # Read latest data from streams (Default)
  sink:
    - opensearch:
        hosts: [ "http://localhost:9200" ]
        username: "*****"
        password: "*****"
        insecure: true
        index: "indexName"
        index_type: custom

Relevant Logs or Screenshots:

org.opensearch.dataprepper.model.plugin.InvalidPluginConfigurationException: Plugin dynamodb in pipeline cdc-pipeline is configured incorrectly: awsAuthenticationConfig must not be null

I’m trying to do same thing using dynamodb and opensearch on a localstack container.
For awsAuthenticationConfig I used region localhost because that was used as region on my local table arn.

  source:
    dynamodb:
      tables:
        - table_arn: "arn:aws:dynamodb:localhost:000000000000:table/tablename"
          # Remove the stream block if only export is needed
          stream:
            start_position: "LATEST"
      aws:
        region: "localhost"

Then I started to get this error and that happens when you use DataPrepper inMemoryCoordinator, then I tried to use a DynamoDB based Coordinator and I wasn’t able to have it pointing to my local dynamoDb since it requires a role

I’ve got the same issue, have you found a working solution @RobertoMoreno82?