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

Attach: Tracking issue #8

Open
euank opened this Issue Sep 9, 2016 · 3 comments

Comments

Projects
None yet
5 participants
@euank
Contributor

euank commented Sep 9, 2016

Attach is one of the larger unknowns in this integration. The work that needs to be done here is dependent on rkt providing such a feature, and significant work remains Kubernetes side for the final "CRI" integration to happen.

It's a complete unknown on the rkt side, and an "known-ish" on the Kubernetes side currently.

Relevant issues:
rkt/rkt#1799
kubernetes/kubernetes#29579

We should split out an additional implementation issue or turn this into one once the above two issues are resolved.

Based on the current lay of things, I think the work will split up roughly as the following:

  • rkt: Implement the needed features for attach to function at all
  • CRI: Commit to "option 3" from their issue, effectively implementing attach via an exec'd container
  • CRI: Provide an interface for "create an attach-helper container and give me back a url"
  • CRI-runtimes-shared-code: Create a library which all runtimes can share that creates the expected api/endpoint/auth for api-service to connect to, and requires a small number of stub methods to be implemented (namely 'attach', 'exec')
  • rktlet: Provide the implementation for those stubs using rkt
  • rktlet: Package and ship the above implementation as a container
  • rktlet: Implement the CRI method by translating it into running our specific helper container
@lucab

This comment has been minimized.

Collaborator

lucab commented Sep 13, 2016

Regarding the first point (rkt implementation), a tentative plan come up from the discussion at rkt/rkt#1799 (comment). Low-level implementation of a per-container ttymux service in progress.

@lucab

This comment has been minimized.

Collaborator

lucab commented Sep 19, 2016

I have a working ttymux POC but it looks like kubernetes requirements are more complex than that and also require separate stdin/stdout/stderr handling, see rkt/rkt#1799 (comment). For rkt, this means that systemd needs to support exposing each single stream instead of tty content. I just submitted systemd/systemd#4179 to systemd for that and if accepted I can proceed with wiring in support for it.

@euank euank referenced this issue Oct 28, 2016

Open

Initial run of e2e tests #52

0 of 5 tasks complete
@alban

This comment has been minimized.

Collaborator

alban commented Jun 28, 2017

rkt has now an "attach" command, enabled with RKT_EXPERIMENT_ATTACH=true
https://github.com/rkt/rkt/blob/master/Documentation/subcommands/attach.md

@iaguis iaguis added this to the v0.2.0 milestone Nov 15, 2017

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment