SNFS_METADATA_NETWORK_FILTER.JSON

Section: File Formats (5)
Updated: January 2019


NAME

snfs_metadata_network_filter.json – StorNext Metadata network filter configuration file

SYNOPSIS

/usr/cvfs/config/snfs_metadata_network_filter.json
/usr/cvfs/config/snfs_metadata_network_filter.d/filter_files

DESCRIPTION

The StorNext File System (SNFS) snfs_metadata_network_filter.json file provides a way to limit metadata traffic to a subset of the interfaces or IP addresses configured on the MDC.

SYNTAX

The snfs_metadata_network_filter.json file follows the JSON schema. Each of the attribute-value pairs occupies one line and is terminated by a comma, save for the final attribute-value pair. Currently, there is a single section for filters, which is a json array and is thus enclosed by a pair of square brackets. The filter elements are either an IP address and network mask length or an interface name substring. No comments of any kind are allowed. Refer to this man page’s EXAMPLE section for a visual representation of the described format.

The directory snfs_metadata_network_filter.d can be created and used to add a set of extra configuration files with same syntax, all the files are combined to create a composite filter.

The configuration file will be loaded by the fsmpm(8) process when it receives a SIGHUP signal or when StorNext services are re-started. The result of the parse of snfs_metadata_network_filter.json will be logged to the /usr/cvfs/debug/nssdbg.out log file. This includes the results from a successful parse or syntax or symantic errors.

filter_list
This is the array containing filter elements, that is, addresses or interface names that are not to be used for metadata traffic.
ip_address
This is a string containing the IPv4 of IPv6 address to be filtered.
netmask_length
This is an integer which applies to the corresponding ip_address. All addresses matching the IP address bits up to the network mask length will be filtered. If no netmask_length is specified for a given address, only the exact address will be filtered, essentially a netmask of 32 for IPv4 addresses and 128 for IPv6.
interface_name
This is a string containing the first characters of the interface names that are to be filtered. For example “em1” will match all interfaces starting with that string. The string “eth0:” will match virtual sub-interfaces such as “eth0:0” but will not filter interface “eth0”.

NOTE: This configuration file only needs to exist where the fsm(8) daemon will run, typically the metadata controllers. The snfs_metadata.conf file is only supported on Linux systems.

EXAMPLE

The following is an example of the snfs_metatdata_network_filter.json file.

{
“filter_list”: [
{
“ip_address”: “12::”,
“netmask_length”: 64
},
{
“ip_address”: “192.168.200.0”,
“netmask_length”: 24
},
{
“ip_address”: “192.168.201.1”
},
{
“ip_address”: “192.168.202.0”,
“netmask_length”: 24
},
{
“interface_name”: “em1”
},
{
“interface_name”: “eth0:”
}
]
}

FILES

/usr/cvfs/config/snfs_metadata_network_filter.json

SEE ALSO

fsnameservers(4), fsm(8), fsmpm(8), gethostname(2)