Azure Blob Storage

关于Azure Blob Store状态存储组件的详细信息

配置

要设置 Azure Blobstorage状态存储,请创建一个类型为state.azure.blobstorage的组件。 请参阅本指南,了解如何创建和应用状态存储配置。

apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
  name: <NAME>
  namespace: <NAMESPACE>
spec:
  type: state.azure.blobstorage
  version: v1
  metadata:
  - name: accountName
    value: <REPLACE-WITH-ACCOUNT-NAME>
  - name: accountKey
    value: <REPLACE-WITH-ACCOUNT-KEY>
  - name: containerName
    value: <REPLACE-WITH-CONTAINER-NAME>

元数据字段规范

字段 必填 详情 示例
accountName 存储帐户名称 "mystorageaccount".
accountKey 主要或次要存储密钥 "key"
containerName Dapr 状态的容器名称, 如果容器不存在,将会自动创建. "container"

安装Azure Blobstorage

请遵循 Azure 文档中关于如何创建 Azure Storage Account的说明

如果你想创建一个容器供Dapr使用,你可以事先这样做。 但是,当 Blob Storage状态提供者会在其不存在时为你自动创建。

要将 Azure Blob Storage配置为状态存储,你需要如下属性:

  • AccountName:存储账户名称 举例:mystorageaccount 举例:mystorageaccount
  • AccountKey:主要或次要存储密钥。
  • ContainerName:用于Dapr状态的容器名称。 如果容器不存在,将会自动创建.

应用配置

在Kubernetes中

要将 Azure Blob Storage状态存储应用到Kubernetes,请执行如下kubectl CLI:

kubectl apply -f azureblob.yaml

本地运行

要在本地运行,创建一个包含YAML文件的components目录,并提供dapr run命令的路径,标志为--components-path

这个状态存储在容器中创建一个blob文件,并将原始状态放在里面。

例如,以下操作来自于名为myservice的服务

curl -X POST http://localhost:3500/v1.0/state \
  -H "Content-Type: application/json"
  -d '[
        {
          "key": "nihilus",
          "value": "darth"
        }
      ]'

在容器中创建blob文件,文件名为key,文件内容为value

并发(Concurrency)

根据Azure Blob Storage文档,通过使用ETag实现Azure Blob Storage状态并发。

相关链接

Last modified January 1, 0001