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

Add a command-line option -A for enabling start delay (SBD_DELAY_START) #8

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

krig
Copy link

@krig krig commented May 17, 2016

This also then means that the option is documented in the man page.

I suspect that src/sbd.sh could be removed at this point.

@krig krig force-pushed the start-delay-option branch from 6842c78 to b20d1dd Compare May 17, 2016 14:42
@gao-yan
Copy link
Member

gao-yan commented Mar 1, 2017

I know it's not an usual usage, but I've seen users use:

/usr/share/sbd/sbd.sh stop

to stop sbd without stopping the cluster stack, and tune their on-disk parameters or sysconfig, then bring up sbd again by running:
systemctl start pacemaker.service

, which basically resolves the dependency no matter if pacemaker is already running.

I'd recommend to keep src/sbd.sh for now ;)

@gao-yan
Copy link
Member

gao-yan commented Mar 1, 2017

BTW, we should be careful with SBD_DELAY_START if msgwait is even longer than the DefaultTimeoutStartSec of systemd, which is 90s AFAICS. In that case, start of sbd will time out and pacemaker won't start, and corosync will be left there alone... Probably users have to configure TimeoutStartSec for sbd.service in that case.

@wenningerk
Copy link

wenningerk commented Mar 3, 2017

For msgwait above a certain value we could spit out a warning upon 'create' that the
timeouts should be checked as defaults won't do. Probably it doesn't make much
sense to spend the effort off checking the timeout of the local sbd-service as this would
anyway just be relevant for the local node.

For consistency I guess it is good to expose the '-A' option as mostly everything else
is already configurable via options and environment.

What did I miss about the code at the beginning of sbd.sh?
Why wouldn't we just export the variables set via /etc/sysconfig/sbd?
Don't know if this is relevant but the change in sbd.sh changes the behavior a little
bit in the way that the waiting is moved from right at the end to between bringing
up the block devices and starting pacemaker & corosync - watcher.

@krig
Copy link
Author

krig commented Mar 3, 2017

Don't know if this is relevant but the change in sbd.sh changes the behavior a little
bit in the way that the waiting is moved from right at the end to between bringing
up the block devices and starting pacemaker & corosync - watcher.

That's a good point, I'm not sure what the consequences of that might be.

@gao-yan
Copy link
Member

gao-yan commented Mar 3, 2017

Good points.

sbd.sh used to be a hook invoked by sbd.service as ExecStart and ExecStop when sbd daemon itself previously didn't handle any of the environment variables at all.

Indeed, the behavior has been changed a bit. But as far as I can tell, the sleep is still before any of the watch servants including any disk servant is actually recruited. So I think it's fine.

Actually another significant change is corosync now starts in parallel:
7ef73ab

However I don't see there is any issue about it in regard of this topic ;-)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants