Skip to content

etcd: add flag for checking member data consistency #2676

Open
@neolit123

Description

@neolit123

xref etcd-io/etcd#13766

announcement of the bug's impact at k-dev:
https://groups.google.com/a/kubernetes.io/d/msgid/dev/CAJs3Yt0WKgyUFL%3D1V13ojZPvV9_Qsa8WXLeohUxhRjEK07P25g%40mail.gmail.com?utm_medium=email&utm_source=footer

With recent reproduction of data inconsistency issues in #13766, etcd maintainers are no longer recommending v3.5 releases for production. In our testing we have found that if the etcd process is killed under high load, occasionally some committed transactions are not reflected on all the members. The problem affects versions v3.5.0, v3.5.1, v3.5.2.

(note: the bug in question in relatively rare)

add the etcd flag --experimental-initial-corrupt-check to all kubeadm versions that use etcd 3.5.x by default.
1.24 (master), 1.23, 1.22.

--experimental-initial-corrupt-check 'false'
  Enable to check data corruption before serving any client/peer traffic.

1.24 timeframe

add the --experimental-initial-corrupt-check flag to versions of kubeadm that use etcd 3.5.[0-2]

1.25 timeframe

backport a 3.5.3+ bump to kubeadm versions in support.
aligns with #2567 too.

** future work **

etcd 3.6 (or 4.0?) may graduate the flag / feature to --initial-corrupt-check, thus once we upgrade kubeadm to that etcd version we should switch to the new flag as well.

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/etcdkind/bugCategorizes issue or PR as related to a bug.kind/featureCategorizes issue or PR as related to a new feature.priority/important-longtermImportant over the long term, but may not be staffed and/or may need multiple releases to complete.

    Type

    No type

    Projects

    No projects

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions