Skip to content
Snippets Groups Projects
Commit dfa7633d authored by Erik Reid's avatar Erik Reid
Browse files

import some test data

parent 164776d7
No related branches found
No related tags found
No related merge requests found
......@@ -20,12 +20,12 @@ def _remove_ns(rpc_response):
.remove_namespaces(rpc_response.xml)
def nc_connection(hostname):
def nc_connection(hostname, host_verify=True):
conn = ncclient.manager.connect(
host=hostname,
port=830,
ssh_config='~/.ssh/config.d/routers-jump',
# hostkey_verify=False,
hostkey_verify=host_verify
# device_params={'name': 'junos'}
)
......@@ -46,17 +46,17 @@ def rpc(router, command):
return obj.reply
def netconf_rpc(router_name, command):
with contextlib.closing(nc_connection(hostname=router_name)) as router:
def netconf_rpc(router_name, command, host_verify=True):
with contextlib.closing(nc_connection(hostname=router_name, host_verify=host_verify)) as router:
reply = rpc(router, command)
return _remove_ns(reply)
def get_interface_info_ncrpc(router_name):
def get_interface_info_ncrpc(router_name, host_verify=True):
request = etree.Element('get-interface-information')
request.append(etree.Element('extensive'))
return netconf_rpc(router_name=router_name, command=request)
return netconf_rpc(router_name=router_name, command=request, host_verify=host_verify)
def _elem_int(node, name):
_subelems = node.xpath(f'./{name}/text()')
......@@ -218,12 +218,12 @@ if __name__ == '__main__':
logging.basicConfig(level=logging.INFO)
logging.getLogger('ncclient').setLevel(level=logging.WARNING)
# r = netconf_interface_info('mx1.ams.nl.geant.net')
# r = get_interface_info_ncrpc('mx1.ams.nl.geant.net')
# with open('interface_info.xml', 'wb') as f:
# f.write(etree.tostring(r))
# # print(etree.tostring(r, pretty_print=True).decode('utf-8'))
with open('interface_info.xml') as f:
with open('../interface_info.xml') as f:
doc = etree.parse(f)
# for x in physical_interface_counters(doc):
......
import concurrent.futures
import os
from lxml import etree
from brian_polling_manager.nc_interface_stats import juniper
ROUTERS = [
'mx1.ams.nl.geant.net',
'mx1.ath2.gr.geant.net',
'mx1.buc.ro.geant.net',
'mx1.bud.hu.geant.net',
'mx1.dub.ie.geant.net',
'mx1.gen.ch.geant.net',
'mx1.lon.uk.geant.net',
'mx1.lon2.uk.geant.net',
'mx1.mad.es.geant.net',
'mx1.par.fr.geant.net',
'mx1.poz.pl.geant.net',
'mx1.vie.at.geant.net',
'mx2.ath.gr.geant.net',
'mx2.lis.pt.geant.net',
'mx2.zag.hr.geant.net',
# 'rt1.bil.es.geant.net',
# 'rt1.por.pt.geant.net',
# 'rt2.ams.nl.geant.net',
# 'rt1.kau.lt.geant.net',
# 'rt2.kau.lt.geant.net',
# 'rt1.rig.lv.geant.net',
# 'rt2.rig.lv.geant.net',
# 'rt1.tar.ee.geant.net',
# 'rt2.tar.ee.geant.net',
# 'qfx.fra.de.geant.net',
# 'qfx.par.fr.geant.net',
# 'qfx.lon2.uk.geant.net',
# 'srx1.am.office.geant.net',
# 'srx2.am.office.geant.net',
# 'srx1.ch.office.geant.net',
# 'srx2.ch.office.geant.net',
# 'rt1.kie.ua.geant.net',
# 'rt2.kie.ua.geant.net',
# 'rt1.chi.md.geant.net',
# 'rt2.chi.md.geant.net',
# 'rt1.bra.sk.geant.net',
# 'rt1.mil2.it.geant.net',
# 'rt1.mar.fr.geant.net',
# 'rt1.pra.cz.geant.net',
# 'rt1.fra.de.geant.net',
# 'rt1.bru.be.geant.net',
# 'rt2.bru.be.geant.net',
# 'rt1.ham.de.geant.net',
# 'rt1.sof.bg.geant.net',
# 'rt2.bra.sk.geant.net',
# 'rt1.lju.si.geant.net',
# 'rt1.buc.ro.geant.net',
# 'rt1.cor.ie.geant.net',
# 'rt2.cor.ie.geant.net',
# 'rt1.ams.nl.geant.net',
# 'rt1.the.gr.geant.net',
# 'rt2.the.gr.geant.net',
]
def save_router_info(fqdn):
print(fqdn)
filename = os.path.join(
os.path.dirname(__file__),
f'{fqdn}-interface-info.xml')
doc = juniper.get_interface_info_ncrpc(fqdn, host_verify=False)
with open(filename, 'wb') as f:
f.write(etree.tostring(doc))
def load_estate_interface_info():
with concurrent.futures.ThreadPoolExecutor(max_workers=20) as executor:
for r in ROUTERS:
executor.submit(save_router_info, r)
executor.shutdown(wait=True)
if __name__ == '__main__':
load_estate_interface_info()
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment