You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/blog/open-sourcing-workshops-on-demand-part2-deploying-the-backend.md
+18-14Lines changed: 18 additions & 14 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -60,10 +60,11 @@ It provides:
60
60
* A fail2ban service
61
61
* An Admin user to manage everything
62
62
* A set of scripts to handle different tasks such as:
63
-
* Notebooks deployment
64
-
* Jupyterhub compliancy
65
-
* Users compliancy
66
-
* Security Management
63
+
64
+
* Notebooks deployment
65
+
* Jupyterhub compliancy
66
+
* Users compliancy
67
+
* Security Management
67
68
68
69
#### Backend server preparation:
69
70
@@ -75,18 +76,19 @@ In order to setup the backend server, you will need:
75
76
76
77
* A fresh OS install on physical / virtualized server running Ubuntu 20.04 or Centos 7.9 leveraging any deployment mechanism of your choice.(e.g. iLO, vagrant, etc.). You may even use this vagrant file to automatically generate a complete setup leveraging vagrant, libvirt and QEMU/KVM.
77
78
* A Linux account with sudo priviledges on your Linux distro. Name it `install`
78
-
79
+
79
80
**Note**: In order to support 100 concurrent users, you need:
80
-
* 2 cpus or more machine
81
-
* 128 GB of RAM
82
-
* 500 GB of storage
83
-
We are currently using an HPE ProLiant DL360 Gen10 server on our different production sites.
81
+
82
+
* 2 cpus or more machine
83
+
* 128 GB of RAM
84
+
* 500 GB of storage
85
+
We are currently using an HPE ProLiant DL360 Gen10 server on our different production sites.
84
86
85
87
When done with OS installation and preparation
86
88
87
89
* From the WoD-backend server (aka JupyterHub server), as the install user, you will need to clone the repo first.
[](https://github.com/Workshops-on-Demand/wod-backend/blob/main/INSTALL.md#for-private-based-workshops-on-demand-private-backend--private-workshops-or-if-you-need-to-modify-defaults)Once you are done with the files, you can can proceed with the installation itself. The installation is based on a common install script [install.sh ](https://github.com/Workshops-on-Demand/wod-backend/blob/main/install/install.sh)that allows the deployment of the different parts of the solution. It can be called as follows:
@@ -283,13 +283,15 @@ See the example below for a backend server.
283
283
* Creates GROUPNAME variables
284
284
* Creates Ansible inventory files
285
285
* Calls the `install_system.sh` script with the type (backend, frontend, etc..) that performs the following tasks:
286
+
286
287
* Install the necessary stack based on selected type
287
288
* Create a `wod.sh` script in `wod-backend` directory to be used by all other scripts
288
289
* Source the `wod.sh` file
289
290
* Setup Ansible-galaxies (`community.general` and `posix`)
290
291
* Setup Ansible and call the playbook `install_<type>.yml` followed by the `ansible\_check\_<type>.yml`
291
292
292
293
At the end of the installation process:
294
+
293
295
* you will have a JupyterHub server running on port 8000
294
296
* You will get a new `wodadmin` user (Default admin)
295
297
* You will get a set of 20 students (Default value)
@@ -317,6 +319,7 @@ The principle remains similar, with a few differences explained below.
317
319
* Create an `install.priv` file located in `install` directory when using a private repo (consider looking at [install.repo](https://github.com/Workshops-on-Demand/wod-backend/blob/main/install/install.repo) file for a better understanding of the variables).
318
320
319
321
* Define the WODPRIVREPO and WODPRIVBRANCH variables as follows:
@@ -325,6 +328,7 @@ The principle remains similar, with a few differences explained below.
325
328
Please refer to the following [url](https://docs.github.com/en/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token) to generate a `token` file in `install` directory of WoD-backend:
326
329
327
330
* Edit the `install.priv` file located in `install` directory of WoD-backend:
331
+
328
332
* Create line before variable declaration: ``token=`cat $EXEPATH/token` ``
329
333
* Use the token in the url WODPRIVREPO="git clone https://user:[email protected]/Account/wod-private.git wod-private"
0 commit comments