When an instructor plans course activities requiring a specialized computing environment, it often presents a challenging set of issues for their IT support group:
- Can the customizations be easily integrated into existing loadsets?
- How many students will be impacted?
- How much time will be required to support this custom configuration?
- If students use personally-owned computers, how complicated and time-consuming will support be?
- How many other instructors need their own customized setups this semester?
The advent of virtual machines and cloud computing is helping turn what often used to be: “No. Sorry, we do not have the resources to support that” to: “Yes. No problem!”
The challenge
This past semester, Professor Omar Ahmed wanted to provide his students with hands-on experience analyzing neural rhythms using Matlab in his course, “Brain Rhythms in Cognition, Mental Health & Epilepsy” (PSYCH 433-002). The activity required a customized Matlab environment, which meant students couldn’t easily sit down at a university computer and quickly get started with their work. Modifying a standard classroom loadset would’ve taken significant time and commitment from LSA IT to ensure it worked and didn’t interfere with other instructors’ needs. Alternatively, if students used personally-owned computers, it would take a large effort to coordinate and support the activity across different environments. Plus, some students’ computers might be too underpowered to enable them to easily complete the activities.
The AWS solution
After some discussion, Eric Pinaud at LSA IT connected Professor Ahmed with the LSA IT Advocacy and Research Support team. Based on his expectations and educational goals, the computational performance requirements, and the limited resource commitment LSA IT could offer, we quickly developed a solution using Amazon Web Services (AWS). It provided a simple option for both the instructor and his students to use, and for LSA IT to support, requiring only a small commitment of time and resources from everyone.
Amazon Web Services… provided a simple option for both the instructor and his students to use, and for LSA IT to support, requiring only a small commitment of time and resources from everyone.
We added Matlab to a custom Amazon Machine Image (AMI) we maintain, based on Windows Server, which included the latest Windows Updates, some typical helper applications and utilities, and customizations for the LSA computing environment. We deployed the AMI to a c4.xlarge AWS EC2 instance and the professor then installed the custom Matlab libraries and data sets needed for the course. After testing and updating the AMI, we were all set to launch fourteen additional c4.xlarge instances, one for each student, when the class was ready.
As part of introducing the neural analysis activity, the students were given a quick introduction to the UMICH VPN client and Microsoft Remote Desktop. These represented the only “extra” skills required of the students, and many were already familiar with these tools through accessing library resources and other activities.
The results
The end result was a classroom full of students up and running quickly, using a uniform Windows-Matlab environment. If questions came up, students could help each other, as they were all using the same setup. If something more complicated arose, Professor Ahmed or LSA IT would only have to worry about questions pertaining to one type of environment. Thus, the potential headache of supporting a wide variety of personal devices was significantly reduced to only variations in VPN and Microsoft RDP clients.
The cost of the two-week period during which the students used AWS was covered entirely by the AWS Educate program. At member institutions, like U-M, each student is eligible for $100 of free credits, while instructors receive $200. We experienced some complications during the initial setup, but the AWS Educate support team was very responsive. The use of AWS in this case showed that, under the right circumstances, it can be a flexible, robust, and cost-effective tool for specialized classroom computing environments.