ASF GitHub Bot commented on CLOUDSTACK-10310:

bwsw commented on a change in pull request #2472: CLOUDSTACK-10310 Fix KVM 
reboot on storage issue
URL: https://github.com/apache/cloudstack/pull/2472#discussion_r172004532

 File path: 
 @@ -115,22 +115,33 @@ protected void runInContext() {
                     String result = null;
-                    for (int i = 0; i < 5; i++) {
+                    // Try 3 times, but sleep in between tries to ensure it 
isn't a short lived transient error
+                    for (int i = 1; i <= 4; i++) {
                         Script cmd = new Script(s_heartBeatPath, 
_heartBeatUpdateTimeout, s_logger);
                         cmd.add("-i", primaryStoragePool._poolIp);
                         cmd.add("-p", primaryStoragePool._poolMountSourcePath);
                         cmd.add("-m", primaryStoragePool._mountDestPath);
                         cmd.add("-h", _hostIP);
                         result = cmd.execute();
                         if (result != null) {
-                            s_logger.warn("write heartbeat failed: " + result 
+ ", retry: " + i);
+                            s_logger.warn("write heartbeat failed: " + result 
+ ", retry: " + i + " of 4");
 Review comment:
   I disabled that behaviour in our 4.3 completely.

This is an automated message from the Apache Git Service.
To respond to the message, please log on GitHub and use the
URL above to go to the specific comment.
For queries about this service, please contact Infrastructure at:

> KVM hosts reboot if there is a short transient storage error
> ------------------------------------------------------------
>                 Key: CLOUDSTACK-10310
>                 URL: https://issues.apache.org/jira/browse/CLOUDSTACK-10310
>             Project: CloudStack
>          Issue Type: Improvement
>      Security Level: Public(Anyone can view this level - this is the 
> default.) 
>          Components: KVM
>    Affects Versions: 4.9.0,
>            Reporter: Sean Lair
>            Priority: Major
> If the KVM heartbeat file can't be written to, the host is rebooted, and thus 
> taking down all VMs running on it.  The code does try 5x times before the 
> reboot, but the there is not a delay between the retires, so they are 5 
> simultaneous retries, which doesn't help.  Standard SAN storage HA operations 
> or quick network blip could cause this reboot to occur.
> Some discussions on the dev mailing list revealed that some people are just 
> commenting out the reboot line in their version of the CloudStack source.
> A better option (and a new PR is being issued) would be have it sleep between 
> tries so it isn't 5x almost simultaneous tries.  Plus, instead of rebooting, 
> the cloudstack-agent could just be stopped on the host instead.  This will 
> cause alerts to be issued and if the host is disconnected long-enough, 
> depending on the HA code in use, VM HA could handle the host failure.
> The built-in reboot of the host seemed drastic

This message was sent by Atlassian JIRA

Reply via email to