skypilot icon indicating copy to clipboard operation
skypilot copied to clipboard

Syncing user cluster state across multiple work machines

Open gmittal opened this issue 3 years ago • 2 comments

(low priority) based on personal experience.

If a user moves laptops/machines/etc., there is no way for their state to transfer with them (sky status is now empty on the new machine) since we use a local sqlite db.

gmittal avatar Jan 13 '22 05:01 gmittal

Yes, that would be good to have. I am thinking if we can have a conda style machine sharing as well.

  1. sky share -c cluster [new_username] [-i other_pubkey_file] > share_file.cluster, which export the handle of the cluster to a file and (create a new user on the remote machine, upload the pub key) if needed. (also, the user can manually edit the share_file.cluster file to add their manually created instances as a cluster).
  2. Another user (or the same user on another machine) can use sky import -c cluster_name share_file.cluster to import the cluster to there local state.
  3. We need to be careful about the imported cluster (maybe showing the status as external), as the other user do not have the access to the aws account related to the cluster.

Michaelvll avatar Jan 13 '22 19:01 Michaelvll

Related to https://github.com/skypilot-org/skypilot/issues/1138 Would be interesting to evaluate the option for an external SQL database instead of the local SQLite

tonxxd avatar Sep 09 '22 06:09 tonxxd

This issue is stale because it has been open 120 days with no activity. Remove stale label or comment or this will be closed in 10 days.

github-actions[bot] avatar May 12 '23 21:05 github-actions[bot]

Hi, any update on this?

tonxxd avatar Jul 25 '23 14:07 tonxxd

Hey @tonxxd, we haven't had the resources to look into this. The workaround remains sharing ~/.sky and ~/.ssh (technically, just config, sky-key, sky-key.pub) across machines.

concretevitamin avatar Jul 25 '23 16:07 concretevitamin

Just noting that if you have different $HOME paths on the machines (e.g., if you have different usernames), you may need to update the IdentityFile path in ~/.ssh/config after you copy it to your destination machine.

Here's a simple one-liner to do so :

OLDUSER='/Users/romilb' NEWUSER='/Users/newuser' sed -i '' "s|IdentityFile $OLDUSER/.ssh/sky-key|IdentityFile $NEWUSER/.ssh/sky-key|g" $NEWUSER/.ssh/config

romilbhardwaj avatar Nov 07 '23 16:11 romilbhardwaj

This issue is stale because it has been open 120 days with no activity. Remove stale label or comment or this will be closed in 10 days.

github-actions[bot] avatar Mar 07 '24 01:03 github-actions[bot]

This issue was closed because it has been stalled for 10 days with no activity.

github-actions[bot] avatar Mar 17 '24 02:03 github-actions[bot]