Deirdre Lee, Communications Writing Fellow
It takes many people to ensure software applications run correctly, and the Software Development team at the Center for Academic Innovation knows that all too well.
The latest improvement for GradeCraft — an online learning management system for faculty and students — is its platform migration from Amazon Web Services to OpenShift.
Amazon Web Services (AWS) is a cloud platform that is used all over the world to host applications and websites and to make them available to users. AWS provides services that allow software developers to easily publish (or “deploy”) an application. Similarly, OpenShift is an online platform for deploying pre-packaged application “containers” that can easily scale to serve many thousands of users.
Ollie Saunders, Software Developer at Academic Innovation, said the team made the decision to migrate GradeCraft to OpenShift to increase efficiency and decrease cost.
“The main reason we did this is that, historically, GradeCraft was running on Amazon Web Services, which is a very popular way of running applications,” Saunders said. “There are a couple of issues. The two major issues are it’s very expensive, depending on what level of hardware you need, and the other issue is that it’s effectively self-managed, so if anything goes wrong, we have to deal with it.”
He said the goal of the migration was to ensure GradeCraft’s longevity, and with OpenShift, this goal can be actualized. OpenShift is significantly less expensive than Amazon Web Services, and the platform is more secure because U-M’s version of OpenShift is managed and secured by Information and Technology Services (ITS), according to Saunders.
He said another reason GradeCraft migrated to OpenShift is because ITS now has a team dedicated to managing applications like GradeCraft.
“Now the great thing about OpenShift running at U-M is ITS has similar resources to a large enterprise or global organization and so they can basically offer that level of around-the-clock support that we can’t,” Saunders said.
With the support of ITS, he said the Software Development team seamlessly made the transition to OpenShift without impacting GradeCraft users.
Erik Barroso, Software Developer at Academic Innovation, said he focused on tackling GradeCraft’s customized code. As he prepared GradeCraft for migration he said he was surprised by the amount of custom code previously written to support the application for Amazon Web Services.
“Over time, these things got built together in a sort of Frankenstein manner with more complex code than we anticipated,” he said. “So it was a lot of work to identify how much we were depending on the custom code we wrote to put things on the Amazon system.”
Saunders said GradeCraft makes use of underlying software named Kubernetes — a Google platform designed to run scalable applications with many users — as a container system for web applications.
“Think of a container as a box that contains everything you need to run an application — you can easily move these boxes about and host them on anything from your laptop to a huge supercomputer cluster,” he said. “You can also bring in additional boxes to meet increased demand.”
The Software Development team at Academic Innovation learned more about the Kubernetes infrastructure when migrating GradeCraft to OpenShift.
Sundeep Nagumalli, Systems Administrator at Academic Innovation, said the migration was more complicated than just moving files around. He said it took him several months to understand how to operate OpenShift on his own machine before applying his knowledge to the publicly available systems that now host GradeCraft.
“We worked on Kubernetes infrastructure for a good amount of time to understand how OpenShift really works in real-time,” he said.
Chris Kretler, Lead Systems Administrator at ITS, worked closely with Nagumalli and Saunders to familiarize them with OpenShift and help them understand how to set-up the necessary technologies required for the migration and run initial prototypes of GradeCraft on the platform. He said since GradeCraft was already a containerized application meant to run on Kubernetes, there were few technical issues, and the transition to OpenShift was pretty easy — especially since OpenShift is the product ITS uses to power their service.
“Given that the container service provides a managed Kubernetes service, it only made sense for Academic Innovation to take advantage of what we offer,” Kretler said.
Kretler said one advantage ITS offers is having the build mechanisms for GradeCraft built into OpenShift, which simplifies the development and deployment process. With the old system, one paid service was used to produce (or “build”) the container and a different one was used to run it, both aspects are now handled by OpenShift — which reduces both complexity and cost. This allows the Software Development team at Academic Innovation to make quicker changes in GradeCraft than in their previous platform.
Additionally, ITS is responsible for maintaining the university’s version of OpenShift and the infrastructure GradeCraft runs on. Kretler said ITS is aware GradeCraft is a high-profile application, and ITS is proud to provide technical support for GradeCraft.
“ITS is central IT for campus, but if there are significant needs in the academic community, we’re able to address those needs in some cases by creating new services where there’s sufficient demand to meet those needs, and this is one of those cases where there’s a groundswell of demand for groups looking to host containerized applications,” he said. “Academic Innovation was one of them and was the highest profile one, and so the ITS container service evolved and started in order to meet the needs of groups like Academic Innovation.”
Saunders said this migration, and support from ITS, improves the efficiency of GradeCraft in a way that is transparent to users.
“Essentially, migrating GradeCraft to OpenShift has allowed the team to continue providing the same service in a significantly less expensive, more secure and more robust way,” he said.