Skip to content

numaproj-contrib/aws-sqs-sink-go

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

6 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AWS SQS Sink for Numaflow

The AWS SQS Sink is a custom user-defined sink for Numaflow that enables the integration of Amazon Simple Queue Service (SQS) as a sink within your Numaflow pipelines.

Quick Start

This quick start guide will walk you through setting up an AWS SQS sink in a Numaflow pipeline.

Prerequisites

Step-by-step Guide

1. Create an AWS SQS Queue

Using AWS CLI or the AWS Management Console, create a new SQS queue

2. Deploy a Numaflow Pipeline with AWS SQS Sink

apiVersion: numaflow.numaproj.io/v1alpha1
kind: Pipeline
metadata:
  name: simple-pipeline
spec:
  vertices:
    - name: in
      source:
        generator:
          # How many messages to generate in the duration.
          rpu: 1
          duration: 5s
          # Optional, size of each generated message, defaults to 10.
          msgSize: 10
    - name: aws-sink
      scale:
        min: 1
      sink:
        udsink:
          container:
            image: quay.io/numaio/numaproj-contrib/aws-sqs-sink-go:v0.0.1
            env:
              - name: AWS_SQS_QUEUE_NAME
                value: "test-queue"
              - name: AWS_REGION
                value: "us-east-1"
              - name: AWS_ACCESS_KEY_ID
                value: "testing" ## This can be passed as k8s secret as well
              - name: AWS_SECRET_ACCESS_KEY
                value: "testing" ## This can be passed as k8s secret as well
  edges:
    - from: in
      to: aws-sink

Then apply it to your cluster:

kubectl apply -f sqs-sink-pipeline.yaml

5. Verify the Log Sink

Verify the message using aws cli to poll message, refer: https://docs.aws.amazon.com/cli/latest/reference/sqs/receive-message.html

6. Clean up

To delete the Numaflow pipeline:

kubectl delete -f sqs-sink-pipeline.yaml

To delete the SQS queue:

aws sqs delete-queue --queue-url <YourQueueUrl>

Congratulations!!! You have successfully set up an AWS SQS sink in a Numaflow pipeline.

Additional Resources

For more information on Numaflow and how to use it to process data in a Kubernetes-native way, visit the Numaflow Documentation. For AWS SQS specific configuration, refer to the AWS SQS Documentation.

About

AWS SQS Sink for Numaflow implemented in Golang

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •