<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def pause(self):
 """Pause all VMs in this cluster and store data so that they can be restarted later. """

        log.info("Pausing cluster `%s` ...", self.name)
        failed = self._pause_all_nodes()
        if os.path.exists(self.known_hosts_file):
            os.remove(self.known_hosts_file)
        self.repository.save_or_update(self)
        if failed:
            log.warning(
                    "Not all cluster nodes have been successfully "
                    "stopped.  Some nodes may still be running - "
                    "check error messages above and consider "
                    "re-running `elasticluster pause %s` if "
                    "necessary.", self.name)