fdio
Table of Contents
- Overview
- Module Description
- Setup
- Usage
- Reference
- Limitations
- Development
- Release Notes/Contributors
Overview
Puppet module that installs and configures FD.io projects VPP and Honeycomb Agent.
Module Description
Deploys FD.io projects to various OSs via package.
All configuration should be handled through the Puppet module's params.
Setup
What fdio
affects
Usage
The most basic usage, passing no parameters to the fdio class, will install and start VPP with a default configuration.
class { 'fdio':
}
Set uio-driver
To set the uio-driver use the vpp_dpdk_uio_driver
param.
class { 'fdio':
vpp_dpdk_devs => ['0000:00:07.0'],
vpp_dpdk_uio_driver => 'vfio_pci',
}
Reference
Classes
Public classes
::fdio
: Main entry point to the module.::fdio::honeycomb
: Class to install and configure Honeycomb agent.
Private classes
::fdio::params
: Contains default class param values.::fdio::install
: Installs VPP from packages.::fdio::config
: Manages VPP startup config::fdio::service
: Shuts down and disables kernel interfaces, starts VPP service and configuring VPP interfaces
Parameters
::fdio
repo_branch
FD.io repository branch name.
Default: release
Valid options: release
, master
, and branch name such as stable.1609
.
vpp_dpdk_devs
PCI devices to bind to VPP.
Default: []
Valid options: list of PCI devices in the form of "DDDD:BB:SS.F"
vpp_dpdk_uio_driver
Sets the uio-driver for VPP
Default: undef
Valid options: vfio-pci
, uio_pci_generic
and igb_uio
. Note that igb_uio
must be already loaded in the kernel before this module is invoked.
vpp_vlan_enabled
Enabled vlan tagged traffic on VPP interfaces. This is needed to configure vlan_strip_offload option for Cisco VIC interfaces.
Default: false
Valid options: true
, false
vpp_cpu_main_core
vpp_cpu_corelist_worker
VPP thread pinning configuration. Details about those options can be found here.
Default: undef
Valid options: Same format as VPP startup config is accepted. Reference here.
vpp_cpu_corelist_worker
Configures VPP interface with IP settings found on its corresponding kernel NIC.
Default: true
Valid options: true
, false
::fdio::honeycomb
rest_port
Port for Honeycomb REST interface to listen on.
Default: '8181'
Valid options: Valid TCP port number.
websocket_rest_port
Port for Honeycomb REST interface to listen on for websocket connections.
Default: '7779'
Valid options: Valid TCP port number.
user
Username to configure in honeycomb
Default: 'admin'
password
Password to configure in honeycomb
Default: 'admin'
Limitations
- Currently only works on Centos 7. Ubuntu support will be added in the future.
Development
We welcome contributions and work to make them easy!