
############
makegocons.8
############

.. highlight:: perl


****
NAME
****


\ **makegocons**\  - Register or unregister the node in the goconserver service


********
SYNOPSIS
********


\ **makegocons**\  [\ **-V|-**\ **-verbose**\ ] [\ **-d|-**\ **-delete**\ ] [\ **-q|-**\ **-query**\ ] [\ *noderange*\ ]

\ **makegocons**\  [\ **-V|-**\ **-verbose**\ ] [\ **-C|-**\ **-cleanup**\ ]


***********
DESCRIPTION
***********


In order to use \ *goconserver*\  instead of \ *conserver*\ , reference https://xcat-docs.readthedocs.io/en/latest/advanced/goconserver/quickstart.html for more information.

The \ **makegocons**\  command will start the goconserver service if it is not started, then
send the REST request to create or delete the session resource in the goconserver service. The session
information including the session command or ssh connection parameters (for openbmc) is generated by xcat
based on the records in the related tables (e.g. nodehm, ipmi, ppc, openbmc).

By default \ **makegocons**\  will register the session for all of the nodes in xcat.

If a \ *noderange*\  is specified, only the session in the specified scope will be affected, goconserver
service will not be restarted and the other session will not be disconnected. This is the advantage
of goconserver over the conserver service with \ **makeconservercf**\ .

If \ **-d**\  is specified, \ **makegocons**\  will remove the session in the goconserver service.

In the case of a hierarchical cluster (i.e. one with service nodes) \ **makegocons**\  will determine
which nodes will have their consoles accessed from the management node and which from a service node
(based on the nodehm.conserver attribute).

To start goconserver on the specified service node, setup goconserver package on that service node, then set
the \ **console**\  column of \ **servicenode**\  table to \ **2**\ .

To support diskless service node, a new column \ **consoleenabled**\  has been added in \ **nodehm**\  table, it is used by \ **makegocons**\ 
command to save the current console state for the node. After reinstalling the service node, the console storage file which maintain
the console nodes by goconserver is lost, xCAT would register the console nodes into goconserver based on \ **consoleenabled**\  attribute
when restarting xcatd service.

For openbmc which uses ssh as the terminal session connection method, goconserver can help save the system
resources as goconserver could handle the ssh connection within goroutine which is more light-weighted than the command process.

\ **Note:**\  goconserver only support the systemd based systems. It has been integrated with xCAT as a recommended package.


*******
OPTIONS
*******



\ **-d|-**\ **-delete**\ 
 
 Delete rather than add or refresh the nodes specified as a noderange.
 


\ **-C|-**\ **-cleanup**\ 
 
 Remove the entries for the nodes whose definitions have been removed from xCAT db.
 


\ **-q|-**\ **-query**\ 
 
 List the console connection of the nodes. If noderange is not specified, all of the console nodes will be displayed.
 


\ **-v|-**\ **-version**\ 
 
 Display version.
 


\ **-V|-**\ **-verbose**\ 
 
 Verbose mode.
 


\ **-h|-**\ **-help**\ 
 
 Display usage message.
 



************
RETURN VALUE
************



0. The command completed successfully.



1. An error has occurred.




********
EXAMPLES
********



1. To create goconserver configuration for all the nodes.
 
 
 .. code-block:: perl
 
   makegocons
 
 


2. To create goconserver configuration for nodes node01-node10.
 
 
 .. code-block:: perl
 
   makegocons node01-node10
 
 


3. To remove goconserver configuration for node01.
 
 
 .. code-block:: perl
 
   makegocons -d node01
 
 


4. To list console connection for node01.
 
 
 .. code-block:: perl
 
   makegocons -q node01
 
 



********
SEE ALSO
********


rcons(1)|rcons.1

