diff --git a/vns3/CHANGELOG.md b/vns3/CHANGELOG.md index 3f06b5e60..1d4b14585 100644 --- a/vns3/CHANGELOG.md +++ b/vns3/CHANGELOG.md @@ -1,4 +1,10 @@ -# CHANGELOG - Nomad +# CHANGELOG - VNS3 + +## 1.0.2 + +***Added***: + +* Example dashboard .json, description of metrics for links, remote support status, interfaces. ## 1.0.1 diff --git a/vns3/README.md b/vns3/README.md index b81b872e2..ea1a13aff 100644 --- a/vns3/README.md +++ b/vns3/README.md @@ -2,7 +2,7 @@ ## Overview -Get state information regarding your VNS3 topology's IPSec endpoints/tunnels, VNS3 Peers, and overlay clients. +Get system and network state information from your Cohesive Networks VNS3 controller. - Peering links Status Check: @@ -16,34 +16,51 @@ Get state information regarding your VNS3 topology's IPSec endpoints/tunnels, VN ![ipsec][3] +- Overlay Link Status Check: + + ![links][4] + +- Remote Support Status Check: + + ![remote_support][5] + +- Interface Status Check: + + ![interface_status][6] + ## Setup ### Configuration -To capture metrics, deploy Cohesive Networks' Datadog container, set up the VNS3 firewall, and configure the container. For more details, see the [Cohesive Networks guide][4] or watch the [video][5]. +Deploy and configure the Cohesive Networks Datadog plugin according to the [Datadog Agent Plugin Details][7] documentation. ## Data Collected ### Metrics -See [metadata.csv][6] for a list of metrics provided by this integration. +Listed above; see [metadata.csv][8] for a detailed list of metrics provided by this integration. + +Netflow, log reporting, and SNMP polling are also supported. ### Events -The VNS3 check does not include any events. +The VNS3 integration does not include any events. ### Service Checks -The VNS3 check does not include any service checks. +The VNS3 integration does not include any service checks. ## Troubleshooting -Need help? Contact [Datadog support][7]. +Need help? Contact [Datadog support][9] or [Cohesive Networks support][10]. [1]: https://raw.githubusercontent.com/DataDog/integrations-extras/master/vns3/images/peering.png [2]: https://raw.githubusercontent.com/DataDog/integrations-extras/master/vns3/images/clients.png [3]: https://raw.githubusercontent.com/DataDog/integrations-extras/master/vns3/images/ipsec.png -[4]: https://docs.cohesive.net/docs/network-edge-plugins/datadog/ -[5]: https://youtu.be/sTCgCG3m4vk -[6]: https://github.com/DataDog/integrations-extras/blob/master/vns3/metadata.csv -[7]: https://docs.datadoghq.com/help/ +[4]: https://raw.githubusercontent.com/DataDog/integrations-extras/master/vns3/images/links.png +[5]: https://raw.githubusercontent.com/DataDog/integrations-extras/master/vns3/images/remotesupport.png +[6]: https://raw.githubusercontent.com/DataDog/integrations-extras/master/vns3/images/interfaces.png +[7]: https://docs.cohesive.net/docs/network-edge-plugins/datadog/ +[8]: https://github.com/DataDog/integrations-extras/blob/master/vns3/metadata.csv +[9]: https://docs.datadoghq.com/help/ +[10]: https://support.cohesive.net/ diff --git a/vns3/assets/dashboards/VNS3ExampleDashboard-20240923.json b/vns3/assets/dashboards/VNS3ExampleDashboard-20240923.json new file mode 100644 index 000000000..1c7fb3e72 --- /dev/null +++ b/vns3/assets/dashboards/VNS3ExampleDashboard-20240923.json @@ -0,0 +1 @@ +{"title":"Cohesive Networks Test Dashboard","description":"","widgets":[{"id":5660066195964810,"layout":{"x":43,"y":31,"width":70,"height":18},"definition":{"title":"Memory Usage","title_size":"16","title_align":"left","show_legend":false,"legend_layout":"auto","legend_columns":["avg","min","max","value","sum"],"time":{"hide_incomplete_cost_data":true},"type":"timeseries","requests":[{"formulas":[{"formula":"query2"},{"formula":"query2 - query3"}],"queries":[{"query":"avg:system.mem.total{host:DataDog-Demo-Video}","data_source":"metrics","name":"query2"},{"query":"avg:system.mem.free{host:DataDog-Demo-Video}","data_source":"metrics","name":"query3"}],"response_format":"timeseries","style":{"palette":"purple","line_type":"solid","line_width":"normal"},"display_type":"line"}]}},{"id":6574247974284404,"layout":{"x":43,"y":51,"width":70,"height":18},"definition":{"title":"Disk Usage","title_size":"16","title_align":"left","show_legend":false,"legend_layout":"auto","legend_columns":["avg","min","max","value","sum"],"time":{"hide_incomplete_cost_data":true},"type":"timeseries","requests":[{"formulas":[{"formula":"query1"},{"formula":"query3"},{"formula":"query1 - query2"}],"queries":[{"query":"avg:system.disk.total{device:/dev/nvme0n1p1 ,host:DataDog-Demo-Video}","data_source":"metrics","name":"query1"},{"query":"avg:system.disk.used{device:/dev/nvme0n1p1 ,host:DataDog-Demo-Video}","data_source":"metrics","name":"query3"},{"query":"avg:system.disk.free{device:/dev/nvme0n1p1 ,host:DataDog-Demo-Video}","data_source":"metrics","name":"query2"}],"response_format":"timeseries","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"},"display_type":"line"}]}},{"id":3267642329856738,"layout":{"x":5,"y":22,"width":17,"height":9},"definition":{"title":"Overlay clients","title_size":"13","title_align":"left","time":{"live_span":"10m"},"type":"check_status","check":"vns3.overlay.clients","grouping":"cluster","group_by":["name","overlay_ipaddress"],"tags":["host:DataDog-Demo-Video"]}},{"id":1889480031441948,"layout":{"x":11,"y":1,"width":96,"height":8},"definition":{"type":"image","url":"https://s3.amazonaws.com/awsmp-logos/1-16-2015-Cohesive-Networks-Logo.png","sizing":"fit"}},{"id":3934506226829594,"layout":{"x":43,"y":11,"width":70,"height":18},"definition":{"title":"CPU usage","title_size":"16","title_align":"left","show_legend":false,"legend_layout":"auto","legend_columns":["avg","min","max","value","sum"],"time":{"hide_incomplete_cost_data":true},"type":"timeseries","requests":[{"formulas":[{"formula":"query2"},{"formula":"query3"},{"formula":"query4"},{"formula":"query5"},{"formula":"query6"},{"formula":"query2 + query3 + query4 + query5 + query6"},{"formula":"100 - query1"}],"queries":[{"query":"avg:system.cpu.system{host:DataDog-Demo-Video}","data_source":"metrics","name":"query2"},{"query":"avg:system.cpu.user{host:DataDog-Demo-Video}","data_source":"metrics","name":"query3"},{"query":"avg:system.cpu.stolen{host:DataDog-Demo-Video}","data_source":"metrics","name":"query4"},{"query":"avg:system.cpu.guest{host:DataDog-Demo-Video}","data_source":"metrics","name":"query5"},{"query":"avg:system.cpu.iowait{host:DataDog-Demo-Video}","data_source":"metrics","name":"query6"},{"query":"avg:system.cpu.idle{host:DataDog-Demo-Video}","data_source":"metrics","name":"query1"}],"response_format":"timeseries","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"},"display_type":"line"},{"formulas":[{"formula":"query1 + query2 + query3 + query4 + query5"}],"queries":[{"query":"avg:system.cpu.system{host:DataDog-Demo-Video}","data_source":"metrics","name":"query1"},{"query":"avg:system.cpu.user{host:DataDog-Demo-Video}","data_source":"metrics","name":"query2"},{"query":"avg:system.cpu.stolen{host:DataDog-Demo-Video}","data_source":"metrics","name":"query3"},{"query":"avg:system.cpu.guest{host:DataDog-Demo-Video}","data_source":"metrics","name":"query4"},{"query":"avg:system.cpu.iowait{host:DataDog-Demo-Video}","data_source":"metrics","name":"query5"}],"response_format":"timeseries","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"},"display_type":"line"}]}},{"id":8328464693092320,"layout":{"x":24,"y":22,"width":17,"height":9},"definition":{"title":"Links","title_size":"13","title_align":"left","time":{"hide_incomplete_cost_data":true},"type":"check_status","check":"vns3.overlay.links","grouping":"cluster","group_by":["name"],"tags":["host:DataDog-Demo-Video"]}},{"id":1694020372125512,"layout":{"x":5,"y":44,"width":36,"height":25},"definition":{"title":"Top Talkers","title_size":"16","title_align":"left","type":"toplist","requests":[{"queries":[{"data_source":"network_device_flows","name":"query1","search":{"query":""},"indexes":["*"],"compute":{"aggregation":"avg","metric":"@bytes"},"group_by":[{"facet":"@source.ip","limit":10,"sort":{"aggregation":"avg","order":"desc","metric":"@bytes"}},{"facet":"@destination.ip","limit":10,"sort":{"aggregation":"avg","order":"desc","metric":"@bytes"}}],"storage":"hot"}],"response_format":"scalar","formulas":[{"formula":"query1"}],"sort":{"count":100,"order_by":[{"type":"formula","index":0,"order":"desc"}]}}],"style":{"display":{"type":"flat"}}}},{"id":7910356269592758,"layout":{"x":5,"y":11,"width":17,"height":9},"definition":{"title":"VNS3 peering","title_size":"13","title_align":"left","time":{"hide_incomplete_cost_data":true},"type":"check_status","check":"vns3.peering","grouping":"cluster","group_by":["peerid"],"tags":["*"]}},{"id":4902072122271777,"layout":{"x":5,"y":33,"width":17,"height":9},"definition":{"title":"Interfaces","title_size":"13","title_align":"left","time":{"hide_incomplete_cost_data":true},"type":"check_status","check":"vns3.interfaces","grouping":"cluster","group_by":["name"],"tags":["host:DataDog-Demo-Video"]}},{"id":4467436763003358,"layout":{"x":5,"y":71,"width":108,"height":24},"definition":{"title":"All eth0 traffic","title_size":"16","title_align":"left","show_legend":true,"legend_layout":"auto","legend_columns":["avg","min","max","value","sum"],"time":{"hide_incomplete_cost_data":true},"type":"timeseries","requests":[{"formulas":[{"formula":"query1"}],"queries":[{"data_source":"network_device_flows","name":"query1","search":{"query":""},"indexes":["*"],"compute":{"aggregation":"avg","interval":30000,"metric":"@bytes"},"group_by":[{"facet":"@source.ip","limit":10,"sort":{"aggregation":"avg","order":"desc","metric":"@bytes"}},{"facet":"@destination.ip","limit":10,"sort":{"aggregation":"avg","order":"desc","metric":"@bytes"}}]}],"response_format":"timeseries","style":{"palette":"dog_classic","line_type":"solid","line_width":"normal"},"display_type":"line"}]}},{"id":8957089453488030,"layout":{"x":24,"y":11,"width":17,"height":9},"definition":{"title":"IPsec tunnels","title_size":"13","title_align":"left","time":{"hide_incomplete_cost_data":true},"type":"check_status","check":"vns3.ipsec.tunnels","grouping":"cluster","group_by":["tunnel_id"],"tags":["host:DataDog-Demo-Video"]}},{"id":6719486025543775,"layout":{"x":24,"y":33,"width":17,"height":9},"definition":{"title":"Remote Support","title_size":"13","title_align":"left","time":{"hide_incomplete_cost_data":true},"type":"check_status","check":"vns3.sys_admin.remote_support","grouping":"cluster","group_by":["host"],"tags":["host:DataDog-Demo-Video"]}}],"template_variables":[],"layout_type":"free","notify_list":[],"tags":[]} \ No newline at end of file diff --git a/vns3/images/interfaces.png b/vns3/images/interfaces.png new file mode 100644 index 000000000..2f0021580 Binary files /dev/null and b/vns3/images/interfaces.png differ diff --git a/vns3/images/links.png b/vns3/images/links.png new file mode 100644 index 000000000..38d2fb26a Binary files /dev/null and b/vns3/images/links.png differ diff --git a/vns3/images/remotesupport.png b/vns3/images/remotesupport.png new file mode 100644 index 000000000..d2cae6f02 Binary files /dev/null and b/vns3/images/remotesupport.png differ diff --git a/vns3/manifest.json b/vns3/manifest.json index 0fffbdb9a..b088d5169 100644 --- a/vns3/manifest.json +++ b/vns3/manifest.json @@ -22,9 +22,9 @@ ] }, "author": { - "support_email": "help@datadoghq.com", - "homepage": "https://github.com/DataDog/integrations-extras", - "sales_email": "help@datadoghq.com", + "support_email": "support@cohesive.net", + "homepage": "https://cohesive.net/", + "sales_email": "sales@cohesive.net", "name": "Cohesive Networks" }, "assets": { @@ -36,7 +36,7 @@ }, "metrics": { "prefix": "vns3.", - "check": "vns3.peering", + "check": ["vns3.peering", "vns3.overlay.clients", "vns3.overlay.links", "vns3.ipsec", "vns3.interfaces", "vns3.sys_admin.remote_support"], "metadata_path": "metadata.csv" }, "service_checks": { @@ -44,6 +44,9 @@ }, "source_type_id": 10005, "auto_install": true + }, + "dashboards": { + "Cohesive": "assets/dashboards/VNS3ExampleDashboard-20240923.json" } } -} \ No newline at end of file +} diff --git a/vns3/metadata.csv b/vns3/metadata.csv index 6d34c7649..a7f5ee55c 100644 --- a/vns3/metadata.csv +++ b/vns3/metadata.csv @@ -1,4 +1,7 @@ metric_name,metric_type,interval,unit_name,per_unit_name,description,orientation,integration,short_name,curated_metric -vns3.ipsec,gauge,,,,IPSec tunnel connection state,0,vns3,vns3 ipsec, -vns3.overlay.clients,gauge,,,,Overlay client connection state,0,vns3,vns3 clients, -vns3.peering,gauge,,,,VNS3 peer link state,0,vns3,vns3 peers, +vns3.ipsec,gauge,,,,IPSec tunnel connection state,0,vns3,ipsec tunnels, +vns3.overlay.clients,gauge,,,,Overlay client connection state,0,vns3,overlay clients, +vns3.peering,gauge,,,,VNS3 peer reachability state,0,vns3,controller peers, +vns3.interfaces,gauge,,,,Interface up/down state,0,vns3,system interfaces, +vns3.overlay.links,gauge,,,,LNK connection state,0,vns3,link connections, +vns3.sys_admin.remote_support,gauge,,,,Remote Support enabled state,0,vns3,remote support, \ No newline at end of file