Blob
Kubemq blob target connector allows services using kubemq server to access blob messaging services.

Prerequisites

The following are required to run the blob target connector:
  • kubemq cluster
  • Azure active storage account
  • Azure active with storage enable - with access account
  • kubemq-targets deployment

Configuration

blob target connector configuration properties:
Properties Key
Required
Description
Example
storage_account
yes
azure storage account name
"my_account"
storage_access_key
yes
azure storage access key
"abcd1234"
policy
no
azure blob retry policy
"retry_policy_exponential",retry_policy_fixed(default retry_policy_fixed)
max_tries
no
try at most x times to perform the operation
"3" default (1)
try_timeout
no
Maximum time allowed for any single try (Millisecond)
"600"default (1000)
retry_delay
no
Backoff amount for each retry (Millisecond)
"60" default (60)
max_retry_delay
no
Max delay between retries (Millisecond)
"180"default (180
Example:
1
bindings:
2
- name: kubemq-query-azure-blob
3
source:
4
kind: kubemq.query
5
name: kubemq-query
6
properties:
7
address: "kubemq-cluster:50000"
8
client_id: "kubemq-query-azure-blob-connector"
9
auth_token: ""
10
channel: "azure.storage.blob"
11
group: ""
12
concurrency: "1"
13
auto_reconnect: "true"
14
reconnect_interval_seconds: "1"
15
max_reconnects: "0"
16
target:
17
kind: azure.storage.blob
18
name: azure-storage-blob
19
properties:
20
storage_account: "id"
21
storage_access_key: "key"
Copied!

Usage

Upload

Upload metadata setting:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"upload"
file_name
yes
the name to upload the file under
"myfile.txt"
service_url
yes
service url path
data
yes
file data (byte array)
"bXktZmlsZS1kYXRh"
block_size
no
specifies the block size to use
"0" ,default(azblob.BlockBlobMaxStageBlockBytes)
parallelism
no
maximum number of blocks to upload in parallel
"upload",default(0)
blob_metadata
no
Key value string string of blob_metadata
"{"tag":"test","name":"myname"}"
Example:
1
{
2
"metadata": {
3
"method": "upload",
4
"file_name": "myfile.txt",
5
"service_url": "https://test.end.point.test.net/test"
6
},
7
"data": "bXktZmlsZS1kYXRh"
8
}
Copied!

Delete

Delete metadata setting:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"delete"
file_name
yes
the name of the file to delete
"myfile.txt"
service_url
yes
service url path
delete_snapshots_option_type
no
type of method
"only","include","" (default "")
Example:
1
{
2
"metadata": {
3
"method": "delete",
4
"file_name": "myfile.txt",
5
"service_url": "https://test.end.point.test.net/test"
6
},
7
"data": null
8
}
Copied!

get

For more information, see https://docs.microsoft.com/rest/api/storageservices/get-blob get metadata setting:
Metadata Key
Required
Description
Possible values
method
yes
type of method
"get"
file_name
yes
the name of the file to get
"myfile.txt"
service_url
yes
service url path
max_retry_request
no
type of method
"20" (default "1")
count
no
number of files to get
"20" (will get all from offset)
offset
no
start reading blob from offset
"20" (will start from the first byte in blob)
Example:
1
{
2
"metadata": {
3
"method": "get",
4
"file_name": "myfile.txt",
5
"service_url": "https://test.end.point.test.net/test"
6
},
7
"data": null
8
}
Copied!
Last modified 11mo ago