def deploy_bgp_vpn_telemetry(kafka_consumer, provider, crud, router, destination, subscription): """Configure and verify BGP VPN telemetry""" # BGP VPN telemetry configuration telemetry_model_driven = xr_telemetry_model_driven_cfg.TelemetryModelDriven( ) configure_bgp_vpn_telemetry(telemetry_model_driven, subscription_id=subscription["id"], ipv4_address=destination["ipv4_address"], destination_port=destination["port"]) # create configuration on NETCONF device crud.create(provider, telemetry_model_driven) return verify_bgp_vpn_telemetry(kafka_consumer, node=router["name"], subscription_id=subscription["id"], timeout=VALIDATION_TIMEOUT)
help="print debugging messages", action="store_true") args = parser.parse_args() # log debug messages if verbose argument specified if args.verbose: logger = logging.getLogger("ydk") logger.setLevel(logging.INFO) handler = logging.StreamHandler() formatter = logging.Formatter(("%(asctime)s - %(name)s - " "%(levelname)s - %(message)s")) handler.setFormatter(formatter) logger.addHandler(handler) # create codec provider provider = CodecServiceProvider(type="xml") # create codec service codec = CodecService() telemetry_model_driven = xr_telemetry_model_driven_cfg.TelemetryModelDriven( ) # create object config_telemetry_model_driven( telemetry_model_driven) # add object configuration # encode and print object print(codec.encode(provider, telemetry_model_driven)) exit() # End of script
# log debug messages if verbose argument specified if args.verbose: logger = logging.getLogger("ydk") logger.setLevel(logging.INFO) handler = logging.StreamHandler() formatter = logging.Formatter(("%(asctime)s - %(name)s - " "%(levelname)s - %(message)s")) handler.setFormatter(formatter) logger.addHandler(handler) # create NETCONF provider provider = NetconfServiceProvider(address=device.hostname, port=device.port, username=device.username, password=device.password, protocol=device.scheme) # create CRUD service crud = CRUDService() # telemetry configuration telemetry_model_driven = xr_telemetry_model_driven_cfg.TelemetryModelDriven( ) configure_bgp_vpn_telemetry(telemetry_model_driven, args.subscription_id, args.ipv4_address, int(args.destination_port)) # create configuration on NETCONF device crud.create(provider, telemetry_model_driven) sys.exit() # End of script
from netconf.models import NetConf from ydk.models.cisco_ios_xr import Cisco_IOS_XR_ifmgr_cfg as ifmgr_cfg from ydk.models.cisco_ios_xr import Cisco_IOS_XR_telemetry_model_driven_cfg as mdt_cfg from ydk.services import CodecService from ydk.providers import CodecServiceProvider json_provider = CodecServiceProvider(type='json') xml_provider = CodecServiceProvider(type='xml') codec = CodecService() if_cfgs = ifmgr_cfg.InterfaceConfigurations() mdt = mdt_cfg.TelemetryModelDriven() xrv = NetConf(address='167.205.3.51', port=22, username='******', password='******') if xrv.session is not None: result = xrv.get(read_filter=mdt) else: result = None if result is not None: print(result) print(type(result)) else: print('Can\'t get any result, maybe its client error.') # sleep(4)