получить оболочку пода с Cassandra через GKE
я создал
GKE
группа
Cassandra
и я хочу бежать
nodetool
на каждом узле для резервного копирования данных. Я не могу понять, как это сделать.
До сих пор у меня есть
SSH
к узлу на
kubernetes
кластер, и с этого момента я проиграл. Я сделал
docker ps -a
и может видеть контейнеры. Как добраться до каждого
container/pod
и взять обратно?
2 ответа
Попробуйте выполнить действия, описанные в этой статье , и получите свои модули:
kubectl get pvc
А потом:
kubectl exec cassandra-pod -- nodetool status
Измените cassandra-pod на имя модуля.
@Ману Чадха
Я не уверен, какой метод вы использовали для установки Cass на GKE, но с тегом 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
Затем я могу перейти к 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 Blog Storage: