The advancement of computer technology and the increasing complexity of research problems are creating the need to teach parallel programming in higher education more effectively. In this paper we present StarHPC, a system solution that supports teaching parallel programming in courses at the Massachusetts Institute of Techology. StarHPC prepackages a virtual machine image used by students, the scripts used by an administrator, and a virtual image of the Amazon Elastic Computing Cloud (EC2) machine used to build the cluster shared by the class. This architecture coupled with the no-cost availability of StarHPC allows it to be deployed at other institutions interested in teaching parallel programming with a dedicated compute cluster without incurring large upfront or ongoing costs.