**Swarmlab** is a powerful collaboration tool that connects tutors and students
1. [Features](#introduction)
2. [System requirements ](#systemrequirements)
3. [Prerequisites](#prerequisites)
4. [Installation](#installation)
5. [More info](#moreinfo)
**in a unique all-in-one environment that gets work done fast and easily**
### <aname="introduction"></a>
## <b>Swarmlab Hybrid</b> is the Swarmlabs younger, more tech savvy brother.
Swarmlab hybrid provides the user with the unique abillity to create Labrooms (or other applications) and share them as project images expanding the simple swarmlab Labrooms to full-blown systems. An all of that <b>using onlly the browser and the command line</b> of their system.
#### **Ready-to-Use Virtual Labs one click away.**
## Why?
Ever imagined having a normal lesson as you would in the University from the comfort of your livingroom?
Ever created a service that you would like to test on a real-world network?
Ever designed an Labroom/application you would like to distribute to your students/applications?
Swarmlab Hybrid comes to bridge the gap between tutor and student, the coder/developer of a service and the and user and at the same time meet the needs for a real-world testing environment.
With Hybrid we can now as part of the cloud work <b>independantly</b> but also stay <b>connected</b>.
The hybrid format allows us to utilize the power of Swarmlab itself but also combine it with the practiaclly unlimited computing of our own machines.
## How?
How does Swarmlab Hybrid differ from Swarmlab? Well...its Swarmlab...just....HYBRID!
Easy enough right? But what does that mean in practice?
Well for us it means a couple million more lines of code. For you it means a few more installation steps and the newfound access to YOUR OWN RESOURCES!
### Table of contents
You will be connected to the Swarmlab Cloud (hence HYBRID) but you will be able to use your own storage(move files around, delete/copy etc),your own networking and computational power(cpu/graphics etc) and create a system exactly the way you need it.
1. [Features](#introduction)
2. [System requirements ](#systemrequirements)
3. [Prerequisites](#prerequisites)
4. [Installation](#installation)
5. [More info](#moreinfo)
This way you will be able to :
- <b>create</b> images for testing.
- <b>Run</b> them using docker.
- <b>Share</b> them for others to use and develop.
- Finally <b>browse the cloud</b> for shared images to <b>integrate</b> into your project and make it even better.
#
## Swarmlab vs Swarmlab Hybrid in a nutshell
### Swarmlab
- Ready to use, on demand virtual labs
- Optimized for both Students and Tutors
- Tutors bootstrap their labrooms using our tools
- Students can:
- join the created labrooms according to their interrests
- run the evailable labs at will
- create their own rooms for exercising
### Features<aname="introduction"></a>
### Hybrid
- Create Labrooms/Applications
- Run and manage said rooms and application
- create once - scale up or down without rebuilding
- Connect multiple computers through a network.
- Move Labs between environments
- Create your own labs
- open source barebone -> <b>Share them with your friends</b>
**Share your exercises and content as a tutor and access it as student on demand**
> ##### On demand Labrooms
>
> * Ready to use virtual labs
> * Optimized for both Students and Tutors
> * Tutors bootstrap their labrooms using our tools
> * Students can join the created labrooms according to their interrests
>
> ##### Labroom hybrid
>
> * Run and manage applications
> * Scale up or down without rebuilding
> * Connect multiple computers through a network.
> * Move Labs between environments
> * Create your own labs
>
## IMPORTANT
:exclamation: If you wish to use the service in Hybrid mode, that is if you want to share, download or perform other activites on the cloud you will need a <b>KEY</b>. Read installation instructions to learn how to do that.
Local usage of the service <b>doesnt</b> require one, you only need to log in to your account.
### System requirements<aname="systemrequirements"></a>
## System requirements<aname="systemrequirements"></a>
**Before** you create and configure a hybrid deployment using the swarmlab-agent client, your Local Machines need to meet certain requirements.
@ -53,7 +81,7 @@
- A Linux Server (Virtual or Physical)
- You must have super user privileges (sudo)
- You must have super user privileges (root/sudo)
- Docker Engine- Community version 18 or later is required.
- Docker Engine is supported on x86_64 (or amd64), armhf, and arm64 architectures.
- RAM
@ -64,14 +92,14 @@
- Recommended 4+
- Disk Space
- 10 GB for internal requirements.
- The amount of additional disk space required for load file staging, persistence, or backups depends on the size of the data to be loaded.
- The amount of additional disk space soloemnly depends on you intended use.
> Docker uses a hypervisor with a VM, and the host server must support virtualization.
:warning: Since Docker uses hyupervisor the host NEEDS TO HAVE VIRTUALIZATION ENABLED!