This repo contains general reclass system level of salt model. It is to be used along with service models and concrete cluster deployment model.
Include class at cluster.<name>.openstack.compute
- system.nova.compute.nfv.sriov
- sriov_nic01_device_name
- Name of the Physical Function interface (pF)
- sriov_nic01_numvfs
- Number of Virtual Functions (VF), for number of supported VF check documentation for your network interface card.
- sriov_nic01_physical_network
- Default physnet1, label for physical network the interface belongs to.
- sriov_unsafe_interrupts
- Default False, needs to be set True if your hw platform does not support interrupt remapping.
By default, the metadata model contains configuration for 1 NIC dedicated for SR-IOV, so we need to setup network interfaces like in the following example.
...
nova:
compute:
sriov:
sriov_nic01:
devname: eth1
physical_network: physnet3
sriov_nic02:
devname: eth2
physical_network: physnet4
sriov_nic03:
devname: eth3
physical_network: physnet3
sriov_nic04:
devname: eth4
physical_network: physnet6
linux:
system:
kernel:
sriov: True
unsafe_interrupts: False
rc:
local: |
#!/bin/sh -e
# Enabling 7 VFs on eth1 PF
echo 7 > /sys/class/net/eth1/device/sriov_numvfs; sleep 2; ip link set eth1 up
# Enabling 15 VFs on eth2 PF
echo 15 > /sys/class/net/eth2/device/sriov_numvfs; sleep 2; ip link set eth2 up
# Enabling 15 VFs on eth3 PF
echo 15 > /sys/class/net/eth3/device/sriov_numvfs; sleep 2; ip link set eth3 up
# Enabling 7 VFs on eth4 PF
echo 7 > /sys/class/net/eth4/device/sriov_numvfs; sleep 2; ip link set eth4 up
exit 0
The grafana.client talks to Grafana server to create datasource(s) and install Grafana plugin(s).
User models must first include this class and define corresponding parameters:
- grafana.client - grafana_protocol (default: http) - grafana_address - grafana_port (default: 3000) - grafana_user - grafana_password
Then include datasource(s) and define corresponding parameters:
- grafana.client.datasource.influxdb - grafana_influxdb_address - grafana_influxdb_port - grafana_influxdb_user - grafana_influxdb_password - grafana_influxdb_database - grafana_influxdb_is_default (default true)
- grafana.client.datasource.prometheus - grafana_prometheus_address - grafana_prometheus_port - grafana_prometheus_is_default (default true)
The class grafana.client.single configures grafana client and an InfluxDB datasource. This is the legacy of LMA (aka StackLight) integration with Grafana and InfluxDB.
The nagios formula looks up grains.items throught Salt mines to discover hosts. There are two different parameters that tell the nagios formula how to determine the hosts' IP address:
- nagios_monitoring_network: IP subnet(s) in CIDR notation (can be a list)
- nagios_monitoring_interface: interface name(s). Default ['eth0', 'ens3'].
'nagios_monitoring_network' parameter takes precedence over 'nagios_monitoring_interface' list.