14812: Add documentation about migrating Workbench config.
authorPeter Amstutz <pamstutz@veritasgenetics.com>
Mon, 8 Jul 2019 19:04:52 +0000 (15:04 -0400)
committerPeter Amstutz <pamstutz@veritasgenetics.com>
Mon, 8 Jul 2019 19:04:52 +0000 (15:04 -0400)
Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <pamstutz@veritasgenetics.com>

doc/admin/config-migration.html.textile.liquid
doc/install/install-api-server.html.textile.liquid
doc/install/install-dispatch-cloud.html.textile.liquid
doc/install/install-workbench-app.html.textile.liquid

index 11546c032327385b680fe617885bbaac6055bbf8..fd4942527f4904dfd61ec3b5cd4bc0c4b84dfb8e 100644 (file)
@@ -33,6 +33,27 @@ $ bundle exec rake config:diff
 
 This command will also report if no migrations are required.
 
+h2. Workbench
+
+The legacy workbench configuration is stored in @config/application.yml@ and @config/database.yml@.  After migration to @/etc/arvados/config.yml@, both of these files should be moved out of the way and/or deleted.
+
+Change to the workbench server directory and use the following commands:
+
+<pre>
+$ bundle exec rake config:migrate > config.yml
+$ cp config.yml /etc/arvados/config.yml
+</pre>
+
+This will print the contents of @config.yml@ after merging with legacy @application.yml@.  It may then be redirected to a file and copied to @/etc/arvados/config.yml@.
+
+If you wish to update @config.yml@ configuration by hand, or check that everything has been migrated, use @config:diff@ to print configuration items that differ between @application.yml@ and the system @config.yml@.
+
+<pre>
+$ bundle exec rake config:diff
+</pre>
+
+This command will also report if no migrations are required.
+
 h2. crunch-dispatch-slurm
 
 Currently only reads @InstanceTypes@ from centralized configuration.  Still requires component-specific configuration file.
@@ -43,8 +64,8 @@ Currently only reads @RemoteClusters@ from centralized configuration.  Still req
 
 h2. arvados-controller
 
-Only supports centralized config file.  No migration needed.
+Already uses centralized config exclusively.  No migration needed.
 
 h2. arvados-dispatch-cloud
 
