Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Allow cluster to start after power off when ETCD_DISABLE_PRESTOP is set #38514

Merged
merged 4 commits into from
Aug 28, 2023
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -664,6 +664,11 @@ etcd_initialize() {
if is_boolean_yes "$ETCD_DISABLE_PRESTOP"; then
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think there is a misunderstanding on where the code needs to be placed. I meant this:

Suggested change
if is_boolean_yes "$ETCD_DISABLE_PRESTOP"; then
if is_boolean_yes "$ETCD_DISABLE_PRESTOP"; then
info "The member will try to join the cluster by it's own"
export ETCD_INITIAL_CLUSTER_STATE=existing
elif ! is_healthy_etcd_cluster; then
warn "Cluster not responding!"
if is_boolean_yes "$ETCD_DISASTER_RECOVERY"; then
latest_snapshot_file="$(find /snapshots/ -maxdepth 1 -type f -name 'db-*' | sort | tail -n 1)"

So removing this duplicate code:

            elif ! is_healthy_etcd_cluster; then
                warn "Cluster not responding!"
            fi
            member_id="$(get_member_id)"
            if ! is_healthy_etcd_cluster; then
                warn "Cluster not responding!"

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

sincere apologies for the churn :(. I've pushed another commit after testing with your suggested change, worked great! let me know if this looks ok now?

info "The member will try to join the cluster by it's own"
export ETCD_INITIAL_CLUSTER_STATE=existing
#
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Could you change the comment:

# If ETCD_DISABLE_PRESTOP is set, we won't dynamically adjust membership. In this case
# we'll return and allow etcd to start and join the statically configured cluster.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

you bet -- changing..

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

changed!

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mdhont any additional changes we need here?

# If ETCD_DISABLE_PRESTOP is set, we won't dynamically adjust membership. In this case
# we'll return and allow etcd to start and join the statically configured cluster.
#
return 0
fi
member_id="$(get_member_id)"
mdhont marked this conversation as resolved.
Show resolved Hide resolved
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Don't remove this. Instead, you can add it below line 663:

    if [[ ${#initial_members[@]} -gt 1 ]]; then
        member_id="$(get_member_id)" 

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

got it, added back

if ! is_healthy_etcd_cluster; then
Expand Down
Loading