Make disk verification optional
authorKlaus Aehlig <aehlig@google.com>
Mon, 6 Jul 2015 10:35:17 +0000 (12:35 +0200)
committerKlaus Aehlig <aehlig@google.com>
Mon, 6 Jul 2015 11:21:30 +0000 (13:21 +0200)
In some setups, verification of disks can take a long
time, whereas it is still desirable to run the other
watcher operations more regularly. Hence support this
use case by providing an option to not run disk verification,
allowing for more elaborate cron schedules. Fixes issue 1090.

Signed-off-by: Klaus Aehlig <aehlig@google.com>
Reviewed-by: Petr Pudlak <pudlak@google.com>

lib/watcher/__init__.py

index bd49570..509bb18 100644 (file)
@@ -474,6 +474,8 @@ def ParseOptions():
   parser.add_option("--no-wait-children", dest="wait_children",
                     action="store_false",
                     help="Don't wait for child processes")
+  parser.add_option("--no-verify-disks", dest="no_verify_disks", default=False,
+                    action="store_true", help="Do not verify disk status")
   # See optparse documentation for why default values are not set by options
   parser.set_defaults(wait_children=True)
   options, args = parser.parse_args()
@@ -860,7 +862,8 @@ def _GroupWatcher(opts):
 
     started = _CheckInstances(client, notepad, instances, locks)
     _CheckDisks(client, notepad, nodes, instances, started)
-    _VerifyDisks(client, group_uuid, nodes, instances)
+    if not opts.no_verify_disks:
+      _VerifyDisks(client, group_uuid, nodes, instances)
   except Exception, err:
     logging.info("Not updating status file due to failure: %s", err)
     raise