Cassandra

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

组件格式

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

apiVersion: dapr.io/v1alpha1
kind: Component
metadata:
  name: <NAME>
spec:
  type: state.cassandra
  version: v1
  metadata:
  - name: hosts
    value: <用逗号分隔的主机列表> # 必需。示例:cassandra.cassandra.svc.cluster.local
  - name: username
    value: <用户名> # 可选。默认值:""
  - name: password
    value: <密码> # 可选。默认值:""
  - name: consistency
    value: <一致性级别> # 可选。默认值:"All"
  - name: table
    value: <表名> # 可选。默认值:"items"
  - name: keyspace
    value: <键空间> # 可选。默认值:"dapr"
  - name: protoVersion
    value: <协议版本> # 可选。默认值:"4"
  - name: replicationFactor
    value: <复制因子> # 可选。默认值:"1"

规格元数据字段

字段必需说明示例
hosts用逗号分隔的主机列表"cassandra.cassandra.svc.cluster.local"
port通信端口。默认值为 "9042""9042"
username数据库用户的用户名。无默认值"user"
password用户的密码"password"
consistency一致性级别"All""Quorum"
table表名。默认值为 "items""items""tab"
keyspace要使用的 Cassandra 键空间。默认值为 "dapr""dapr"
protoVersion客户端的协议版本。默认值为 "4""3""4"
replicationFactor复制因子。默认值为 "1""3"

设置 Cassandra


您可以使用 Datastax 的 Docker 镜像在本地运行 Cassandra:

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

然后可以通过 localhost:9042 与服务器交互。


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

kubectl create namespace cassandra
helm install cassandra incubator/cassandra --namespace cassandra

这会默认将 Cassandra 安装到 cassandra 命名空间中。 要与 Cassandra 交互,请使用以下命令查找服务:kubectl get svc -n cassandra

例如,如果使用上述示例进行安装,Cassandra 的 DNS 将是:

cassandra.cassandra.svc.cluster.local

相关链接