* - added protocol & port label to metrics
- removed some redundant code
* added example dashboard
* added dashboard screenshot
* updated dashboard json & screenshot
* ammend bad dashboard export
* first new metric
* .
* more metrics: controller_publish_metrics_time & controller_iptables_sync_time
* namespace redeclared
* fix typo in name
* smal fixes
* new metric controller_bgp_peers & controller_bgp_internal_peers_sync_time
* typo fix
* new metric controller_ipvs_service_sync_time
* fix
* register metric
* fix
* fix
* added more metrics
* service controller log levels
* fix
* fix
* added metrics controller
* fixes
* fix
* fix
* fixed more log levels
* server and graceful shutdown
* fix
* fix
* fix
* code cleanup
* docs
* move metrics exporting to controller
* fix
* fix
* fixes
* fix
* fix missing
* fix
* fix
* test
* test
* fix
* fix
* fix
* updated dashboard
* updates to metric controller
* fixed order in newmetricscontroller
* err declared and not used
* updated dashboard
* updated dashboard screenshot
* removed --metrics & changed --metrics-port to enable / disable metrics
* https://github.com/cloudnativelabs/kube-router/issues/271
* cannot use config.MetricsPort (type uint16) as type int in assignment
* cannot use mc.MetricsPort (type uint16) as type int in argument to strconv.Itoa
* updated docs
* changed default metric port to 0, disabled
* added missing newline to .dockerignore
* add lag parse to pickup on -v directives
* test
* test
* test
* fix regression
* syntax error: non-declaration statement outside function body
* fix
* changed nsc to mc
* updated docs
* markdown fix
* moved metrics registration out to respective controller so only metrics for running parts will be exposed
* removed junk that came from visual studio code
* fixed some typos
* Moved the metrics back into each controller and added expose behaviour so only the running components metrics would be published
* removed to much, added back instanciation of metricscontroller
* fixed some invalid variable names
* fixed last typos on config name
* fixed order in newnetworkservicecontroller
* updated metrics docs & removed the metrics sync period as it will obey the controllers sync period
* forgott to save options.go
* cleanup
* Updated metric name & docs
* updated metrics.md
* fixed a high cpu usage bug in the metrics_controller's wait loop
* added prometheus metrics port option
* fix propper config
* added option to change path
* added path config to prometheus
* updated readme
* fixed string that should be int
During periodic sync of IPVS services there is a check if the required service
already existing in IPVS. For the check the list of currnet IPVS services are
read from IPVS. This is causing performance hit as number of services increases.
With this fix, Kube-router reads once from ipvs and use for further during service sync
- add a route to exteranl ip in custom routing table to prevent martian packets
- switch between Masqurade and Tunnel for forwarding when DSR in disabled and enabled
as you annotate and remove DSR annotation, switch the IPVS server
type to tunneling to masqurade mode
also restrict preparing the pod for DSR only to the local pods