From 386c1a04bc3c9af3bf452df446583ee1c954db0b Mon Sep 17 00:00:00 2001 From: Peter Amstutz Date: Mon, 16 Dec 2019 11:58:29 -0500 Subject: [PATCH] 15572: Install doc updates for workbench, ws, dispatcher Arvados-DCO-1.1-Signed-off-by: Peter Amstutz --- .../install-composer.html.textile.liquid | 18 +++++++---- ...install-dispatch-cloud.html.textile.liquid | 2 ++ .../install-jobs-image.html.textile.liquid | 2 +- .../install-workbench-app.html.textile.liquid | 32 ++++++++----------- ...install-workbench2-app.html.textile.liquid | 19 +++++------ doc/install/install-ws.html.textile.liquid | 12 +++---- 6 files changed, 44 insertions(+), 41 deletions(-) diff --git a/doc/install/install-composer.html.textile.liquid b/doc/install/install-composer.html.textile.liquid index 9f37f0e628..58ba5d03a0 100644 --- a/doc/install/install-composer.html.textile.liquid +++ b/doc/install/install-composer.html.textile.liquid @@ -36,16 +36,20 @@ h2(#update-nginx). Update nginx configuration Composer may be served from the same host as Workbench. Composer communicates directly with the Arvados API server. It does not require its own backend and should be served as a static file. -Use a text editor to create a new file @/etc/nginx/conf.d/arvados-composer.conf@ with the following configuration. Options that need attention are marked with "TODO". +Add the following @location@ sections to @/etc/nginx/conf.d/arvados-workbench.conf@ . -
location /composer {
-  root   /var/www/arvados-composer
-  index  index.html
-}
+
server {
+  [...]
+
+  location /composer {
+    root   /var/www/arvados-composer;
+    index  index.html;
+  }
 
-location /composer.yml {
-  return 200 '{ "API_HOST": "ClusterID.example.com" }';
+  location /composer/composer.yml {
+    return 200 '{ "API_HOST": "ClusterID.example.com" }';
+  }
 }
 
diff --git a/doc/install/install-dispatch-cloud.html.textile.liquid b/doc/install/install-dispatch-cloud.html.textile.liquid index 3689ecf76b..dfc25fc675 100644 --- a/doc/install/install-dispatch-cloud.html.textile.liquid +++ b/doc/install/install-dispatch-cloud.html.textile.liquid @@ -180,6 +180,8 @@ On the dispatch node, start monitoring the arvados-dispatch-cloud logs:
+"Make sure to install the arvados/jobs image.":install-jobs-image.html + Submit a simple container request: diff --git a/doc/install/install-jobs-image.html.textile.liquid b/doc/install/install-jobs-image.html.textile.liquid index 4b8dd6ce2f..15b16faf07 100644 --- a/doc/install/install-jobs-image.html.textile.liquid +++ b/doc/install/install-jobs-image.html.textile.liquid @@ -15,7 +15,7 @@ Here we create a default project for the standard Arvados Docker images, and giv
~$ uuid_prefix=$(arv --format=uuid user current | cut -d- -f1)
-~$ project_uuid=$(arv --format=uuid group create --group '{"owner_uuid":"$uuid_prefix-tpzed-000000000000000", "group_class":"project", "name":"Arvados Standard Docker Images"}')
+~$ project_uuid=$(arv --format=uuid group create --group '{"owner_uuid":"'$uuid_prefix'-tpzed-000000000000000", "group_class":"project", "name":"Arvados Standard Docker Images"}')
 ~$ echo "Arvados project uuid is '$project_uuid'"
 ~$ read -rd $'\000' newlink <<EOF; arv link create --link "$newlink"
 {
diff --git a/doc/install/install-workbench-app.html.textile.liquid b/doc/install/install-workbench-app.html.textile.liquid
index a6466dc61a..b33f28eb1f 100644
--- a/doc/install/install-workbench-app.html.textile.liquid
+++ b/doc/install/install-workbench-app.html.textile.liquid
@@ -12,10 +12,10 @@ SPDX-License-Identifier: CC-BY-SA-3.0
 # "Install dependencies":#dependencies
 # "Update config.yml":#update-config
 # "Update Nginx configuration":#update-nginx
+# "Trusted client flag":#trusted_client
 # "Install arvados-workbench":#install-packages
 # "Restart the API server and controller":#restart-api
 # "Confirm working installation":#confirm-working
-# "Trusted client setting":#trusted_client
 
 h2(#dependencies). Install dependencies
 
@@ -77,6 +77,19 @@ Use a text editor to create a new file @/etc/nginx/conf.d/arvados-workbench.conf
 
+h2(#trusted_client). Trusted client flag + +In the API server project root, start the Rails console. {% include 'install_rails_command' %} + +Create an ApiClient record for your Workbench installation with the @is_trusted@ flag set. + +
irb(main):001:0> include CurrentApiClient
+=> true
+irb(main):002:0> act_as_system_user do ApiClient.create!(url_prefix: "https://workbench.ClusterID.example.com/", is_trusted: true) end
+=> #<ApiClient id: 2, uuid: "...", owner_uuid: "...", modified_by_client_uuid: nil, modified_by_user_uuid: "...", modified_at: "2019-12-16 14:19:10", name: nil, url_prefix: "https://workbench.ClusterID.example.com/", created_at: "2019-12-16 14:19:10", updated_at: "2019-12-16 14:19:10", is_trusted: true>
+
+
+ {% assign arvados_component = 'arvados-workbench' %} {% include 'install_packages' %} @@ -86,20 +99,3 @@ Use a text editor to create a new file @/etc/nginx/conf.d/arvados-workbench.conf h2(#confirm-working). Confirm working installation Visit @https://workbench.ClusterID.example.com@ in a browser. You should be able to log in using the login method you configured in the previous step. If @Users.AutoAdminFirstUser@ is true, you will be an admin user. - -h2(#trusted_client). Trusted client flag - -Log in to Workbench once to ensure that the Arvados API server has a record of the Workbench client. (It's OK if Workbench says your account hasn't been activated yet. We'll deal with that next.) - -In the API server project root, start the Rails console. {% include 'install_rails_command' %} - -At the console, enter the following commands to locate the ApiClient record for your Workbench installation (typically, while you're setting this up, the @last@ one in the database is the one you want), then set the @is_trusted@ flag for the appropriate client record: - -
irb(main):001:0> wb = ApiClient.all.last; [wb.url_prefix, wb.created_at]
-=> ["https://workbench.example.com/", Sat, 19 Apr 2014 03:35:12 UTC +00:00]
-irb(main):002:0> include CurrentApiClient
-=> true
-irb(main):003:0> act_as_system_user do wb.update_attributes!(is_trusted: true) end
-=> true
-
-
diff --git a/doc/install/install-workbench2-app.html.textile.liquid b/doc/install/install-workbench2-app.html.textile.liquid index e873ad1e73..c3d67ed66e 100644 --- a/doc/install/install-workbench2-app.html.textile.liquid +++ b/doc/install/install-workbench2-app.html.textile.liquid @@ -29,14 +29,10 @@ Edit @/etc/arvados/config.yml@ to set the keys below. The full set of configura
    Services:
       Workbench2:
-        ExternalURL: "https://workbench2.ClustedID.example.com"
+        ExternalURL: "https://workbench2.ClusterID.example.com"
 
-h2. Vocabulary configuration (optional) - -Workbench2 can load a vocabulary file which lists available metadata properties for groups and collections. To configure the property vocabulary definition, please visit the "Workbench2 Vocabulary Format":{{site.baseurl}}/admin/workbench2-vocabulary.html page in the Admin section. - h2(#update-nginx). Update Nginx configuration Workbench2 does not require its own database. It is a set of html, javascript and css files that are served as static files from Nginx. @@ -45,16 +41,17 @@ Use a text editor to create a new file @/etc/nginx/conf.d/arvados-workbench2.con
server {
-  listen       [your public IP address]:443 ssl;
+  listen       *:443 ssl;
   server_name  workbench2.ClusterID.example.com;
 
   ssl on;
-  ssl_certificate     /YOUR/PATH/TO/cert.pem;
-  ssl_certificate_key /YOUR/PATH/TO/cert.key;
+  ssl_certificate     /TODO/YOUR/PATH/TO/cert.pem;
+  ssl_certificate_key /TODO/YOUR/PATH/TO/cert.key;
 
   index  index.html;
 
-  # Workbench2 uses a call to /config.json to bootstrap itself and talk to the desired API server
+  # TODO: Workbench2 uses a call to /config.json to bootstrap itself
+  # and find out where to contact the API server.
   location /config.json {
     return 200 '{ "API_HOST": "ClusterID.example.com" }';
   }
@@ -71,6 +68,10 @@ Use a text editor to create a new file @/etc/nginx/conf.d/arvados-workbench2.con
 
+h2. Vocabulary configuration (optional) + +Workbench2 can load a vocabulary file which lists available metadata properties for groups and collections. To configure the property vocabulary definition, please visit the "Workbench2 Vocabulary Format":{{site.baseurl}}/admin/workbench2-vocabulary.html page in the Admin section. + {% assign arvados_component = 'arvados-workbench2' %} {% include 'install_packages' %} diff --git a/doc/install/install-ws.html.textile.liquid b/doc/install/install-ws.html.textile.liquid index f3319fa4cc..748de64ea6 100644 --- a/doc/install/install-ws.html.textile.liquid +++ b/doc/install/install-ws.html.textile.liquid @@ -26,7 +26,7 @@ Edit the cluster config at @/etc/arvados/config.yml@ and set @Services.Websocket
    Services:
       Websocket:
         InternalURLs:
-	  "http://ws.ClusterID.example.com:8005": {}
+	  "http://localhost:8005": {}
         ExternalURL: wss://ws.ClusterID.example.com/websocket
 
@@ -43,15 +43,15 @@ upstream arvados-ws { } server { - listen [your public IP address]:443 ssl; - server_name ws.uuid_prefix.your.domain; + listen *:443 ssl; + server_name ws.ClusterID.example.com; proxy_connect_timeout 90s; proxy_read_timeout 300s; ssl on; - ssl_certificate YOUR/PATH/TO/cert.pem; - ssl_certificate_key YOUR/PATH/TO/cert.key; + ssl_certificate /TODO/YOUR/PATH/TO/cert.pem; + ssl_certificate_key /TODO/YOUR/PATH/TO/cert.key; location / { proxy_pass http://arvados-ws; @@ -85,7 +85,7 @@ h2(#confirm). Confirm working installation Confirm the service is listening on its assigned port and responding to requests. -
~$ curl http://0.0.0.0:8005/status.json
+
~$ curl https://ws.ClusterID.example.com/status.json
 {"Clients":1}
 
-- 2.39.5