12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697 |
- {%- set node_config = salt['pillar.get'] ('nodes:' ~ grains['id']) %}
- {%- set ro_community = salt['pillar.get'] ('globals:snmp:ro_community', "Configure globals:snmp:ro_community in pillar...") %}
- {%- set sys_contact = salt['pillar.get'] ('globals:ops_mail', "Configure globals:ops_mail in pillar...") %}
- {%- set sys_location = node_config.get ('sysLocation', "Please fix sysLocation...") %}
- {%- set nms_list = salt['pillar.get'] ('globals:snmp:nms_list', []) %}
- #
- # /etc/snmp/snmpd.conf (Salt managed)
- #
- sysLocation {{ sys_location }}
- sysContact {{ sys_contact }}
- sysServices 72
- # Listen for connections from the local system
- agentAddress udp:127.0.0.1:161
- agentAddress udp6:[::1]:161
- # Listen for connections on Loopback-IPs
- agentAddress udp:{{ salt['ffho_net.get_loopback_ip'] (node_config, grains['id'], 'v4') }}:161
- agentAddress udp6:[{{ salt['ffho_net.get_loopback_ip'] (node_config, grains['id'], 'v6') }}]:161
- # We accept requests from those fine boxes
- rocommunity {{ ro_community }} 127.0.0.1
- rocommunity6 {{ ro_community }} ::1
- {%- for entry in nms_list %}
- {%- if ':' in entry %}
- rocommunity6 {{ ro_community }} {{ entry }}
- {%- else %}
- rocommunity {{ ro_community }} {{ entry }}
- {%- endif %}
- {%- endfor %}
- #
- # Network interfaces
- #
- {%- if 'gateway' in node_config.get ('roles', []) %}
- # Set B.A.T.M.A.N. related devices to 100 MBit/s
- # FIXME: For all sites 'n stuff
- interface bat0 6 100000000
- interface inter-gw-vpn 6 100000000
- interface mesh-vpn-v4 6 100000000
- interface mesh-vpn-v6 6 100000000
- {%- endif %}
- {%- set ovpn_networks = [] %}
- {%- for netname, network in salt['pillar.get']('ovpn', {}).items () if grains['id'] in network %}
- {%- do ovpn_networks.append (netname) %}
- {%- endfor %}
- {%- for netname in ovpn_networks|sort %}
- {%- set network = salt['pillar.get']('ovpn:' ~ netname) %}
- {%- set network_config = network.get ('config') %}
- {%- set host_stanza = network.get (grains['id']) %}
- {%- set host_config = host_stanza.get ('config', {}) %}
- {%- set interface = host_config.get ('interface', network_config.get ('interface')) %}
- {%- if loop.first %}
- # OpenVPN interfaces
- {%- endif %}
- interface {{ interface }} 6 100000000
- {%- endfor %}
- #
- # Disk Monitoring
- #
- # 10MBs required on root disk, 5% free on /var, 10% free on all other disks
- disk / 10000
- disk /var 5%
- includeAllDisks 10%
- # Walk the UCD-SNMP-MIB::dskTable to see the resulting output
- # Note that this table will be empty if there are no "disk" entries in the snmpd.conf file
- #
- # System Load
- #
- # Unacceptable 1-, 5-, and 15-minute load averages
- load 12 10 5
- # Walk the UCD-SNMP-MIB::laTable to see the resulting output
- # Note that this table *will* be populated, even without a "load" entry in the snmpd.conf file
- #
- # Event MIB - automatically generate alerts
- #
- # Remember to activate the 'createUser' lines above
- iquerySecName internalUser
- rouser internalUser
- # generate traps on UCD error conditions
- defaultMonitors no
- # generate traps on linkUp/Down
- linkUpDownNotifications no
- master agentx
|