How do you create an easy to maintain a live virtual classroom to use for online classes? With 20 years experience and 15 years creating training environments, I will show you what you need to know.
The steps to creating a live training environment are:
- Choose the Hardware
- Choose the Virtual Machine Software
- Setup the Training Environment
- Purchase & Install Classroom Management Software
- Purchase Web Conferencing Software
- Setup Easy Student Remote Access
If you don’t know how to teach live online look at the below article first for a general overview before looking at setting up your own online classroom. How to Teach Live Online general overview article.
Choosing the Hardware?
When choosing the hardware to run your live online classroom you have the choice of either client or server hardware. The main difference between client hardware and server hardware if we forget what the software is that is running on it, is redundancy. If you choose client hardware you would need a physical computer for each student that will connect. I have seen it done but it is a lot of work to maintain and you need a full room for the hardware. So lets instead look at an easier solution.
What is server hardware? Well lets look at client hardware first so we have something to compare too. If you look at your laptop or computer at home when one particular component fails then the computer will not work until you replace or repair it. Examples of this are your monitor, hard drive, mother board, network card or wifi etc. It is really only designed for one user at a time as well. Now we could use client hardware for our Virtual Machines but if one component fails the class would stop. This is not what we want if we are charging for training.
When we look at server hardware there are redundant mother boards, power supplies, hard drives to support a failure of any one key piece of hardware. They are also designed for multiple users to access them at the same time. With dual motherboards and multiple CPU’s and much more available ram you have the resources to run a whole online class quite cheaply.
With two Intel Xeon processors which is just a funky name for a CPU with a large amount of cores. You could have 16 cores per CPU which means you would have 32 cores in total. A core in a CPU is like a human brain for a computer. A CPU used to be known as the brain in a computer but with newer technology it is more just a box that many little brains can be housed in. These are called CPU cores.
This in simple terms means you could easily run 32 classroom machines quite easily. If you also had 128 gig of RAM on the server you could have 4 gig of RAM each machine or a pool of that much Ram to use for your class.
NOTE : If none of this made sense that is ok! This will generally be worked out by your IT department anyway but just know you could easily have up to 32 students in a live online class with per Stand Alone Virtual Machine Server.
Choosing the Virtual Machine Software
What is a Virtual Machine
So what is a Virtual Machine or VM? Essentially you install some software on your machine and you can run a full computer inside it. This is shown in the image below. The Host Machine is the physical PC or Laptop that is running the virtual machine. The Virtual Machine running on it as an application is the Client Machine.
So why would you want to do this for training? Well there are many reasons and they are:
- Having a Controlled Environment for teaching so each student is guaranteed the same experience
- Being able to restore the machine back to a previous state by using Snapshots at the click of a button
- Being able to swap between class machines at the click of a button
- Being able to reset a machine in seconds in class when students have issues
- Making a whole classroom of machines automatically
- Reducing physical machine maintenance by having to only update one Virtual Machine Template
- The ability to use these machines online
There are many other reasons to use Virtual Machines but these are the most relevant for teaching.
Recommended VM Hardware
When you are using Virtual Machines it is important to understand the hardware requirements that you typically need per virtual machine. Depending on the software you are teaching on you may need specific hardware requirement but below is a good recommendation for you.
Virtual Hardware Allocation Per Virtual Machine
- 1 CPU
- 8 gig RAM
- 100 Mb network speed
This recommendation is flexible as the resources on a Virtual Server are in a big pool like a bunch of workers at a job site. Each Virtual Machine can take the resources it needs at the time and then puts them back when they are done with them.
Types of Virtual Machines
These are the types of Virtual Machines you could use:
- Stand Alone Virtual Machines
- Virtual Machine Server
- Cloud Based Virtual Machines
Stand Alone Virtual Machine
A Stand Alone Virtual Machine is what you saw in the image above where you are running a single virtual machine on another computer. By making the Virtual Machine full screen the student may never even know they are working on a virtual machine and have all the features of a full Windows or any other operating system machine.
You may have one Stand Alone VM for each different class that you teach and they are saved as multiple files in one folder. This folder can be simply copied to make another virtual machine or to be backed up. If you take it to another machine you would still need the virtual machine software installed to run it.
The two biggest stand alone virtual machine software packages are:
You can download and play with Virtual Box for free on your own PC or Laptop and see what a virtual machine can do. There are plenty of free tutorials on YouTube.
You would not use a stand alone virtual machine online but it is perfect for real world classrooms.
Virtual Machine Server
When teaching online in a live classroom style approach you can use a Virtual Machine Server that is on the Internet to allow your students to remotely connect to their machine for the training.
There are many providers of stand alone virtual machine server software such as:
Lets discuss the pro’s and con’s of using them for training machines on line.
When installing Microsoft Server you can install an optional component called Hyper-V. This is their Virtual Server software and just note that to do this you have to have the right Windows Server license so check on this first. Once you have Hyper-V installed then you can run as many Virtual Machines on that computer or server as you have resources.
VMWare ESX and ESXi
VMWare is just a company name that makes a lot of virtualization software products and their stand alone servers run an operating system called ESX. ESX is an operating system just like Windows is except that it is designed specifically for running Virtual Machines. ESXi is the free version of the operating system and you can use it with up to two CPU’s and 128gig of RAM.
This means you can use it for free for your online classroom which means the cost is lowered significantly over using Hyper-V on Windows. Even though the operating system is not windows you can still run Windows Virtual Machines on it for your class. As well as any other operating system you might want for your students.
NOTE : For a stand alone server ESXi due to it being free this is by far my favorite at the writing of this article. That and it is way more efficient with resources than windows as the operating system.
TIP : If you are using your own training server
Cloud Based Virtual Machines
What are Cloud Based Virtual Machines? Well basically they are just virtual machines that are in a big Data Center that is connected to the internet. What is a Data Center? Simply a lot of big server machines in an air conditioned room like you see in the movies.
All these servers are all linked together with special software that allows all the resources to be put in a big pool or bucket. Then the administrator of that data center can create as many virtual machines as he likes and has resources for without caring on which physical hardware it runs.
All that technical mumbo jumbo out of the road and for you an your class it just means that you can have as many virtual machines with internet connections as you want for your class and you can either pay for them only when you are using them or have permanent ones connected to the internet.
The cloud provider will put the operating system and assign the hardware resources you need for your class and you only need to load your software or resources you will need for the class. Once you have a single machine set up the way you want for the class they can clone that out for as many students as you have. They can also back it up or take a snapshot to roll back to for your next class as well.
There are many suppliers of Cloud Based Virtual Machines and the big player are:
Or you could pick any number of local providers in each country and state from a google search if you like more personalized phone service. You will need to do some research on cost and response time for support for each provider and go with the one that suits your needs.
NOTE : If your Virtual Machines are physically located on a cloud based out of the USA and you have students in Australia or anywhere else in the world it is worth checking they work just as well for them as they do for you in the USA. This is all dependent on distance and connection speed.
Setup the Training Environment
This is the same step as you would do in a physical classroom where you would do the following for your template teaching VM:
- Install Your Operating System
- Install the Applications for training
- Copy any training resources to the VM’s
TIP : Keep in mind you only need to set up one VM and you can then use it as a template for the rest of the student and teacher VM’s for each class. This will save your heaps of class preparation time.
Install Classroom Management Software
This software will enable you to see where your students all are with thumbnail view and also allow you to remotely support them and much more. For more on this topic read the What is Classroom Management Software article.
Purchasing Web Conferencing Software
There are many suppliers of Web Conferencing Software and in the Virtual Classroom you will be using this to show what you are doing on your computer to your students. This could be guiding them through some software, showing power points or anything else you can do on a computer.
For more on Web Conferences and a general overview of how to teach online see this article “How to Teach Live Online“. It also has a general overview of what a Virtual Classroom is.
Setup Easy Student Remote Access
When you are using Virtual Machines connected to the internet the default way for students to connect is via Remote Desktop tools. This while it should work if the student is connecting from their home internet connection probably won’t work if they are at a workplace. This is because business firewalls and routers stop direct connecting using these tools.
Remote Desktop Software you could use is :
TeamViewer could be installed on your template VM for students to connect and after starting up each classroom you would have to go into each machine and get their unique Teamviewer ID for each student to connect as well as the Teachers machine. Teamviewer has now started to be blocked by some business firewalls with deep packet inspection.
Chrome Remote Desktop is free but also would require you to set it up on each machine and send a remote support link to each student. But you could do it as well.
Apache Guacamole is an open source package you could use for remote controlling your desktops in a HTML5 compliant browser. While open source software is typically free to use for private or corporate use if something goes wrong you have no support contract. This means that if there i a problem you have to fix it and there is no paid on call support desk to quickly fix it for you.
The best solution would be to setup and use Thinfinity Remote Desktop Server from Cybele Software. You will need to have the software running on a dedicated Virtual Machine and it will allow your students to connect to their classroom machines with just a web browser. This also means they can connect from anywhere with internet access through any firewalls and routers. You can also pay for support so you have someone to help fix any issues you may have.
Now you have a live online teaching environment that will allow you to teach classes online. For tips and tricks when running your first class check out this article “15 Practical Tips for Teaching your First Online Class“