<div dir="ltr">The whole histroy operations:<div>I started systemd cinder-volume service resource manually on node host001, then restart pcs cluster.<div>Pacemaker stops my cinder-volume service on host001, then cinder resources are always shown stopped, never been started again.</div></div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr"><<a href="mailto:kgaillot@redhat.com">kgaillot@redhat.com</a>> 于2021年6月14日周一 下午11:20写道:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">On Sun, 2021-06-13 at 22:43 +0800, Acewind wrote:<br>
> Dear guys,<br>
>  I'm using pacemaker-1.1.20 to construct an openstack HA system.<br>
> After I stop&start the cluster, pcs monitor operation always be in<br>
> progress for cinder-volume & cinder-scheduler service. But the<br>
> systemd service is active and openstack is working well. How does<br>
> pacemaker monitor a normal systemd resource?<br>
<br>
Pacemaker does something similar to "systemctl status" (using systemd's<br>
native DBus interface rather than that command directly).<br>
<br>
> > pcs resource show r_systemd_openstack-cinder-scheduler<br>
>  Resource: r_systemd_openstack-cinder-scheduler (class=systemd<br>
> type=openstack-cinder-scheduler)<br>
>   Operations: monitor interval=10s timeout=100s (r_systemd_openstack-<br>
> cinder-scheduler-monitor-interval-10s)<br>
>               stop interval=0s timeout=100s (r_systemd_openstack-<br>
> cinder-scheduler-stop-interval-0s)<br>
>  <br>
> 2021-06-13 20:50:42 pcs cluster stop --all<br>
> 2021-06-13 20:50:56 pcs cluster start --all <br>
> <br>
> Jun 13 20:53:16 [4057851] host001       lrmd:     info:<br>
> action_complete: r_systemd_openstack-cinder-scheduler monitor is<br>
> still in progress: re-scheduling (elapsed=54372ms, remaining=45628ms,<br>
> start_delay=2000ms)<br>
> Jun 13 20:53:18 [4057851] host001       lrmd:     info:<br>
> action_complete: r_systemd_openstack-cinder-scheduler monitor is<br>
> still in progress: re-scheduling (elapsed=56374ms, remaining=43626ms,<br>
> start_delay=2000ms)<br>
> Jun 13 20:53:20 [4057851] host001       lrmd:     info:<br>
> action_complete: r_systemd_openstack-cinder-scheduler monitor is<br>
> still in progress: re-scheduling (elapsed=58375ms, remaining=41625ms,<br>
> start_delay=2000ms)<br>
> Jun 13 20:53:22 [4057854] host001       crmd:   notice:<br>
> process_lrm_event: Result of stop operation for r_systemd_openstack-<br>
> cinder-scheduler on host001: 0 (ok) | call=71<br>
> key=r_systemd_openstack-cinder-scheduler_stop_0 confirmed=true cib-<br>
> update=59<br>
<br>
I don't see anything wrong in the above. The final line says this was a<br>
successful stop. When doing a start or stop for a systemd resource,<br>
pacemaker will repeatedly do a status check until the service is<br>
actually up or down, before returning success for the start or stop.<br>
<br>
It would be more efficient and less error-prone to use DBus's signal<br>
feature to get notified when the action finishes, rather than<br>
repeatedly poll the status, but that's a big project that we haven't<br>
gotten to yet.<br>
<br>
> The whole log file is included in attachment. Thanks!<br>
-- <br>
Ken Gaillot <<a href="mailto:kgaillot@redhat.com" target="_blank">kgaillot@redhat.com</a>><br>
<br>
_______________________________________________<br>
Manage your subscription:<br>
<a href="https://lists.clusterlabs.org/mailman/listinfo/users" rel="noreferrer" target="_blank">https://lists.clusterlabs.org/mailman/listinfo/users</a><br>
<br>
ClusterLabs home: <a href="https://www.clusterlabs.org/" rel="noreferrer" target="_blank">https://www.clusterlabs.org/</a><br>
</blockquote></div>