1

我已经创建了一个GKE集群,Cassandra我想nodetool在每个节点上运行以备份数据。我不知道该怎么做。

到目前为止,我已经SSH编辑到kubernetes集群上的节点,从那时起我就输了。我做了docker ps -a并且可以看到容器。我如何到达每个container/pod并取回?

4

2 回答 2

0

尝试本文中的步骤,获取您的 pod:

kubectl get pvc

接着:

kubectl exec cassandra-pod -- nodetool status

将 cassandra-pod 更改为 pod 名称。

于 2021-01-01T21:05:14.783 回答
0

@Manu Chadha

我不确定您使用哪种方法在 GKE 上安装 Cass,但使用 cass-operator 标签我将假设您使用了 Cass Operator。

这就是我到达豆荚的方式(需要豆荚名称):

kubectl -n cass-operator get pods
NAME                             READY   STATUS    RESTARTS   AGE
cass-operator-557f6689df-qftdf   1/1     Running   0          14m
cluster1-dc1-default-sts-0       2/2     Running   0          11m
cluster1-dc1-default-sts-1       2/2     Running   0          11m
cluster1-dc1-default-sts-2       2/2     Running   0          11m

接下来我可以使用 pod 名称访问 bash:

kubectl -n cass-operator exec --stdin cluster1-dc1-default-sts-0 -- /bin/bash

从 bash 我可以使用 nodetool 或 dsetool

您也可以像这样直接执行这些:

kubectl -n cass-operator exec -it -c cassandra cluster1-dc1-default-sts-0 -- nodetool status

我正在更新以回答有关备份的最后一个问题。使用 cass-operator 进行备份的方式有所不同。确保在您的 yaml 中包含启用的备份:

# Sized to work on 3 k8s workers nodes with 1 core / 4 GB RAM
# See neighboring example-cassdc-full.yaml for docs for each parameter
apiVersion: cassandra.datastax.com/v1beta1
kind: CassandraDatacenter
metadata:
  name: dc1
spec:
  clusterName: cluster1
  serverType: dse
  serverVersion: "6.8.4"
  managementApiAuth:
    insecure: {}
  size: 3
  storageConfig:
    cassandraDataVolumeClaimSpec:
      storageClassName: server-storage
      accessModes:
        - ReadWriteOnce
      resources:
        requests:
          storage: 25Gi
  config:
    cassandra-yaml:
      backup_service:
        enabled: true
    jvm-server-options:
      initial_heap_size: "800M"
      max_heap_size: "800M"
      additional-jvm-opts:
        # As the database comes up for the first time, set system keyspaces to RF=3
        - "-Ddse.system_distributed_replication_dc_names=dc1"
        - "-Ddse.system_distributed_replication_per_dc=3"

遵循 GKE 和 Google 博客存储的记录步骤:

https://docs.datastax.com/en/dse/6.8/dse-admin/datastax_enterprise/operations/opsBackupRestoreCreateBackupStore.html

https://docs.datastax.com/en/dse/6.8/dse-admin/datastax_enterprise/operations/opsCqlCreateBackupStore.html

于 2021-01-04T12:30:45.080 回答