Comments (7)
I think we should:
- differentiate the hostnames by zone. A zone being a location or some other management domain. We should not have subzones for simplicity
- allow for hosts to have a descriptive alias as in #120
I'm working on switchmap-ng v2. I have a tracking issue here: #129. This is where I'm putting my focus.
from switchmap-ng.
OK re: no "subzones"
An idea (brainstorming) for a new "sites.yaml" file:
sitelist:
- site: SITE-NAME-A
hosts:
- hostname1
- hostname2
- hostname3
- site: SITE-B
hosts:
- hostnameA
- hostnameB
- hostnameC
Q's:
- Should it be an error if a "host" exists in more than one site? I'd say "yes. It would definitely be an error if a "site" exists more than 1x
- Should we allow for the idea of "includes" -- perhaps allow the current config.yaml to have a list of site-files which supplements the current
main.hostnames.[]
array? (see below)
main:
hostnames:
- hostX
- hostY
sitefiles:
- sites.yaml
- sites-2.yaml
from switchmap-ng.
For aliases... would we put that in the same sitelist array, or a separate file which host/alias pairs?
from switchmap-ng.
The current code ingests all .yaml
files in the configuration directory and combines them into a single configuration dict
.
- It works correctly assuming the files have the correct YAML fields.
- So the use of includes is already built in.
I think zone
is a better representative name, as there may be a logical distinction to consider (eg. multiple VLAN zones at a site with overlapping VLAN numbers)
I'm working on v2 of switchmap with a database backend. It will have three daemons, a poller, a database server running an API, and a web server. This could be the way we setup the configuration.
main:
agent_subprocesses: 20
system_directory: directory
log_level: debug
username: peter
poller:
polling_interval: 21600
zones:
- zone: SITE-NAME-A
hostnames:
- hostname1
- hostname2
- hostname3
- zone: SITE-B
hostnames:
- hostnameA
- hostnameB
- hostnameC
snmp_groups:
- group_name: CISCO
snmp_authpassword: password
snmp_authprotocol: sha
snmp_community: null
snmp_port: 161
snmp_privpassword: password
snmp_privprotocol: aes
snmp_secname: name
snmp_version: 3
server:
bind_port: 7000
listen_address: localhost
db_host: localhost
db_name: switchmap
db_user: switchmap
db_pass: password
dashboard:
bind_port: 7001
listen_address: localhost
from switchmap-ng.
pulling in all files from the /etc folder ---> Awesome!
Zones instead of Sites --> Yup, totally makes sense.
I like your alternative yaml, especially the idea of having separate sections for main/poller/server/dashboard. Suggest "server" be renamed something like "dbserver" for clarity.
from switchmap-ng.
Q about agent_subprocesses
- shouldn't that be moved to the appropriate section (main/poller/server/dashboard) ?
from switchmap-ng.
In the new design all the daemons will use multiprocessing to increase performance. It needs to be in the core section for now.
For ease of configuration a single location is better than three.
I'm also thinking that we may need to give zones numbers so that we can configure a poller to only poll from specified zones. What do you think, too complex?
from switchmap-ng.
Related Issues (20)
- Add idle time of a port to the device report
- Show VIPs assigned to interfaces
- API - Show the VLAN numbers on each Trunk port
- Only poll the required Cisco contexts for VLAN MAC table data in the Bridge MIB
- Speed up polling by using snmp bulkwalk versus snmp getnext walks
- Daemons must verify their filenames before running
- PID file check should be overridden if the daemons are dead HOT 1
- Can't get program to run HOT 3
- Dashboard customization / display HOT 3
- New Devices are not show at Dashboard HOT 1
- MAC addresses not populating HOT 10
- Not seeing devices in dashboard HOT 6
- device.py crashes for some NX-OS gear
- Switchmap-NG new features - Input welcome HOT 4
- ImportError: cannot import name Markup from flask HOT 2
- New Unittests for the general.py module
- New Unittests for the general.py module
- Logfiles need to be created with 644 permissions. Currently set to 666 by default. HOT 1
- Need to check for systemd presence in precheck when running as root
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from switchmap-ng.