Cassandra

Cassandra 状态存储组件的详细信息

配置

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

  1. apiVersion: dapr.io/v1alpha1
  2. kind: Component
  3. metadata:
  4. name: <NAME>
  5. namespace: <NAMESPACE>
  6. spec:
  7. type: state.cassandra
  8. version: v1
  9. metadata:
  10. - name: hosts
  11. value: <REPLACE-WITH-COMMA-DELIMITED-HOSTS> # Required. Example: cassandra.cassandra.svc.cluster.local
  12. - name: username
  13. value: <REPLACE-WITH-PASSWORD> # Optional. default: ""
  14. - name: password
  15. value: <REPLACE-WITH-PASSWORD> # Optional. default: ""
  16. - name: consistency
  17. value: <REPLACE-WITH-CONSISTENCY> # Optional. default: "All"
  18. - name: table
  19. value: <REPLACE-WITH-TABLE> # Optional. default: "items"
  20. - name: keyspace
  21. value: <REPLACE-WITH-KEYSPACE> # Optional. default: "dapr"
  22. - name: protoVersion
  23. value: <REPLACE-WITH-PROTO-VERSION> # Optional. default: "4"
  24. - name: replicationFactor
  25. value: <REPLACE-WITH-REPLICATION-FACTOR> # Optional. default: "1"

Warning

以上示例将密钥明文存储, It is recommended to use a secret store for the secrets as described here.

元数据字段规范

字段必填详情Example
hostsY主机的逗号分隔值“cassandra.cassandra.svc.cluster.local”.
portN通信端口 默认值:9042“9042”
usernameY数据库用户名。 无默认值“user”
passwordY用户密码“password”
consistencyN一致性值“All”, “Quorum”
tableN表名称 默认值为 “items”“items”, “tab”
keyspaceN要使用的cassandra keyspace。 默认值为 “dapr”“dapr”
protoVersionN客户端的 proto 版本。 默认值为 “4”“3”, “4”
replicationFactorN调用的副本因子。 默认值为 “1”“3”

配置 Cassandra

您可以使用 DataStax Docker Image 在本地运行Cassandra:

  1. docker run -e DS_LICENSE=accept --memory 4g --name my-dse -d datastax/dse-server -g -s -k

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

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

  1. kubectl create namespace cassandra
  2. helm install cassandra incubator/cassandra --namespace cassandra

默认情况下,这会将Cassandra安装到 cassandra· 命名空间中。 要与 Cassandra 交互,请通过 kubectl get svc -n cassandra 找到 service。

例如,如果使用上面的例子安装,Cassandra DNS 将是:

cassandra.cassandra.svc.cluster.local

相关链接