-Only supports centralized config file.  No migration needed.
+Already uses centralized config exclusively.  No migration needed.
index a6b843b160ba39161850005b0de858daab867ac4..151c3e0988885221dd62f8e7c6a64dcba010fc64 100644 (file)
@@ -45,7 +45,7 @@ Configure the API server to connect to your database by updating @/etc/arvados/a
 
 h2(#configure_application). Configure the API server
 
-Edit @/etc/arvados/api/application.yml@ to configure the settings described in the following sections.  The API server reads both @application.yml@ and its own @config/application.default.yml@ file.  The settings in @application.yml@ take precedence over the defaults that are defined in @config/application.default.yml@.  The @config/application.yml.example@ file is not read by the API server and is provided as a starting template only.
+Edit @/etc/arvados/config.yml@ to configure the settings described in the following sections.  The API server reads both @application.yml@ and its own @config/application.default.yml@ file.  The settings in @application.yml@ take precedence over the defaults that are defined in @config/application.default.yml@.  The @config/application.yml.example@ file is not read by the API server and is provided as a starting template only.
 
 @config/application.default.yml@ documents additional configuration settings not listed here.  You can "view the current source version":https://dev.arvados.org/projects/arvados/repository/revisions/master/entry/services/api/config/application.default.yml for reference.
 
index d72909077e97f4fca2c2c43cf748f7ede66dd723..5d497cc114cd52ff1caa161181ee68ab1d7badf3 100644 (file)
@@ -59,7 +59,7 @@ You can delete the key files after you have copied the private key to your confi
 
 h2. Configure the dispatcher
 
-Add or update the following portions of your cluster configuration file, @/etc/arvados/config.yml@. Refer to "config.defaults.yml":https://dev.arvados.org/projects/arvados/repository/revisions/13996-new-api-config/entry/lib/config/config.defaults.yml for information about additional configuration options.
+Add or update the following portions of your cluster configuration file, @/etc/arvados/config.yml@. Refer to "config.defaults.yml":{{site.baseurl}}/admin/config.html for information about additional configuration options.
 
 <notextile>
 <pre><code>Clusters:
index 593e8018926ad42c0f8a22d6f67fa73c3c1ba7c1..7ad56b32d6ee6987b648d98e875c4fc711e9acfa 100644 (file)
@@ -40,11 +40,9 @@ On a Red Hat-based system, install the following packages:
 
 h2(#configure). Configure Workbench
 
-Edit @/etc/arvados/workbench/application.yml@ following the instructions below.  Workbench reads both @application.yml@ and its own @config/application.defaults.yml@ file.  Values in @application.yml@ take precedence over the defaults that are defined in @config/application.defaults.yml@.  The @config/application.yml.example@ file is not read by Workbench and is provided for installation convenience only.
+Edit @/etc/arvados/config.yml@ following the instructions below.  Only a few of the most important configuration options are listed here.  The full set of configuration options are in the "Workbench section of config.yml":{{site.baseurl}}/admin/config.html
 
-Consult @config/application.default.yml@ for a full list of configuration options.  Always put your local configuration in @/etc/arvados/workbench/application.yml@&mdash;never edit @config/application.default.yml@.
-
-h3. secret_token
+h3. Workbench.SecretKeyBase
 
 This application needs a secret token. Generate a new secret:
 
@@ -54,33 +52,32 @@ aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
 </code></pre>
 </notextile>
 
-Then put that value in the @secret_token@ field.
+Then put that value in the @Workbench.SecretKeyBase@ field.
 
-h3. arvados_login_base and arvados_v1_base
+h3. Services.Controller.ExternalURL
 
-Point @arvados_login_base@ and @arvados_v1_base@ at your "API server":install-api-server.html. For example like this:
+Ensure that @Services.Controller.ExternalURL@ is configured for "Arvados Controller":install-controller.html . For example like this:
 
 <notextile>
-<pre><code>arvados_login_base: https://prefix_uuid.your.domain/login
-arvados_v1_base: https://prefix_uuid.your.domain/arvados/v1
+<pre><code>Cluster:
+  zzzzz:
+    Services:
+      Controller:
+        ExternalURL: https://prefix_uuid.your.domain
 </code></pre>
 </notextile>
 
-h3. site_name
-
-@site_name@ can be set to any arbitrary string. It is used to identify this Workbench to people visiting it.
-
-h3. arvados_insecure_https
+h3. Workbench.SiteName
 
-If the SSL certificate you use for your API server isn't an official certificate signed by a CA, make sure @arvados_insecure_https@ is @true@.
+@Workbench.SiteName@ can be set to any arbitrary string. It is used to identify this Workbench to people visiting it.
 
-h3. Other options
+h3. TLS.Insecure
 
-Consult @application.default.yml@ for a full list of configuration options. Always put your local configuration in @application.yml@ instead of editing @application.default.yml@.
+For testing only.  Allows use of self-signed certificates.  If true, workbench will not verify the TLS certificate of Arvados Controller.
 
 h2. Configure Piwik
 
-In @/var/www/arvados-workbench/current/config@, copy @piwik.yml.example@ to @piwik.yml@ and edit to suit.
+Piwik is optional, and can be to gather usage analytics.  In @/var/www/arvados-workbench/current/config@, copy @piwik.yml.example@ to @piwik.yml@ and edit to suit.
 
 h2. Set up Web server
 
@@ -104,7 +101,7 @@ For best performance, we recommend you use Nginx as your Web server front-end, w
   #passenger_ruby /usr/local/rvm/wrappers/default/ruby;
 
   # `client_max_body_size` should match the corresponding setting in
-  # the API server's Nginx configuration.
+  # the API.MaxRequestSize and Controller's server's Nginx configuration.
   client_max_body_size 128m;
 }
 
@@ -124,7 +121,7 @@ server {
 
   index  index.html index.htm index.php;
   # `client_max_body_size` should match the corresponding setting in
-  # the API server's Nginx configuration.
+  # the API.MaxRequestSize and Controller's server's Nginx configuration.
   client_max_body_size 128m;
 
   location / {