code: def migrate_cluster(cluster):
      
  
      for old, new in [('_user_key_public', 'user_key_public'),
                       ('_user_key_private', 'user_key_private'),
                       ('_user_key_name', 'user_key_name'),]:
          if hasattr(cluster, old):
              setattr(cluster, new, getattr(cluster, old))
              delattr(cluster, old)
      for kind, nodes in cluster.nodes.items():
          for node in nodes:
              if hasattr(node, 'image'):
                  image_id = getattr(node, 'image_id', None) or node.image
                  setattr(node, 'image_id', image_id)
                  delattr(node, 'image')
  
      # Possibly related to issue #129
      if not hasattr(cluster, 'thread_pool_max_size'):
          cluster.thread_pool_max_size = 10
      return cluster
docs: Called when loading a cluster when it comes from an older version
      of elasticluster