Magellan Final Report - Office of Science - U.S. Department of Energy
Magellan Final Report - Office of Science - U.S. Department of Energy
Magellan Final Report - Office of Science - U.S. Department of Energy
Create successful ePaper yourself
Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.
<strong>Magellan</strong> <strong>Final</strong> <strong>Report</strong><br />
challenges. Since each node could potentially run many virtual machine instances, the file system could see a<br />
multiplier <strong>of</strong> file system clients. If each node was running eight small instances (one on each core), then the file<br />
system would have to deal with eight times more clients. Furthermore, virtual machines are <strong>of</strong>ten terminated<br />
instead <strong>of</strong> performing a clean shutdown. This could lead to clients frequently joining and leaving the file<br />
system cluster. File systems like GPFS and Lustre employ timeout and heartbeat methods that assume a<br />
relatively stable client pool. Clients randomly disappearing could lead to long hangs while outstanding locks<br />
held by terminated instances were timed out.<br />
There are several potential methods to address these issues. One would be to project only the portions<br />
<strong>of</strong> the file system that the user owns into the virtual machine. This could be done using protocols like NFS<br />
and re-exporting the parallel file system. This option was explored by ALCF <strong>Magellan</strong> staff, but ran into<br />
challenges with Linux kernel and I/O libraries. Another approach would be to forward the file I/O operations<br />
to a proxy server that would have the file systems mounted. The operations would then be performed on<br />
the proxy server as the user who owned the virtual machine instance. The standard file system client would<br />
enforce the access controls.<br />
There are existing file system modules that use the Linux FUSE file system interface to forward I/O over<br />
connections like SSH. The performance over SSH would be poor, but would at least provide access to data.<br />
This method was used by the ALCF/LCRC project that built an extension <strong>of</strong> the Argonne LCRC Fusion<br />
within the OpenStack cloud and worked reasonably well. Alternatively, the I/O Forwarding Scalability Layer<br />
(IOFSL) project [2] is developing a high-performance I/O forwarding layer that could potentially help. While<br />
IOFSL is focused on developing an I/O forwarding system to support ultra-scale HPC systems, the same<br />
mechanisms can be used for virtual machines. These solutions would also help mitigate the scaling and<br />
stability challenges, since they would reduce the number <strong>of</strong> real clients handled by the file system and would<br />
act as a firewall between the virtual machines and the file system.<br />
9.8 Summary<br />
Applications with minimal communication and I/O perform well in cloud environments. Our evaluation<br />
shows that there is a virtualization overhead that is likely to get better with ongoing research. But the<br />
primary performance impact for HPC applications comes from the absence <strong>of</strong> high-bandwidth, low-latency<br />
interconnects in current virtual machines. Thus a majority <strong>of</strong> current DOE HPC applications will not<br />
run efficiently in today’s cloud environments. Our results show that the difference between interconnects<br />
is pronounced even at mid-range concurrencies. Similarly there is an I/O performance issue on virtual<br />
machines, and the absence <strong>of</strong> high-performance file systems further impacts the productivity <strong>of</strong> running<br />
scientific applications within the cloud environment.<br />
82