コード例 #1
0
ファイル: mech_driver.py プロジェクト: ryanpetrello/dhc-nsx
    def initialize(self):
        self.vif_type = portbindings.VIF_TYPE_OVS
        self.vif_details = {portbindings.CAP_PORT_FILTER: True}

        config.validate_config_options()

        # need sec group handler?

        # start sync thread here
        self.nsx_opts = cfg.CONF.NSX
        self.nsx_sync_opts = cfg.CONF.NSX_SYNC
        self.cluster = nsx_utils.create_nsx_cluster(
            cfg.CONF,
            self.nsx_opts.concurrent_connections,
            self.nsx_opts.nsx_gen_timeout
        )

        self._synchronize = AkandaNsxSynchronizer(
            DeferredPluginRef(),
            self.cluster,
            self.nsx_sync_opts.state_sync_interval+1000,
            self.nsx_sync_opts.min_sync_req_delay,
            self.nsx_sync_opts.min_chunk_size,
            self.nsx_sync_opts.max_random_sync_delay
        )
コード例 #2
0
ファイル: check_nsx_config.py プロジェクト: cernops/neutron
def main():
    if len(sys.argv) != 2:
        help(sys.argv[0])
    args = ['--config-file']
    args.append(sys.argv[1])
    config.init(args)
    print("----------------------- Database Options -----------------------")
    print("\tconnection: %s" % cfg.CONF.database.connection)
    print("\tretry_interval: %d" % cfg.CONF.database.retry_interval)
    print("\tmax_retries: %d" % cfg.CONF.database.max_retries)
    print("-----------------------    NSX Options   -----------------------")
    print("\tNSX Generation Timeout %d" % cfg.CONF.NSX.nsx_gen_timeout)
    print("\tNumber of concurrent connections to each controller %d" %
          cfg.CONF.NSX.concurrent_connections)
    print("\tmax_lp_per_bridged_ls: %s" % cfg.CONF.NSX.max_lp_per_bridged_ls)
    print("\tmax_lp_per_overlay_ls: %s" % cfg.CONF.NSX.max_lp_per_overlay_ls)
    print("-----------------------  Cluster Options -----------------------")
    print("\tretries: %s" % cfg.CONF.retries)
    print("\tredirects: %s" % cfg.CONF.redirects)
    print("\thttp_timeout: %s" % cfg.CONF.http_timeout)
    cluster = nsx_utils.create_nsx_cluster(cfg.CONF,
                                           cfg.CONF.NSX.concurrent_connections,
                                           cfg.CONF.NSX.nsx_gen_timeout)
    nsx_controllers = get_nsx_controllers(cluster)
    num_controllers = len(nsx_controllers)
    print("Number of controllers found: %s" % num_controllers)
    if num_controllers == 0:
        print("You must specify at least one controller!")
        sys.exit(1)

    get_control_cluster_nodes(cluster)
    for controller in nsx_controllers:
        print("\tController endpoint: %s" % controller)
        gateway_services = get_gateway_services(cluster)
        default_gateways = {
            "L2GatewayServiceConfig": cfg.CONF.default_l2_gw_service_uuid,
            "L3GatewayServiceConfig": cfg.CONF.default_l3_gw_service_uuid
        }
        errors = 0
        for svc_type in default_gateways.keys():
            for uuid in gateway_services[svc_type]:
                print("\t\tGateway(%s) uuid: %s" % (svc_type, uuid))
            if (default_gateways[svc_type] and default_gateways[svc_type]
                    not in gateway_services[svc_type]):
                print("\t\t\tError: specified default %s gateway (%s) is "
                      "missing from NSX Gateway Services!" %
                      (svc_type, default_gateways[svc_type]))
                errors += 1
        transport_zones = get_transport_zones(cluster)
        print("\tTransport zones: %s" % transport_zones)
        if cfg.CONF.default_tz_uuid not in transport_zones:
            print("\t\tError: specified default transport zone "
                  "(%s) is missing from NSX transport zones!" %
                  cfg.CONF.default_tz_uuid)
            errors += 1
        transport_nodes = get_transport_nodes(cluster)
        print("\tTransport nodes: %s" % transport_nodes)
        node_errors = []
        for node in transport_nodes:
            if not is_transport_node_connected(cluster, node):
                node_errors.append(node)

    # Use different exit codes, so that we can distinguish
    # between config and runtime errors
    if len(node_errors):
        print("\nThere are one or mode transport nodes that are "
              "not connected: %s. Please, revise!" % node_errors)
        sys.exit(10)
    elif errors:
        print("\nThere are %d errors with your configuration. "
              "Please, revise!" % errors)
        sys.exit(12)
    else:
        print("Done.")
