From: stevenvanrossem Date: Thu, 18 Aug 2016 15:32:44 +0000 (+0200) Subject: Merge remote-tracking branch 'upstream/master' X-Git-Tag: v3.1~69^2~1 X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2Fvim-emu.git;a=commitdiff_plain;h=e5ee2b8b5d4267af05191cd7bc8a098b232ef7b4;hp=79570f1a3e27b9d4f66c9a6b04a2af99a2164d52 Merge remote-tracking branch 'upstream/master' --- diff --git a/src/emuvim/api/sonata/dummygatekeeper.py b/src/emuvim/api/sonata/dummygatekeeper.py index 939070c..2aa712e 100755 --- a/src/emuvim/api/sonata/dummygatekeeper.py +++ b/src/emuvim/api/sonata/dummygatekeeper.py @@ -157,7 +157,7 @@ class Service(object): vnfi = self._start_vnfd(vnfd) self.instances[instance_uuid]["vnf_instances"].append(vnfi) - # 3. Configure the chaining of the network functions (currently only E-Line links supported) + # 3. Configure the chaining of the network functions (currently only E-Line and E-LAN links supported) vnf_id2vnf_name = defaultdict(lambda: "NotExistingNode", reduce(lambda x, y: dict(x, **y), map(lambda d: {d["vnf_id"]: d["vnf_name"]}, diff --git a/src/emuvim/dcemulator/monitoring.py b/src/emuvim/dcemulator/monitoring.py index ba04771..2e1e041 100755 --- a/src/emuvim/dcemulator/monitoring.py +++ b/src/emuvim/dcemulator/monitoring.py @@ -44,23 +44,15 @@ logging.basicConfig(level=logging.INFO) class to read openflow stats from the Ryu controller of the DCNetwork """ +PUSHGATEWAY_PORT = 9091 +CADVISOR_PORT = 8080 + class DCNetworkMonitor(): def __init__(self, net): self.net = net - # TODO: these global variables should be part of a config file? - ''' - # prometheus is started outside of son-emu - prometheus_ip = '127.0.0.1' - prometheus_port = '9090' - self.prometheus_REST_api = 'http://{0}:{1}'.format(prometheus_ip, prometheus_port) - ''' - # helper variables to calculate the metrics - # pushgateway is started outside of son-emu and son-emu is started with net=host - # so localhost:9091 works - self.pushgateway = 'localhost:9091' - # when sdk is started with docker-compose, we could use - # self.pushgateway = 'pushgateway:9091' + # pushgateway address + self.pushgateway = 'localhost:{0}'.format(PUSHGATEWAY_PORT) # supported Prometheus metrics self.registry = CollectorRegistry() @@ -103,7 +95,9 @@ class DCNetworkMonitor(): self.monitor_flow_thread.start() # helper tools - # cAdvisor, Prometheus pushgateway and DB are started as external container, outside of son-emu + # cAdvisor, Prometheus pushgateway are started as external container, to gather monitoring metric in son-emu + self.start_PushGateway() + self.start_cAdvisor() # first set some parameters, before measurement can start @@ -473,7 +467,7 @@ class DCNetworkMonitor(): logging.warning("Pushgateway not reachable: {0} {1}".format(Exception, e)) - def start_Prometheus(self, port=9090): + def start_Prometheus(self, port=CADVISOR_PORT): # prometheus.yml configuration file is located in the same directory as this file cmd = ["docker", "run", @@ -487,7 +481,7 @@ class DCNetworkMonitor(): logging.info('Start Prometheus container {0}'.format(cmd)) return Popen(cmd) - def start_PushGateway(self, port=9091): + def start_PushGateway(self, port=PUSHGATEWAY_PORT): cmd = ["docker", "run", "-d", @@ -499,7 +493,7 @@ class DCNetworkMonitor(): logging.info('Start Prometheus Push Gateway container {0}'.format(cmd)) return Popen(cmd) - def start_cadvisor(self, port=8090): + def start_cAdvisor(self, port=8080): cmd = ["docker", "run", "--rm",