Blob
Kubemq blob target connector allows services using kubemq server to access blob messaging services.
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
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:
bindings:
- name: kubemq-query-azure-blob
source:
kind: kubemq.query
name: kubemq-query
properties:
address: "kubemq-cluster:50000"
client_id: "kubemq-query-azure-blob-connector"
auth_token: ""
channel: "azure.storage.blob"
group: ""
concurrency: "1"
auto_reconnect: "true"
reconnect_interval_seconds: "1"
max_reconnects: "0"
target:
kind: azure.storage.blob
name: azure-storage-blob
properties:
storage_account: "id"
storage_access_key: "key"
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:
{
"metadata": {
"method": "upload",
"file_name": "myfile.txt",
"service_url": "https://test.end.point.test.net/test"
},
"data": "bXktZmlsZS1kYXRh"
}
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:
{
"metadata": {
"method": "delete",
"file_name": "myfile.txt",
"service_url": "https://test.end.point.test.net/test"
},
"data": null
}
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:
{
"metadata": {
"method": "get",
"file_name": "myfile.txt",
"service_url": "https://test.end.point.test.net/test"
},
"data": null
}
Last modified 2yr ago