Exemplo n.º 1
0
def do_vr_cfg_1(vr_cfg_params):
    logging.info("in do_vr_cfg_1 for %s", vr_cfg_params['nodeName_1'])

    ctrl = Controller(vr_cfg_params['ctrlIpAddr'], vr_cfg_params['ctrlPortNum'],
                      vr_cfg_params['ctrlUname'], vr_cfg_params['ctrlPswd'])

    vrouter = VRouter5600(ctrl, vr_cfg_params['nodeName_1'], vr_cfg_params['nodeIpAddr_1'],
                          vr_cfg_params['nodePortNum_1'], vr_cfg_params['nodeUname_1'], vr_cfg_params['nodePswd_1'])

    node_configured = False
    result = ctrl.check_node_config_status(vr_cfg_params['nodeName_1'])
    status = result.get_status()
    if status.eq(STATUS.NODE_CONFIGURED):
        node_configured = True
        print ("<<< '%s' is configured on the Controller" % vr_cfg_params['nodeName_1'])
    elif status.eq(STATUS.DATA_NOT_FOUND):
        node_configured = False
    else:
        logging.info ("\n")
        logging.info ("Failed to get configuration status for the '%s'" % vr_cfg_params['nodeName_1'])
        logging.info ("!!!Demo terminated, reason: %s" % status.detailed())
        exit(0)

    if node_configured is False:
        result = ctrl.add_netconf_node(vrouter)
        status = result.get_status()
        if status.eq(STATUS.OK):
            logging.info ("<<< '%s' added to the Controller" % vr_cfg_params['nodeName_1'])
        else:
            logging.info ("\n")
            logging.info ("!!!Demo terminated, reason: %s" % status.detailed())
            exit(0)

    result = ctrl.check_node_conn_status(vr_cfg_params['nodeName_1'])
    status = result.get_status()
    if status.eq(STATUS.NODE_CONNECTED):
        logging.info ("<<< '%s' is connected to the Controller" % vr_cfg_params['nodeName_1'])
    else:
        logging.info ("\n")
        logging.info ("!!!Demo terminated, reason: %s" % status.brief().lower())
        exit(0)

    set_loopback_interface_1(ctrl, vr_cfg_params)

    dp1_1 = DataPlaneInterface(vr_cfg_params['dp1Name_1'])
    dp1_1.set_address(vr_cfg_params['dp1Addr_1'])
    vrouter.set_dataplane_interface_cfg(dp1_1)

    dp2_1 = DataPlaneInterface(vr_cfg_params['dp1Name_2'])
    dp2_1.set_address(vr_cfg_params['dp1Addr_2'])
    vrouter.set_dataplane_interface_cfg(dp2_1)

    dp3_1 = DataPlaneInterface(vr_cfg_params['dp1Name_3'])
    dp3_1.set_address(vr_cfg_params['dp1Addr_3'])
    vrouter.set_dataplane_interface_cfg(dp3_1)

    set_ospf_cfg_1(ctrl, vr_cfg_params)
    set_bgp_cfg_1(ctrl, vr_cfg_params)

    sys.exit(0)
Exemplo n.º 2
0
def do_vr_cfg_3(vr_cfg_params):
    logging.info("in do_vr_cfg_3 for %s", vr_cfg_params['nodeName_3'])

    ctrl = Controller(vr_cfg_params['ctrlIpAddr'], vr_cfg_params['ctrlPortNum'],
                      vr_cfg_params['ctrlUname'], vr_cfg_params['ctrlPswd'])
    vrouter = VRouter5600(ctrl, vr_cfg_params['nodeName_3'], vr_cfg_params['nodeIpAddr_3'],
                          vr_cfg_params['nodePortNum_3'], vr_cfg_params['nodeUname_3'], vr_cfg_params['nodePswd_3'])

    logging.info ("<<< 'Controller': %s, '%s': %s"
           % (vr_cfg_params['ctrlIpAddr'], vr_cfg_params['nodeName_3'], vr_cfg_params['nodeIpAddr_3']))

    #  set interfaces loopback lo address 10.0.0.22/32
    #  set interfaces dataplane dp0s3 address 192.168.21.2/24
    #  set interfaces dataplane dp0s6 address 10.252.30.206/30

    set_loopback_interface_3(ctrl, vr_cfg_params)

    dp1_3 = DataPlaneInterface(vr_cfg_params['dp1Name_3'])
    dp1_3.set_address(vr_cfg_params['dp1Addr_3'])
    vrouter.set_dataplane_interface_cfg(dp1_3)

    dp2_3 = DataPlaneInterface(vr_cfg_params['dp2Name_3'])
    dp2_3.set_address(vr_cfg_params['dp2Addr_3'])
    vrouter.set_dataplane_interface_cfg(dp2_3)

    set_ospf_cfg_3(ctrl, vr_cfg_params)

    sys.exit(0)
Exemplo n.º 3
0
    status = result.get_status()
    if(status.eq(STATUS.NODE_CONNECTED)):
        print ("<<< '%s' is connected to the Controller" % nodeName)
    else:
        print ("\n")
        print ("!!!Script terminated, reason: %s" % status.brief().lower())
        exit(0)

    # wait on input
    print "\n"
    user_input = raw_input("Press any key to add the vif to the '%s': " % nodeName)

#    virtualInterface = VirtualInterface(vifId)
#    vrouter.add_modify_vif_instance(virtualInterface, interfaceName)

    virtualInterface = DataPlaneInterface(interfaceName)
    virtualInterface.vif = vifId
    vrouter.set_dataplane_interface_vif_cfg(virtualInterface)

    # wait on input
    print "\n"
    user_input = raw_input("Press any key to delete the vr5600: ")

    print (">>> Remove '%s' NETCONF node from the Controller" % nodeName)
    result = ctrl.delete_netconf_node(vrouter)
    status = result.get_status()
    if(status.eq(STATUS.OK)):
        print ("'%s' NETCONF node was successfully removed "
               "from the Controller" % nodeName)
    else:
        print ("\n")