hadoop-yarn-issues mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Eric Yang (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (YARN-8839) Define a protocol exchange between websocket client and server for interactive shell
Date Tue, 30 Oct 2018 22:43:00 GMT

    [ https://issues.apache.org/jira/browse/YARN-8839?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16669405#comment-16669405
] 

Eric Yang commented on YARN-8839:
---------------------------------

In the current implementation, there is one control implemented.  The structure of the protocol
is leading by number one, and follow by a JSON string, for example, sending heartbeat looks
like:

1{}

This is used to ping server to check if there is any output.  We can use the same format to
set terminal size:

1{cols:80, rows:25}

The rest of the data stream are treated as byte array.

> Define a protocol exchange between websocket client and server for interactive shell
> ------------------------------------------------------------------------------------
>
>                 Key: YARN-8839
>                 URL: https://issues.apache.org/jira/browse/YARN-8839
>             Project: Hadoop YARN
>          Issue Type: Sub-task
>          Components: nodemanager
>            Reporter: Eric Yang
>            Assignee: Eric Yang
>            Priority: Major
>              Labels: docker
>
> 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:
> # Resize terminal columns and rows
> # Set title of the window
> # Upload files via zmodem protocol
> # Set terminal type
> # Heartbeat (poll server side for more data)
> # 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.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: yarn-issues-unsubscribe@hadoop.apache.org
For additional commands, e-mail: yarn-issues-help@hadoop.apache.org


Mime
View raw message