コード例 #3
0
ファイル: check_nsx_config.py プロジェクト: brucezy/neutron
def main():
    if len(sys.argv) != 2:
        help(sys.argv[0])
    args = ['--config-file']
    args.append(sys.argv[1])
    config.init(args)
    print("----------------------- Database Options -----------------------")
    print("\tconnection: %s" % cfg.CONF.database.connection)
    print("\tretry_interval: %d" % cfg.CONF.database.retry_interval)
    print("\tmax_retries: %d" % cfg.CONF.database.max_retries)
    print("-----------------------    NSX Options   -----------------------")
    print("\tNSX Generation Timeout %d" % cfg.CONF.NSX.nsx_gen_timeout)
    print("\tNumber of concurrent connections to each controller %d" %
          cfg.CONF.NSX.concurrent_connections)
    print("\tmax_lp_per_bridged_ls: %s" % cfg.CONF.NSX.max_lp_per_bridged_ls)
    print("\tmax_lp_per_overlay_ls: %s" % cfg.CONF.NSX.max_lp_per_overlay_ls)
    print("-----------------------  Cluster Options -----------------------")
    print("\trequested_timeout: %s" % cfg.CONF.req_timeout)
    print("\tretries: %s" % cfg.CONF.retries)
    print("\tredirects: %s" % cfg.CONF.redirects)
    print("\thttp_timeout: %s" % cfg.CONF.http_timeout)
    cluster = nsx_utils.create_nsx_cluster(
        cfg.CONF,
        cfg.CONF.NSX.concurrent_connections,
        cfg.CONF.NSX.nsx_gen_timeout)
    nsx_controllers = get_nsx_controllers(cluster)
    num_controllers = len(nsx_controllers)
    print("Number of controllers found: %s" % num_controllers)
    if num_controllers == 0:
        print("You must specify at least one controller!")
        sys.exit(1)

    get_control_cluster_nodes(cluster)
    for controller in nsx_controllers:
        print("\tController endpoint: %s" % controller)
        gateway_services = get_gateway_services(cluster)
        default_gateways = {
            "L2GatewayServiceConfig": cfg.CONF.default_l2_gw_service_uuid,
            "L3GatewayServiceConfig": cfg.CONF.default_l3_gw_service_uuid}
        errors = 0
        for svc_type in default_gateways.keys():
            for uuid in gateway_services[svc_type]:
                print("\t\tGateway(%s) uuid: %s" % (svc_type, uuid))
            if (default_gateways[svc_type] and
                default_gateways[svc_type] not in gateway_services[svc_type]):
                print("\t\t\tError: specified default %s gateway (%s) is "
                      "missing from NSX Gateway Services!" % (
                          svc_type,
                          default_gateways[svc_type]))
                errors += 1
        transport_zones = get_transport_zones(cluster)
        print("\tTransport zones: %s" % transport_zones)
        if cfg.CONF.default_tz_uuid not in transport_zones:
            print("\t\tError: specified default transport zone "
                  "(%s) is missing from NSX transport zones!"
                  % cfg.CONF.default_tz_uuid)
            errors += 1
        transport_nodes = get_transport_nodes(cluster)
        print("\tTransport nodes: %s" % transport_nodes)
        node_errors = []
        for node in transport_nodes:
            if not is_transport_node_connected(cluster, node):
                node_errors.append(node)

    # Use different exit codes, so that we can distinguish
    # between config and runtime errors
    if len(node_errors):
        print("\nThere are one or mode transport nodes that are "
              "not connected: %s. Please, revise!" % node_errors)
        sys.exit(10)
    elif errors:
        print("\nThere are %d errors with your configuration. "
              "Please, revise!" % errors)
        sys.exit(12)
    else:
        print("Done.")