mirror of
https://github.com/xcat2/xcat-core.git
synced 2025-05-22 11:42:05 +00:00
120 lines
4.1 KiB
ReStructuredText
120 lines
4.1 KiB
ReStructuredText
Configuration
|
|
=============
|
|
|
|
Location
|
|
--------
|
|
|
|
The configuration file for ``goconserver`` is located at ``/etc/goconserver/server.conf``.
|
|
When the configuration is changed, reload using: ``systemctl restart goconserver.service``.
|
|
An example for the configuration could be found from
|
|
`Example Conf <https://github.com/xcat2/goconserver/blob/master/etc/goconserver/server.conf>`_.
|
|
|
|
Tag For xCAT
|
|
------------
|
|
|
|
xCAT generates a configuration file that includes a identifier on the first
|
|
line. For example: ::
|
|
|
|
#generated by xcat Version 2.13.10 (git commit 7fcd37ffb7cec37c021ab47d4baec151af547ac0, built Thu Jan 25 07:15:36 EST 2018)
|
|
|
|
``makegocons`` checks for this token and will not make changes to the
|
|
configuration file if it exists. This gives the user the ability to customize
|
|
the configuration based on their specific site configuration.
|
|
|
|
|
|
Multiple Output Plugins
|
|
-----------------------
|
|
|
|
``goconserver`` support console redirection to multiple targets with ``file``,
|
|
``tcp`` and ``udp`` logger plugins. The entry could be found like below: ::
|
|
|
|
console:
|
|
# the console session port for client(congo) to connect.
|
|
port: 12430
|
|
|
|
logger:
|
|
# for file logger
|
|
file:
|
|
# multiple file loggers could be specified
|
|
# valid fields: name, logdir
|
|
- name: default
|
|
logdir: /var/log/goconserver/nodes/
|
|
- name: xCAT
|
|
logdir: /var/log/consoles
|
|
|
|
tcp:
|
|
- name: logstash
|
|
host: briggs01
|
|
port: 9653
|
|
ssl_key_file: /etc/xcat/cert/server-cred.pem
|
|
ssl_cert_file: /etc/xcat/cert/server-cred.pem
|
|
ssl_ca_cert_file: /etc/xcat/cert/ca.pem
|
|
|
|
- name: rsyslog
|
|
host: sn02
|
|
port: 9653
|
|
|
|
udp:
|
|
- name: filebeat
|
|
host: 192.168.1.5
|
|
port: 512
|
|
|
|
With the configuration above, the console log files for each node would be written in
|
|
both ``/var/log/goconserver/nodes/<node>.log`` and ``/var/log/consoles/<node>.log``.
|
|
In addition, console log content will be redirected into remote services
|
|
specified in the tcp and udp sections.
|
|
|
|
Verification
|
|
------------
|
|
|
|
To check if ``goconserver`` works correctly, see the log file ``/var/log/goconserver/server.log``.
|
|
|
|
#. Check if TCP logger has been activated.
|
|
|
|
When starting ``goconserver``, if the log message is like below, it
|
|
means the TCP configuration has been activated. ::
|
|
|
|
{"file":"github.com/xcat2/goconserver/console/logger/tcp.go (122)","level":"info","msg":"Starting TCP publisher: logstash","time":"2018-03-02T21:15:35-05:00"}
|
|
{"file":"github.com/xcat2/goconserver/console/logger/tcp.go (122)","level":"info","msg":"Starting TCP publisher: sn02","time":"2018-03-02T21:15:35-05:00"}
|
|
|
|
#. Debug when encounter error about TCP logger
|
|
|
|
If the remote service is not started or the network is unreachable, the
|
|
log message would be like below. ::
|
|
|
|
{"file":"github.com/xcat2/goconserver/console/logger/tcp.go (127)","level":"error","msg":"TCP publisher logstash: dial tcp 10.6.27.1:9653: getsockopt: connection refused","time":"2018-03-07T21:12:58-05:00"}
|
|
|
|
Check the service status and the network configuration including the
|
|
``selinux`` and ``iptable rules``. When the remote service works
|
|
correctly, TCP or UDP logger of ``goconserver`` would recover automatically.
|
|
|
|
Reconnect Interval
|
|
------------------
|
|
|
|
If console node is defined with ``ondemand=false``, when the console connection
|
|
could not be established, ``goconserver`` would reconnect automatically. The
|
|
interval time could be specified at ::
|
|
|
|
console:
|
|
# retry interval in second if console could not be connected.
|
|
reconnect_interval: 10
|
|
|
|
Performance Tuning
|
|
------------------
|
|
|
|
Adjust the worker numbers to leverage multi-core processor performance based on
|
|
the site configuration. ::
|
|
|
|
global:
|
|
# the max cpu cores for workload
|
|
worker: 4
|
|
|
|
Debug
|
|
-----
|
|
|
|
The log level for ``goconserver`` is defined in ``/etc/goconserver/server.conf`` ::
|
|
|
|
global:
|
|
# debug, info, warn, error, fatal, panic
|
|
log_level: info
|