Merge "Change default backup edge size to compact"
This commit is contained in:
commit
9d6cd0c735
@ -412,17 +412,16 @@ nsxv_opts = [
|
|||||||
help=_('(Optional) Maximum number of sub interfaces supported '
|
help=_('(Optional) Maximum number of sub interfaces supported '
|
||||||
'per vnic in edge.')),
|
'per vnic in edge.')),
|
||||||
cfg.ListOpt('backup_edge_pool',
|
cfg.ListOpt('backup_edge_pool',
|
||||||
default=['service:large:4:10',
|
default=['service:compact:4:10',
|
||||||
'service:compact:4:10',
|
'vdr:compact:4:10'],
|
||||||
'vdr:large:4:10'],
|
|
||||||
help=_("Defines edge pool's management range with the format: "
|
help=_("Defines edge pool's management range with the format: "
|
||||||
"<edge_type>:[edge_size]:<min_edges>:<max_edges>."
|
"<edge_type>:[edge_size]:<min_edges>:<max_edges>."
|
||||||
"edge_type: service,vdr. "
|
"edge_type: service,vdr. "
|
||||||
"edge_size: compact, large, xlarge, quadlarge "
|
"edge_size: compact, large, xlarge, quadlarge "
|
||||||
"and default is large. By default, edge pool manager "
|
"and default is compact. By default, edge pool manager "
|
||||||
"would manage service edge with compact&&large size "
|
"would manage service edge with compact size "
|
||||||
"and distributed edge with large size as following: "
|
"and distributed edge with compact size as following: "
|
||||||
"service:large:4:10,service:compact:4:10,vdr:large:"
|
"service:compact:4:10,vdr:compact:"
|
||||||
"4:10")),
|
"4:10")),
|
||||||
cfg.IntOpt('retries',
|
cfg.IntOpt('retries',
|
||||||
default=20,
|
default=20,
|
||||||
|
@ -74,7 +74,7 @@ def parse_backup_edge_pool_opt():
|
|||||||
'allowed': vcns_const.ALLOWED_EDGE_TYPES})
|
'allowed': vcns_const.ALLOWED_EDGE_TYPES})
|
||||||
LOG.error(msg)
|
LOG.error(msg)
|
||||||
raise n_exc.Invalid(msg)
|
raise n_exc.Invalid(msg)
|
||||||
edge_size = edge_size or nsxv_constants.LARGE
|
edge_size = edge_size or nsxv_constants.COMPACT
|
||||||
if edge_size not in vcns_const.ALLOWED_EDGE_SIZES:
|
if edge_size not in vcns_const.ALLOWED_EDGE_SIZES:
|
||||||
msg = (_("edge size '%(edge_size)s' is not allowed, "
|
msg = (_("edge size '%(edge_size)s' is not allowed, "
|
||||||
"allowed types: %(allowed)s") %
|
"allowed types: %(allowed)s") %
|
||||||
@ -154,7 +154,7 @@ class EdgeManager(object):
|
|||||||
status=plugin_const.ERROR)
|
status=plugin_const.ERROR)
|
||||||
|
|
||||||
def _deploy_edge(self, context, lrouter,
|
def _deploy_edge(self, context, lrouter,
|
||||||
lswitch=None, appliance_size=nsxv_constants.LARGE,
|
lswitch=None, appliance_size=nsxv_constants.COMPACT,
|
||||||
edge_type=nsxv_constants.SERVICE_EDGE, async=True):
|
edge_type=nsxv_constants.SERVICE_EDGE, async=True):
|
||||||
"""Create an edge for logical router support."""
|
"""Create an edge for logical router support."""
|
||||||
router_id = lrouter['id']
|
router_id = lrouter['id']
|
||||||
@ -174,7 +174,7 @@ class EdgeManager(object):
|
|||||||
return task
|
return task
|
||||||
|
|
||||||
def _deploy_backup_edges_on_db(self, context, num,
|
def _deploy_backup_edges_on_db(self, context, num,
|
||||||
appliance_size=nsxv_constants.LARGE,
|
appliance_size=nsxv_constants.COMPACT,
|
||||||
edge_type=nsxv_constants.SERVICE_EDGE):
|
edge_type=nsxv_constants.SERVICE_EDGE):
|
||||||
router_ids = [(vcns_const.BACKUP_ROUTER_PREFIX +
|
router_ids = [(vcns_const.BACKUP_ROUTER_PREFIX +
|
||||||
_uuid())[:vcns_const.EDGE_NAME_LEN]
|
_uuid())[:vcns_const.EDGE_NAME_LEN]
|
||||||
@ -188,7 +188,7 @@ class EdgeManager(object):
|
|||||||
return router_ids
|
return router_ids
|
||||||
|
|
||||||
def _deploy_backup_edges_at_backend(self, context, router_ids,
|
def _deploy_backup_edges_at_backend(self, context, router_ids,
|
||||||
appliance_size=nsxv_constants.LARGE,
|
appliance_size=nsxv_constants.COMPACT,
|
||||||
edge_type=nsxv_constants.SERVICE_EDGE):
|
edge_type=nsxv_constants.SERVICE_EDGE):
|
||||||
|
|
||||||
eventlet.spawn_n(self._pool_creator, context, router_ids,
|
eventlet.spawn_n(self._pool_creator, context, router_ids,
|
||||||
@ -248,7 +248,7 @@ class EdgeManager(object):
|
|||||||
error_router_bindings)
|
error_router_bindings)
|
||||||
|
|
||||||
def _get_backup_edge_bindings(self, context,
|
def _get_backup_edge_bindings(self, context,
|
||||||
appliance_size=nsxv_constants.LARGE,
|
appliance_size=nsxv_constants.COMPACT,
|
||||||
edge_type=nsxv_constants.SERVICE_EDGE,
|
edge_type=nsxv_constants.SERVICE_EDGE,
|
||||||
db_update_lock=False):
|
db_update_lock=False):
|
||||||
filters = {'appliance_size': [appliance_size],
|
filters = {'appliance_size': [appliance_size],
|
||||||
@ -278,7 +278,7 @@ class EdgeManager(object):
|
|||||||
def _check_backup_edge_pool(self,
|
def _check_backup_edge_pool(self,
|
||||||
minimum_pooled_edges,
|
minimum_pooled_edges,
|
||||||
maximum_pooled_edges,
|
maximum_pooled_edges,
|
||||||
appliance_size=nsxv_constants.LARGE,
|
appliance_size=nsxv_constants.COMPACT,
|
||||||
edge_type=nsxv_constants.SERVICE_EDGE):
|
edge_type=nsxv_constants.SERVICE_EDGE):
|
||||||
"""Check edge pool's status and return one available edge for use."""
|
"""Check edge pool's status and return one available edge for use."""
|
||||||
admin_ctx = q_context.get_admin_context()
|
admin_ctx = q_context.get_admin_context()
|
||||||
@ -321,7 +321,7 @@ class EdgeManager(object):
|
|||||||
return False
|
return False
|
||||||
|
|
||||||
def _get_available_router_binding(self, context,
|
def _get_available_router_binding(self, context,
|
||||||
appliance_size=nsxv_constants.LARGE,
|
appliance_size=nsxv_constants.COMPACT,
|
||||||
edge_type=nsxv_constants.SERVICE_EDGE):
|
edge_type=nsxv_constants.SERVICE_EDGE):
|
||||||
backup_router_bindings = self._get_backup_edge_bindings(
|
backup_router_bindings = self._get_backup_edge_bindings(
|
||||||
context, appliance_size=appliance_size, edge_type=edge_type)
|
context, appliance_size=appliance_size, edge_type=edge_type)
|
||||||
@ -533,7 +533,7 @@ class EdgeManager(object):
|
|||||||
|
|
||||||
@vcns.retry_upon_exception(db_base_exc.OperationalError, max_delay=10)
|
@vcns.retry_upon_exception(db_base_exc.OperationalError, max_delay=10)
|
||||||
def _allocate_edge_appliance(self, context, resource_id, name,
|
def _allocate_edge_appliance(self, context, resource_id, name,
|
||||||
appliance_size=nsxv_constants.LARGE,
|
appliance_size=nsxv_constants.COMPACT,
|
||||||
dist=False):
|
dist=False):
|
||||||
"""Try to allocate one available edge from pool."""
|
"""Try to allocate one available edge from pool."""
|
||||||
|
|
||||||
|
@ -350,14 +350,14 @@ class EdgeManagerTestCase(EdgeUtilsTestCaseMixin):
|
|||||||
self.assertEqual(expect_edge_pool_dicts, edge_pool_dicts)
|
self.assertEqual(expect_edge_pool_dicts, edge_pool_dicts)
|
||||||
|
|
||||||
def test_backup_edge_pool_with_vdr_conf(self):
|
def test_backup_edge_pool_with_vdr_conf(self):
|
||||||
cfg.CONF.set_override('backup_edge_pool', ['vdr::1:3'], 'nsxv')
|
cfg.CONF.set_override('backup_edge_pool', ['vdr:large:1:3'], 'nsxv')
|
||||||
edge_pool_dicts = edge_utils.parse_backup_edge_pool_opt()
|
edge_pool_dicts = edge_utils.parse_backup_edge_pool_opt()
|
||||||
expect_edge_pool_dicts = self.vdr_edge_pool_dicts
|
expect_edge_pool_dicts = self.vdr_edge_pool_dicts
|
||||||
self.assertEqual(expect_edge_pool_dicts, edge_pool_dicts)
|
self.assertEqual(expect_edge_pool_dicts, edge_pool_dicts)
|
||||||
|
|
||||||
def test_backup_edge_pool_with_duplicate_conf(self):
|
def test_backup_edge_pool_with_duplicate_conf(self):
|
||||||
cfg.CONF.set_override('backup_edge_pool',
|
cfg.CONF.set_override('backup_edge_pool',
|
||||||
['service:large:1:3', 'service::3:4'],
|
['service:compact:1:3', 'service::3:4'],
|
||||||
'nsxv')
|
'nsxv')
|
||||||
self.assertRaises(n_exc.Invalid, edge_utils.parse_backup_edge_pool_opt)
|
self.assertRaises(n_exc.Invalid, edge_utils.parse_backup_edge_pool_opt)
|
||||||
|
|
||||||
@ -486,7 +486,8 @@ class EdgeManagerTestCase(EdgeUtilsTestCaseMixin):
|
|||||||
1, 2, 0, 4, 0,
|
1, 2, 0, 4, 0,
|
||||||
error_at_backend_status=plugin_const.ACTIVE,
|
error_at_backend_status=plugin_const.ACTIVE,
|
||||||
size=nsxv_constants.LARGE)
|
size=nsxv_constants.LARGE)
|
||||||
backup_bindings = self.edge_manager._get_backup_edge_bindings(self.ctx)
|
backup_bindings = self.edge_manager._get_backup_edge_bindings(self.ctx,
|
||||||
|
appliance_size=nsxv_constants.LARGE)
|
||||||
self._verify_router_bindings(expect_backup_bindings, backup_bindings)
|
self._verify_router_bindings(expect_backup_bindings, backup_bindings)
|
||||||
|
|
||||||
def test_get_available_router_bindings(self):
|
def test_get_available_router_bindings(self):
|
||||||
@ -653,7 +654,8 @@ class EdgeManagerTestCase(EdgeUtilsTestCaseMixin):
|
|||||||
1, 2, 3, 4, 5, edge_type=nsxv_constants.VDR_EDGE))
|
1, 2, 3, 4, 5, edge_type=nsxv_constants.VDR_EDGE))
|
||||||
self._populate_vcns_router_binding(pool_edges)
|
self._populate_vcns_router_binding(pool_edges)
|
||||||
self.edge_manager._allocate_edge_appliance(
|
self.edge_manager._allocate_edge_appliance(
|
||||||
self.ctx, 'fake_id', 'fake_name')
|
self.ctx, 'fake_id', 'fake_name',
|
||||||
|
appliance_size=nsxv_constants.LARGE)
|
||||||
edge_id = (EDGE_AVAIL + nsxv_constants.LARGE + '-' +
|
edge_id = (EDGE_AVAIL + nsxv_constants.LARGE + '-' +
|
||||||
nsxv_constants.SERVICE_EDGE + '-edge-' + str(0))
|
nsxv_constants.SERVICE_EDGE + '-edge-' + str(0))
|
||||||
self.nsxv_manager.update_edge.assert_has_calls(
|
self.nsxv_manager.update_edge.assert_has_calls(
|
||||||
@ -686,7 +688,8 @@ class EdgeManagerTestCase(EdgeUtilsTestCaseMixin):
|
|||||||
1, 2, 3, 4, 5, edge_type=nsxv_constants.VDR_EDGE))
|
1, 2, 3, 4, 5, edge_type=nsxv_constants.VDR_EDGE))
|
||||||
self._populate_vcns_router_binding(pool_edges)
|
self._populate_vcns_router_binding(pool_edges)
|
||||||
self.edge_manager._allocate_edge_appliance(
|
self.edge_manager._allocate_edge_appliance(
|
||||||
self.ctx, 'fake_id', 'fake_name', dist=True)
|
self.ctx, 'fake_id', 'fake_name', dist=True,
|
||||||
|
appliance_size=nsxv_constants.LARGE)
|
||||||
edge_id = (EDGE_AVAIL + nsxv_constants.LARGE + '-' +
|
edge_id = (EDGE_AVAIL + nsxv_constants.LARGE + '-' +
|
||||||
nsxv_constants.VDR_EDGE + '-edge-' + str(0))
|
nsxv_constants.VDR_EDGE + '-edge-' + str(0))
|
||||||
self.nsxv_manager.update_edge.assert_has_calls(
|
self.nsxv_manager.update_edge.assert_has_calls(
|
||||||
@ -710,7 +713,7 @@ class EdgeManagerTestCase(EdgeUtilsTestCaseMixin):
|
|||||||
assert not self.nsxv_manager.delete_edge.called
|
assert not self.nsxv_manager.delete_edge.called
|
||||||
self.nsxv_manager.update_edge.assert_has_calls(
|
self.nsxv_manager.update_edge.assert_has_calls(
|
||||||
[mock.call(mock.ANY, mock.ANY, mock.ANY, None,
|
[mock.call(mock.ANY, mock.ANY, mock.ANY, None,
|
||||||
appliance_size=nsxv_constants.LARGE, dist=False)])
|
appliance_size=nsxv_constants.COMPACT, dist=False)])
|
||||||
|
|
||||||
def test_free_edge_appliance_with_default_with_full(self):
|
def test_free_edge_appliance_with_default_with_full(self):
|
||||||
self.edge_pool_dicts = {
|
self.edge_pool_dicts = {
|
||||||
|
Loading…
x
Reference in New Issue
Block a user