Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Put the machine into the limbo state when it join Omni for the first time #840

Open
Tracked by #38
Unix4ever opened this issue Jan 15, 2025 · 0 comments
Open
Tracked by #38

Comments

@Unix4ever
Copy link
Member

Unix4ever commented Jan 15, 2025

Change the process of the machine join. The process will look like this:

  1. Store the unique token in the link resources.
  2. Talos does the request to the siderolink API.
  3. Omni takes the decision what to do with the machine:
    1. if the machine has no unique token, put the machine into the limbo state unconditionally.
    2. If the machine has unique token and it matches with what is stored in the link, let the machine join.
    3. if the machine has the unique token and it doesn't match, reject the machine.
  4. For the machines in the limbo state:
    1. check the policy for the machine join (can depend on the token type) and let the machine in or leave it in the limbo state.
    2. user can accept the machine which is in the limbo state, Omni will let it fully join.
    3. if there's a link with non-empty unique token and the same UUID, Omni should generate a unique UUID for the machine in the limbo state.
  5. For each machine in the limbo state which was accepted, generate a unique token.
  6. For each machine with the unique token, create a link.

Migration should be handled: if the link exists and there's no unique token, let the machine in without putting it into a limbo state.

We can use the Wireguard address of the connected machine as the ID for the machines in the limbo state.

@Unix4ever Unix4ever changed the title put into the limbo state when it join Omni for the first time Put the machine into the limbo state when it join Omni for the first time Jan 15, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant