Kinesis
Kubemq kinesis target connector allows services using kubemq server to access aws kinesis service.
Prerequisites
The following required to run the aws-kinesis target connector:
kubemq cluster
aws account with kinesis active service
kubemq-source deployment
Configuration
sns target connector configuration properties:
Properties Key
Required
Description
Example
aws_key
yes
aws key
aws key supplied by aws
aws_secret_key
yes
aws secret key
aws secret key supplied by aws
region
yes
region
aws region
token
no
aws token ("default" empty string
aws token
Example:
bindings:
- name: kubemq-query-aws-kinesis
source:
kind: kubemq.query
name: kubemq-query
properties:
address: "kubemq-cluster:50000"
client_id: "kubemq-query-aws-kinesis"
auth_token: ""
channel: "query.aws.kinesis"
group: ""
auto_reconnect: "true"
reconnect_interval_seconds: "1"
max_reconnects: "0"
target:
kind: aws.kinesis
name: aws-kinesis
properties:
aws_key: "id"
aws_secret_key: 'json'
region: "region"
token: ""
Usage
List Streams
list kinesis streams
List Streams:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"list_streams"
Example:
{
"metadata": {
"method": "list_streams"
},
"data": null
}
List Stream Consumers
list kinesis Stream Consumers.
List Stream Consumers:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"list_stream_consumers"
stream_arn
yes
aws stream arn of the desired stream
"arn::mystream"
Example:
{
"metadata": {
"method": "list_stream_consumers",
"stream_arn": "arn::mystream"
},
"data": null
}
Create Stream
Create a kinesis Stream.
Create Stream:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"create_stream"
stream_name
yes
aws stream name as string
"string"
shard_count
no
number of shards to create (default 1)
"1"
Example:
{
"metadata": {
"method": "create_stream",
"stream_name": "my_stream",
"shard_count": "1"
},
"data": null
}
List Shards
list stream Shards .
List Shards:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"list_shards"
stream_name
yes
aws stream name as string
"string"
Example:
{
"metadata": {
"method": "list_shards",
"stream_name": "my_stream"
},
"data": null
}
Get Shard Iterator
Get Shard Iterator used to preform get data .
Get Shard Iterator:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"get_shard_iterator"
stream_name
yes
aws stream name as string
"string"
shard_iterator_type
yes
aws shard iterator type
shard_id
yes
aws shard full id (can be acquired using list shard)
Example:
{
"metadata": {
"method": "get_shard_iterator",
"shard_iterator_type": "LATEST",
"stream_name": "my_stream",
"shard_id": "8619-AWE1"
},
"data": null
}
Put Record
Send data to stream .
Put Record:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"put_record"
stream_name
yes
aws stream name as string
"string"
partition_key
yes
determines which shard in the stream the data record is assigned to.
data
yes
Message to send to stream
string
Example:
{
"metadata": {
"method": "put_record",
"partition_key": "0356",
"stream_name": "my_stream"
},
"data": "eyJteV9yZXN1bHQiOiJvayJ9"
}
Put Records
Send multi data to a stream .
Put Records:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"put_records"
stream_name
yes
aws stream name as string
"string"
data
yes
Key value pair of partition_key(string) and message([]byte)
key value of partition_key and message as key value pair https://docs.aws.amazon.com/kinesis/latest/APIReference/API_PutRecord.html
Example:
{
"metadata": {
"method": "put_records",
"stream_name": "my_stream"
},
"data": "eyIxIjoiZXlKdGVWOXlaWE4xYkhRaU9pSnZheUo5IiwiMiI6ImV5SnRlVjl5WlhOMWJIUXlJam9pYjJzaEluMD0ifQ=="
}
Put Records
Send multi data to a stream .
Put Records:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"put_records"
stream_name
yes
aws stream name as string
"string"
data
yes
Key value pair of partition_key(string) and message([]byte)
key value of partition_key and message as key value pair https://docs.aws.amazon.com/kinesis/latest/APIReference/API_PutRecord.html
Example:
{
"metadata": {
"method": "put_records",
"stream_name": "my_stream"
},
"data": "eyIxIjoiZXlKdGVWOXlaWE4xYkhRaU9pSnZheUo5IiwiMiI6ImV5SnRlVjl5WlhOMWJIUXlJam9pYjJzaEluMD0ifQ=="
}
Get Records
Get multi data from a stream .
Get Records:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"get_records"
stream_name
yes
aws stream name as string
"string"
limit
no
Number of limit message to get (default "1")
"int value"
Example:
{
"metadata": {
"method": "put_records",
"stream_name": "my_stream",
"limit": "1"
},
"data": null
}
Last updated
Was this helpful?