Uploaded image for project: 'Hadoop YARN'
  1. Hadoop YARN
  2. YARN-8762 [Umbrella] Support Interactive Docker Shell to running Containers
  3. YARN-8839

Define a protocol exchange between websocket client and server for interactive shell

    XMLWordPrintableJSON

Details

    • Sub-task
    • Status: Resolved
    • Major
    • Resolution: Fixed
    • None
    • None
    • nodemanager

    Description

      Running interactive shell is more than piping stdio from docker exec through a web socket. For enabling terminal based program to run, there are certain functions that work outside of stdio streams to the destination program. A couple known functions to improve terminal usability:

      1. Resize terminal columns and rows
      2. Set title of the window
      3. Upload files via zmodem protocol
      4. Set terminal type
      5. Heartbeat (poll server side for more data)
      6. Send keystroke payload to server side

      If we want to be on parity with commonly supported ssh terminal functions, we need to develop a set of protocols between websocket client and server. Client and server intercept the messages to enable functions that are normally outside of the stdio streams.

      Attachments

        Activity

          People

            eyang Eric Yang
            eyang Eric Yang
            Votes:
            0 Vote for this issue
            Watchers:
            5 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: