'\" t .\" Title: fcoemon .\" Author: [FIXME: author] [see http://docbook.sf.net/el/author] .\" Generator: DocBook XSL Stylesheets v1.78.1 .\" Date: 09/30/2015 .\" Manual: Open-FCoE Tools .\" Source: Open-FCoE .\" Language: English .\" .TH "FCOEMON" "8" "09/30/2015" "Open\-FCoE" "Open\-FCoE Tools" .\" ----------------------------------------------------------------- .\" * Define some portability stuff .\" ----------------------------------------------------------------- .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .\" http://bugs.debian.org/507673 .\" http://lists.gnu.org/archive/html/groff/2009-02/msg00013.html .\" ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ .ie \n(.g .ds Aq \(aq .el .ds Aq ' .\" ----------------------------------------------------------------- .\" * set default formatting .\" ----------------------------------------------------------------- .\" disable hyphenation .nh .\" ----------------------------------------------------------------- .\" * MAIN CONTENT STARTS HERE * .\" ----------------------------------------------------------------- .SH "NAME" fcoemon \- Open\-FCoE service daemon .SH "SYNOPSIS" .sp \fBfcoemon\fR [\-f|\-\-foreground] [\-l|\-\-legacy] [\-d|\-\-debug] [\-s|\-\-syslog] .sp \fBfcoemon\fR \-h|\-\-help .sp \fBfcoemon\fR \-v|\-\-version .SH "DESCRIPTION" .sp The \fBfcoemon\fR daemon is the core component of the \fIOpen\-FCoE\fR management service\&. .sp The primary function of \fBfcoemon\fR is to control FCoE instances\&. \fBfcoemon\fR will create, destroy, reset, enable and disable FCoE instances based on system configuration, administrative commands, and runtime events\&. .sp On startup, \fBfcoemon\fR will create FCoE instances defined by the configuration files (see \fIFILES\fR section below)\&. Since FCoE typically relies on the Data Center Bridging (DCB) capabilities of an Ethernet interface, \fBfcoemon\fR establishes a connection with the LLDP daemon \fBlldpad\fR to query the status of the DCB features on relevant Ethernet interfaces and receive DCB configuration change events\&. .sp During runtime, \fBfcoemon\fR will monitor network and \fBlldpad\fR events for the relevant Ethernet interfaces and perform appropriate actions (create, destroy, enable, disable) on the FCoE instances\&. \fBfcoemon\fR also provides a client interface via which the \fBfcoeadm\fR utility is able to issue commands\&. .sp Installation of the \fIfcoe\-utils\fR package will set up an \fIfcoe\fR service which will control the execution of the \fBfcoemon\fR daemon\&. .SH "OPTIONS" .PP \fB\-f\fR, \fB\-\-foreground\fR .RS 4 Run \fBfcoemon\fR in the foreground\&. .RE .PP \fB\-d\fR, \fB\-\-debug\fR .RS 4 Enable debugging messages\&. .RE .PP \fB\-l\fR, \fB\-\-legacy\fR .RS 4 Force fcoemon to use the legacy /sys/module/libfcoe/parameters/ interface\&. The default is to use the newer /sys/bus/fcoe/ interfaces if they are available\&. .RE .PP \fB\-s\fR, \fB\-\-syslog\fR .RS 4 Use syslogd for logging\&. The default behavior is to log to stdout and stderr\&. .RE .PP \fB\-h\fR, \fB\-\-help\fR .RS 4 Show help message with basic usage instructions .RE .PP \fB\-v\fR, \fB\-\-version\fR .RS 4 Show the version of the \fBfcoemon\fR command\&. .RE .SH "TERMINOLOGY" .PP \fIDCB\fR .RS 4 Data Center Bridging A set of Ethernet enhancement standards developed by the IEEE 802\&.1 Working Group\&. .RE .PP \ \& .RS 4 See http://www\&.ieee802\&.org/1/pages/dcbridges\&.html for more information\&. .RE .PP \fIDCBX\fR .RS 4 DCB Capabilities Exchange Protocol, implemented by the DCB module of \fBlldpad\fR\&. DCBX exchanges DCB capabilities and configuration with a link partner as a series of values transferred using the Link Layer Discovery Protocol (LLDP)\&. .RE .PP \fIPFC\fR .RS 4 Priority\-based Flow Control, a \fIDCB\fR feature\&. .RE .PP \fIApp:FCoE\fR .RS 4 The FCoE instance of application specific parameters in DCBX\&. .RE .SH "CRITERIA USED FOR CONTROLLING THE FCOE INSTANCE" .sp \fBfcoemon\fR uses two information sources for determining when to create an FCoE instance: the state of the network interface, which may be a VLAN interface, and, if required for the FCoE instance, the state of the DCB configuration on the physical Ethernet interface\&. .sp First of all, the network interface must be "up" for the FCoE instance to be created\&. Secondly, if the FCoE configuration indicates that DCB is required, then the following criteria must be satisfied before the FCoE interface is created: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} DCB is enabled on the Ethernet interface\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} The PFC DCB feature is enabled and operational\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} The App:FCoE DCB feature is enabled and operational\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} The priority indicated by the App:FCoE feature is also enabled for PFC\&. .RE .sp Once the FCoE instance is created by \fBfcoemon\fR, it will only be destroyed under the following conditions: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} The driver for the Ethernet interface is unloaded\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} A user administratively destroys the FCoE instance using \fBfcoeadm\fR\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} The \fBfcoemon\fR daemon is terminated\&. .RE .sp If DCB is required for the FCoE instance, and the DCB settings change after the interface is created, the following criteria are used to disable the FCoE instance: .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} DCB is disabled on the Ethernet interface\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} The App:FCoE DCB feature is not enabled\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} The App:FCoE and PFC features are operational AND the priority indicated by App:FCoE is not enabled for PFC\&. .RE .sp Otherwise, the FCoE instance will always remain enabled\&. .SH "CONFIGURATION" .sp Once the \fIfcoe\-utils\fR and \fBlldpad\fR packages have been installed and the corresponding services are running, there are a few simple configuration steps required to get an FCoE instance up and running\&. The following assumes that DCB will be required for the interface\&. .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Ensure that the configuration on the peer device (e\&.g\&. FCoE capable switch) has the necessary configurations (VLANs, DCB, DCBX)\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Configure any needed VLAN interfaces on the local system\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Create and configure \fI/etc/fcoe/cfg\-\fR files for the network interfaces over which FCoE instances need to be created\&. See the \fIFILES\fR sections for details\&. Note that \fIifname\fR may be for a VLAN interface\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} Restart the \fBfcoe\fR service (i\&.e\&. \fBfcoemon\fR)\&. .RE .sp .RS 4 .ie n \{\ \h'-04'\(bu\h'+03'\c .\} .el \{\ .sp -1 .IP \(bu 2.3 .\} The default DCB configuration of an Ethernet interface managed by \fBlldpad\fR requires the following configuration using \fBdcbtool\fR\&. .sp .if n \{\ .RS 4 .\} .nf dcbtool sc ethX dcb on <\-\- enable DCB on the interface dcbtool sc ethX app:fcoe e:1 <\-\- enable App:FCoE on the interface .fi .if n \{\ .RE .\} .RE .sp These steps only need to be done one time\&. Note that if other DCB configuration changes have been made with \fBdcbtool\fR, then additional changes may need to be made in order to satisfy the DCB criteria for creating an FCoE instance\&. Consult \fBdcbtool\fR for details\&. .sp Once these configuration steps have been performed, use \fBfcoeadm\fR to query the status of the FCoE instances\&. .SH "FILES" .SS "/etc/fcoe/config" .sp This is the primary configuration file for the \fBfcoe\fR system service\&. The default options in this file are: \fBDEBUG="no"\fR and \fBUSE_SYSLOG="yes"\fR\&. The former is used to enable debugging messages from the fcoe service script and \fBfcoemon\fR (via the \fB\-\-debug\fR option)\&. The latter is to indicate if the log messages are to be output to the system log (via the \fB\-\-syslog\fR option)\&. \fBSUPPORTED_DRIVERS\fR is the list of drivers to automatically load during fcoe service start\&. Any changes to this file will require a restart of the \fBfcoe\fR service\&. .SS "/etc/sysconfig/fcoe" .sp On systemd\-enabled systems, this is the primary configuration file used for the \fBfcoe\fR system service\&. Add \fB\-\-debug\fR to \fBFCOEMON_OPTS\fR to enable debug log messages\&. Any changes to this file will require a restart of the \fBfcoe\fR service\&. .SS "/etc/fcoe/cfg\-" .sp These files are read by \fBfcoemon\fR on initialization\&. They are used to indicate which Ethernet or VLAN interfaces should have FCoE instances created\&. The option values in this file normally are: \fBFCOE_ENABLE="yes"\fR, \fBDCB_REQUIRED="yes"\fR, and \fBAUTO_VLAN="yes"\fR, though if the variable values are omitted, they default to "no"\&. .PP \fIFCOE_ENABLE\fR .RS 4 is used to enable/disable creation of the FCoE instance\&. If FCoE_ENABLE is set to "no", then the other configuration values have no effect\&. .RE .PP \fIDCB_REQUIRED\fR .RS 4 indicates if the DCB service is required on the Ethernet interface\&. .RE .PP \fIAUTO_VLAN\fR .RS 4 indicates if VLAN discovery should be performed\&. If AUTO_VLAN is set to "yes", then once the link configuration has been validated, \fBfcoemon\fR will run run the FIP VLAN discovery protocol on the Ethernet interface\&. Network interfaces for any discovered FCoE VLANs will be automatically created, if they are not already configured, and FCoE instances will be created on the VLAN interfaces\&. If the network interface specified by the filename is already a VLAN interface, the AUTO_VLAN setting is ignored\&. .RE .PP \fIMODE\fR .RS 4 indicates whether operation will be in fabric or vn2vn mode\&. The default is fabric\&. .RE .PP \fIFIP_RESP\fR .RS 4 indicates whether a FIP responder should be activated on this device to support VLAN discovery in a vn2vn environment\&. The default is "no"\&. Often this will be used on a vn2vn node also serving as a target\&. When using this option, the AUTO_VLAN should not be set and the supported VLANs should have configuration files supplied, constituting a static VLAN configuration that provides the information for the FIP responder to return\&. This should be set on a base device, which should probably have FCOE_ENABLE set to "no" since presumably FCoE operation will be on the configured VLANs\&. .RE .sp Note that the attached Ethernet peer device (e\&.g\&. FCoE capable switch port) must have compatible settings For DCB and FCoE to function properly\&. .SS "/etc/init\&.d/fcoe" .sp This is the \fBfcoe\fR system service script\&. This script is invoked by the init process or by the service command to start and stop the \fBfcoemon\fR\&. On systemd\-enabled systems, \fBfcoemon\fR is controlled via the \fBfcoe\&.service\fR unit\&. .SH "VLAN NAMING CONVENTIONS" .sp If a new VLAN device is created (see the description of the \fIAUTO_VLAN\fR setting above), it will have the name \fIdev\fR\&.\fIvlan\fR\-fcoe; where \fIdev\fR is the name of the Ethernet parent device and \fIvlan\fR is the discovered VLAN ID number\&. .SH "SEE ALSO" .sp \fBfcoeadm\fR(8) \fBlldpad\fR(8) \fBlldptool\fR(8) \fBdcbtool\fR(8) .SH "SUPPORT" .sp \fBfcoemon\fR is part of the \fIfcoe\-utils\fR package, maintained through the \fIOpen\-FCoE\fR project\&. Resources for both developers and users can be found at the \fIOpen\-FCoE\fR website http://open\-fcoe\&.org/