The documentation you are viewing is for Dapr v1.12 which is an older version of Dapr. For up-to-date documentation, see the latest version.

HashiCorp Consul

详细介绍了关于 HashiCorp Consul 状态存储 组件的信息

配置

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

apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
  name: <NAME>
  namespace: <NAMESPACE>
spec:
  type: state.consul
  version: v1
  metadata:
  - name: datacenter
    value: <REPLACE-WITH-DATA-CENTER> # Required. Example: dc1
  - name: httpAddr
    value: <REPLACE-WITH-CONSUL-HTTP-ADDRESS> # Required. Example: "consul.default.svc.cluster.local:8500"
  - name: aclToken
    value: <REPLACE-WITH-ACL-TOKEN> # Optional. default: ""
  - name: scheme
    value: <REPLACE-WITH-SCHEME> # Optional. default: "http"
  - name: keyPrefixPath
    value: <REPLACE-WITH-TABLE> # Optional. default: ""

元数据字段规范

字段 必填 详情 示例
datacenter Y Datacenter "dc1"
httpAddr Y Consul 服务器地址 "consul.default.svc.cluster.local:8500"
aclToken 请求 ACL 令牌。 默认值 "" "token"
scheme Scheme 是Consul服务器的 URI 方案。 默认值 "http" "http"
keyPrefixPath N Consul中的密钥前缀路径. 默认值 "" "dapr"

搭建 Hashicorp Consul


您可以使用 Docker 在本地运行Consul:

docker run -d --name=dev-consul -e CONSUL_BIND_INTERFACE=eth0 consul

然后您可以使用 localhost:8500 与服务器交互。


在 Kubernetes 上安装 Consul 最简单的方法是使用 Helm chart

helm install consul stable/consul

这将把 Consul 安装到 default 命名空间。 要与 Consul 进行交互,请使用以下方法找到服务:kubectl get svc consul.

例如,如果使用上面的例子安装,Consul主机地址将是:

consul.default.svc.cluster.local:8500

相关链接