Complex distributed systems are increasingly important in modern computer science, yet many undergraduate curricula do not give students the opportunity to develop the skill sets necessary to grapple with the complexity of such systems. We have developed and integrated into an undergraduate elective course on parallel and distributed computing a teaching tool that may help students develop these skill sets. The tool uses virtualization to ease the burden of resourcing and configuring complex systems for student study, and creates varied "firefighting" gaming scenarios in which students compete to keep the system up and running in the presence of multiple issues. Preliminary experience indicates that (1) students find the tool engaging and (2) it is a manageable way in which to give students a novel perspective on interaction with complex distributed systems. Categories and Subject Descriptors K.3.2 [Computer and Information Science Education]: Curriculum General Terms Manage...