Amazon SNS event source for Knative Eventing
This event source subscribes to notifications from a Amazon SNS topic and sends them as CloudEvents to an arbitrary
event sink.
Each instance of the SNS source is backed by a Knative Service that exposes a unique public HTTP(S) endpoint. This
endpoint is used to subscribe to the desired SNS topic on behalf of the user.
Contents
- Prerequisites
- Deployment to Kubernetes
Prerequisites
- Register an AWS account
- Create an Access Key in your AWS IAM dashboard.
- Create a Standard SNS topic.
Deployment to Kubernetes
The Amazon SNS event source can be deployed to Kubernetes as an AWSSNSSource object, to a cluster where the
TriggerMesh AWS Event Sources Controller is running.
ℹ The sample manifest below references AWS credentials (Access Key) from a Kubernetes Secret object
called awscreds. This Secret can be generated with the following command:
$ kubectl -n <my_namespace> create secret generic awscreds \
--from-literal=aws_access_key_id=<my_key_id> \
--from-literal=aws_secret_access_key=<my_secret_key>
Alternatively, credentials can be used as literal strings instead of references to Kubernetes Secrets by replacing
valueFrom attributes with value inside API objects' manifests.
Copy the sample manifest from config/samples/awssnssource.yaml and replace the pre-filled spec attributes with the
values corresponding to your Amazon SNS topic. Then, create that AWSSNSSource object in your Kubernetes cluster:
$ kubectl -n <my_namespace> create -f my-awssnssource.yaml