obmc-console design for multi host support
Andrew Jeffery
andrew at aj.id.au
Wed Mar 4 09:45:38 AEDT 2020
On Wed, 4 Mar 2020, at 03:53, Joseph Reynolds wrote:
>
>
> On 3/2/20 10:03 PM, Andrew Jeffery wrote:
> > On Fri, 28 Feb 2020, at 18:00, Vijay Khemka wrote:
> >> On 2/27/20, 2:05 AM, "openbmc on behalf of Andrew Jeffery"
> >>
> >> ```
> >> $ ls -1 /etc/obmc-console
> >> client.2200.conf
> >> server.ttyVUART0.conf
> >> ```
> >> What are other contents of client and server conf file other than socket-id?
> > Whatever else you were previously specifying for the server.
> >
> >>
> >> So to map the client associated with port 2200 to the server associated
> >> with ttyVUART0 we set the same socket-id value in both files:
> >>
> >> Can this socket-id be any random word and can this be same across multiple
> >> Host (client/server) configuration. I mean, do we need different socket-id for
> >> client.2200 and client.2201 or it can be same.
> > The socket-id is a unique portion for the unix domain socket created by the
> > obmc-console-server instance. The server needs to know this because it needs
> > to know what to name the pipe; the client needs to know it as it needs to form
> > the abstract socket name to which to connect.
> >
> > In general unless you're looking to expose the same console on _different_
> > network ports, you want to pair each client with a unique server.
> >
> > Here's an ASCII diagram:
> >
> > +--------------------------------------------------------------------------------------------+
> > | |
> > | obmc-console-client unix domain socket obmc-console-server |
> > | |
> > | +---------------------+ +------------------------+ |
> > | | client.2201.conf | +---------------------+ | server.ttyVUART1.conf | |
> > +---+--+ +---------------------+ | | +------------------------+ +--------+-------+
> > Network | 2201 +--> +->+ @obmc-console.host1 +<-+ <--+ /dev/ttyVUART1 | UARTs
> > +---+--+ | socket-id = "host1" | | | | socket-id = "host1" | +--------+-------+
> > | | | +---------------------+ | | |
> > | +---------------------+ +------------------------+ |
> > | |
> > | |
> > | |
> > +--------------------------------------------------------------------------------------------+
> >
> > Does that help?
>
> Nice diagram! Can this be added to
> https://github.com/openbmc/obmc-console/blob/master/README.md
>
> I tried to capture this network interface in an architecture review
> here:
> https://gerrit.openbmc-project.xyz/c/openbmc/docs/+/27969/3/architecture/interface-overview.md#130
> which also includes 'ipmi sol activate' and hostlogger.
>
> Please let me know the best way to document this in the project? I
> would be happy to remove details from the doc-under-review and point to
> the obmc-console README. Does that sound right?
Sure, if the diagram was useful for you then it's probably useful for
others too.
For what it's worth, I drew it using http://asciiflow.com/
Andrew
More information about the openbmc
mailing list