Warning
You are currently viewing v"1.4" of the documentation and it is not the latest. For the most recent documentation, kindly click here.
This specification describes the aws-kinesis-stream
trigger that scales based on the shard count of AWS Kinesis Stream.
triggers:
- type: aws-kinesis-stream
metadata:
# Required
streamName: myKinesisStream
# Required
awsRegion: "eu-west-1"
# Optional: Default: 2
shardCount: "2"
identityOwner: pod | operator # Optional. Default: pod
Parameter list:
streamName
- Name of AWS Kinesis Stream.shardCount
- The target value that a Kinesis data streams consumer can handle. (Default: 2
, Optional)awsRegion
- AWS Region for the Kinesis Stream.identityOwner
- Receive permissions on the Kinesis Stream via Pod Identity or from the KEDA operator itself (see below). (Values: pod
, operator
, Default: pod
, Optional)When
identityOwner
set tooperator
- the only requirement is that the KEDA operator has the correct IAM permissions on the Kinesis Stream. Additional Authentication Parameters are not required.
These parameters are relevant only when
identityOwner
is set topod
.
You can use TriggerAuthentication
CRD to configure the authenticate by providing either a role ARN or a set of IAM credentials, or use other KEDA supported authentication methods.
Role based authentication:
awsRoleArn
- Amazon Resource Names (ARNs) uniquely identify AWS resource.Credential based authentication:
awsAccessKeyID
- Id of the user.awsSecretAccessKey
- Access key for the user to authenticate with.The user will need DescribeStreamSummary
IAM permission policy to read data from AWS Kinesis Streams.
apiVersion: v1
kind: Secret
metadata:
name: test-secrets
namespace: keda-test
data:
AWS_ACCESS_KEY_ID: <encoded-user-id>
AWS_SECRET_ACCESS_KEY: <encoded-key>
---
apiVersion: keda.k8s.io/v1alpha1
kind: TriggerAuthentication
metadata:
name: keda-trigger-auth-aws-credentials
namespace: keda-test
spec:
secretTargetRef:
- parameter: awsAccessKeyID # Required.
name: keda-aws-secrets # Required.
key: AWS_ACCESS_KEY_ID # Required.
- parameter: awsSecretAccessKey # Required.
name: keda-aws-secrets # Required.
key: AWS_SECRET_ACCESS_KEY # Required.
---
apiVersion: keda.k8s.io/v1alpha1
kind: ScaledObject
metadata:
name: aws-kinesis-stream-scaledobject
namespace: keda-test
labels:
test: nginx-deployment
spec:
scaleTargetRef:
deploymentName: nginx-deployment
triggers:
- type: aws-kinesis-stream
authenticationRef:
name: keda-trigger-auth-aws-credentials
metadata:
# Required
streamName: myKinesisStream
# Required
awsRegion: "eu-west-1"
# Optional: Default: 2
shardCount: "2"