pingcap / pingcap/tidb-operator

document node termination behavior

Open
#1,364 1 comment 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

area/doc lifecycle/frozen status/help-wanted
Dominant language
Go
Stars
1.3k
Forks
540
Avg merge
3d 2h
Merged PRs (30d)
18

Description

Feature Request

Our docs do not describe what to do when a node is terminated (essentially disk is gone and cannot be recovered). In this case the operator will automatically add a new member to the statefulset after a brief period. The old member will still exist in a pending un-scheduleable state.

The user can choose to leave it as is for a while. But it will block upgrades, so although it isn't an emergency, the correct course of action is to deal with it soon. Recovering without adjusting the statefulset can end up with one more pod then they wanted.

Recovery requires

  • manually remove the store from PD
    • find the id with kubectl describe -n namespace tidbclusters.pingcap.com db
    • delete it with pd-ctl store delete or otherwise using the PD API DELETE /store/{storeID}
  • delete the PVC of the pod
  • delete the pod

This situation helps motivate our development of an improved statefulset

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

No documentation file or test is named. Locate the operator documentation covering terminated nodes and statefulsets, then verify the listed kubectl, pd-ctl or PD API, PVC, and pod-removal steps; done means the recovery procedure and its upgrade implications are clearly documented.

Written by the indexing model from the issue text.

Assessment

Tech stack
kubernetes
Domain
databases, documentation, infrastructure
Issue type
Documentation
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
38/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.