Merge branch '15531-logincluster-migrate' refs #15531
authorPeter Amstutz <pamstutz@veritasgenetics.com>
Fri, 11 Oct 2019 15:04:42 +0000 (11:04 -0400)
committerPeter Amstutz <pamstutz@veritasgenetics.com>
Fri, 11 Oct 2019 15:04:42 +0000 (11:04 -0400)
Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <pamstutz@veritasgenetics.com>

doc/admin/config-migration.html.textile.liquid
lib/config/deprecated.go
sdk/cwl/arvados_cwl/done.py
services/keepstore/keepstore.service

index d40cd3bbdc5feeb548693d60d820aa75fd3fee7b..0de058b068ea9bf4f7793b231b04f2208a56e516 100644 (file)
@@ -62,7 +62,7 @@ h2(#keepstore). keepstore
 
 The legacy keepstore config (loaded from @/etc/arvados/keepstore/keepstore.yml@ or a different location specified via -legacy-keepstore-config command line argument) takes precedence over the centralized config. After you migrate everything from the legacy config to the centralized config, you should delete @/etc/arvados/keepstore/keepstore.yml@ and stop using the -legacy-keepstore-config argument.
 
-To migrate a keepstore node's configuration, first install @arvados-server@. Run @arvados-server config-diff@, review and apply the recommended changes to @/etc/arvados/config.yml@, and run @arvados-server config-diff@ again to check for additional warnings and recommendations. When you are satisfied, delete the legacy config file, restart keepstore, and check its startup logs. Copy the updated centralized config file to your next keepstore server, and repeat the process there.
+To migrate a keepstore node's configuration, first install @arvados-server@. Run @arvados-server config-check@, review and apply the recommended changes to @/etc/arvados/config.yml@, and run @arvados-server config-check@ again to check for additional warnings and recommendations. When you are satisfied, delete the legacy config file, restart keepstore, and check its startup logs. Copy the updated centralized config file to your next keepstore server, and repeat the process there.
 
 After migrating and removing all legacy keepstore config files, make sure the @/etc/arvados/config.yml@ file is identical across all system nodes -- API server, keepstore, etc. -- and restart all services to make sure they are using the latest configuration.
 
index 22eed080a2ca041103d40f157a4645a9ece85b3e..7b11e090eeee7479effd5c37b8c834798041c0a7 100644 (file)
@@ -539,7 +539,7 @@ func (ldr *Loader) loadOldKeepBalanceConfig(cfg *arvados.Config) error {
        if oc.KeepServiceTypes != nil {
                numTypes := len(*oc.KeepServiceTypes)
                if numTypes != 0 && !(numTypes == 1 && (*oc.KeepServiceTypes)[0] == "disk") {
-                       return fmt.Errorf(msg, "KeepServiceType")
+                       return fmt.Errorf(msg, "KeepServiceTypes")
                }
        }
 
index c0e3e0de2a70fb7d542af89fa53757b3126a04d1..e12fe185a039ff509e360b2a6d29d1219ca29afe 100644 (file)
@@ -70,7 +70,7 @@ def logtail(logcollection, logfunc, header, maxlen=25):
             logname = log[:-4]
             logt = deque([], maxlen)
             mergelogs[logname] = logt
-            with logcollection.open(log) as f:
+            with logcollection.open(log, encoding="utf-8") as f:
                 for l in f:
                     if containersapi:
                         g = timestamp_re.match(l)
index 728c6fded1ac6f372f30b7a4da78da7c6a2f7199..2eba5efbfd242d46109b0f8dfa0092a59c618d62 100644 (file)
@@ -14,6 +14,11 @@ StartLimitInterval=0
 StartLimitIntervalSec=0
 
 [Service]
+# trigger Go garbage collection when the ratio of freshly allocated data to live data
+# remaining after the previous collection reaches 10% rather than the default 100%, so
+# that Keepstore's memory use is tightly coupled to the number of buffers it is
+# configured to use.
+Environment=GOGC=10
 Type=notify
 ExecStart=/usr/bin/keepstore
 Restart=always