Merge "[Admin-util]: Add support to update resource pool ID for NSXv edges"
This commit is contained in:
commit
990cf7475a
@ -20,17 +20,21 @@ Edges
|
|||||||
|
|
||||||
nsxadmin -r edges -o neutron-list
|
nsxadmin -r edges -o neutron-list
|
||||||
|
|
||||||
|
- Update Resource pool / Datastore on all edges in the backend. This utility can update resource pool and datastore ID of all edges to the nsx.ini configuration::
|
||||||
|
|
||||||
|
nsxadmin -r edges -o nsx-update-all --property appliances=True
|
||||||
|
|
||||||
- Update Resource pool / Datastore / edge HA of an edge: This utility can be used on upgrade after the customer added ha_datastore_id to the nsx.ini configuration or after changing the resource pool / data store globally or per availability zone. This Utility can update the deployment of existing edges::
|
- Update Resource pool / Datastore / edge HA of an edge: This utility can be used on upgrade after the customer added ha_datastore_id to the nsx.ini configuration or after changing the resource pool / data store globally or per availability zone. This Utility can update the deployment of existing edges::
|
||||||
|
|
||||||
nsxadmin -r edges -o nsx-update --property edge-id=<edge-id> --property appliances=True
|
nsxadmin -r edges -o nsx-update --property edge-id=<edge-id> --property appliances=True
|
||||||
|
|
||||||
- Update the size of an edge::
|
- Update the size of an edge::
|
||||||
|
|
||||||
nsxadmin -r edges -o nsx-update --property edge-id=edge-55 --property size=compact
|
nsxadmin -r edges -o nsx-update --property edge-id=edge-55 --property size=compact
|
||||||
|
|
||||||
- Update the high availability of an edge: enable/disable high availability of an edge::
|
- Update the high availability of an edge: enable/disable high availability of an edge::
|
||||||
|
|
||||||
nsxadmin -r edges -o nsx-update --property edge-id=edge-55 --property highavailability=<True/False>
|
nsxadmin -r edges -o nsx-update --property edge-id=edge-55 --property highavailability=<True/False>
|
||||||
|
|
||||||
Orphaned Edges
|
Orphaned Edges
|
||||||
~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~
|
||||||
@ -55,98 +59,98 @@ Backup Edges
|
|||||||
|
|
||||||
- List backend backup edges with their id, name and some more information::
|
- List backend backup edges with their id, name and some more information::
|
||||||
|
|
||||||
nsxadmin -r backup-edges -o list
|
nsxadmin -r backup-edges -o list
|
||||||
|
|
||||||
- Delete backup edge::
|
- Delete backup edge::
|
||||||
|
|
||||||
nsxadmin -r backup-edges -o clean --property edge-id=edge-9
|
nsxadmin -r backup-edges -o clean --property edge-id=edge-9
|
||||||
|
|
||||||
- List Edge name mismatches between DB and backend, and backup edges that are missing from the backend::
|
- List Edge name mismatches between DB and backend, and backup edges that are missing from the backend::
|
||||||
|
|
||||||
nsxadmin -r backup-edges -o list-mismatches
|
nsxadmin -r backup-edges -o list-mismatches
|
||||||
|
|
||||||
- Fix Edge name mismatch between DB and backend by updating the name on the backend::
|
- Fix Edge name mismatch between DB and backend by updating the name on the backend::
|
||||||
|
|
||||||
nsxadmin -r backup-edges -o fix-mismatch --property edge-id=edge-9
|
nsxadmin -r backup-edges -o fix-mismatch --property edge-id=edge-9
|
||||||
|
|
||||||
DHCP Bindings
|
DHCP Bindings
|
||||||
~~~~~~~~~~~~~
|
~~~~~~~~~~~~~
|
||||||
- List missing DHCP bindings: list dhcp edges that are missing from the NSXv backend::
|
- List missing DHCP bindings: list dhcp edges that are missing from the NSXv backend::
|
||||||
|
|
||||||
nsxadmin -r dhcp-binding -o list
|
nsxadmin -r dhcp-binding -o list
|
||||||
|
|
||||||
- Update DHCP bindings on an edge::
|
- Update DHCP bindings on an edge::
|
||||||
|
|
||||||
nsxadmin -r dhcp-binding -o nsx-update --property edge-id=edge-15
|
nsxadmin -r dhcp-binding -o nsx-update --property edge-id=edge-15
|
||||||
|
|
||||||
- Recreate DHCP edge by moving all the networks to other edges::
|
- Recreate DHCP edge by moving all the networks to other edges::
|
||||||
|
|
||||||
nsxadmin -r dhcp-binding -o nsx-recreate --property edge-id=edge-222
|
nsxadmin -r dhcp-binding -o nsx-recreate --property edge-id=edge-222
|
||||||
|
|
||||||
Routers
|
Routers
|
||||||
~~~~~~~
|
~~~~~~~
|
||||||
- Recreate a router edge by moving the router/s to other edge/s::
|
- Recreate a router edge by moving the router/s to other edge/s::
|
||||||
|
|
||||||
nsxadmin -r routers -o nsx-recreate --property edge-id=edge-308
|
nsxadmin -r routers -o nsx-recreate --property edge-id=edge-308
|
||||||
|
|
||||||
Networks
|
Networks
|
||||||
~~~~~~~~
|
~~~~~~~~
|
||||||
|
|
||||||
- Ability to update or get the teaming policy for a DVS::
|
- Ability to update or get the teaming policy for a DVS::
|
||||||
|
|
||||||
nsxadmin -r networks -o nsx-update --property dvs-id=<id> --property teamingpolicy=<policy>
|
nsxadmin -r networks -o nsx-update --property dvs-id=<id> --property teamingpolicy=<policy>
|
||||||
|
|
||||||
- List backend networks and their network morefs::
|
- List backend networks and their network morefs::
|
||||||
|
|
||||||
nsxadmin -r networks -o list
|
nsxadmin -r networks -o list
|
||||||
|
|
||||||
Missing Networks
|
Missing Networks
|
||||||
~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
- List networks which are missing from the backend::
|
- List networks which are missing from the backend::
|
||||||
|
|
||||||
nsxadmin -r missing-networks -o list
|
nsxadmin -r missing-networks -o list
|
||||||
|
|
||||||
Orphaned Networks
|
Orphaned Networks
|
||||||
~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
- List networks which are missing from the neutron DB::
|
- List networks which are missing from the neutron DB::
|
||||||
|
|
||||||
nsxadmin -r orphaned-networks -o list
|
nsxadmin -r orphaned-networks -o list
|
||||||
|
|
||||||
- Delete a backend network by it's moref::
|
- Delete a backend network by it's moref::
|
||||||
|
|
||||||
nsxadmin -r orphaned-networks -o nsx-clean --property moref=<moref>
|
nsxadmin -r orphaned-networks -o nsx-clean --property moref=<moref>
|
||||||
|
|
||||||
Security Groups, Firewall and Spoofguard
|
Security Groups, Firewall and Spoofguard
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
- Security groups. This adds support to list security-groups mappings and miss-matches between the mappings and backend resources as: firewall-sections and nsx-security-groups::
|
- Security groups. This adds support to list security-groups mappings and miss-matches between the mappings and backend resources as: firewall-sections and nsx-security-groups::
|
||||||
|
|
||||||
nsxadmin --resource security-groups --operation list
|
nsxadmin --resource security-groups --operation list
|
||||||
nsxadmin -r nsx-security-groups -o {list, list-missmatches}
|
nsxadmin -r nsx-security-groups -o {list, list-missmatches}
|
||||||
nsxadmin -r firewall-sections -o {list, list-missmatches}
|
nsxadmin -r firewall-sections -o {list, list-missmatches}
|
||||||
|
|
||||||
- Spoofguard support::
|
- Spoofguard support::
|
||||||
|
|
||||||
nsxadmin -r spoofguard-policy -o list-mismatches
|
nsxadmin -r spoofguard-policy -o list-mismatches
|
||||||
nsxadmin -r spoofguard-policy -o clean --property policy-id=spoofguardpolicy-10
|
nsxadmin -r spoofguard-policy -o clean --property policy-id=spoofguardpolicy-10
|
||||||
nsxadmin -r spoofguard-policy -o list --property reverse (entries defined on NSXv and not in Neutron)
|
nsxadmin -r spoofguard-policy -o list --property reverse (entries defined on NSXv and not in Neutron)
|
||||||
|
|
||||||
Metadata
|
Metadata
|
||||||
~~~~~~~~
|
~~~~~~~~
|
||||||
|
|
||||||
- Update loadbalancer members on router and DHCP edges::
|
- Update loadbalancer members on router and DHCP edges::
|
||||||
|
|
||||||
nsxadmin -r metadata -o nsx-update
|
nsxadmin -r metadata -o nsx-update
|
||||||
|
|
||||||
- Update shared secret on router and DHCP edges::
|
- Update shared secret on router and DHCP edges::
|
||||||
|
|
||||||
nsxadmin -r metadata -o nsx-update-secret
|
nsxadmin -r metadata -o nsx-update-secret
|
||||||
|
|
||||||
- Retrieve metadata connectivity - optionally for a specific network::
|
- Retrieve metadata connectivity - optionally for a specific network::
|
||||||
|
|
||||||
nsxadmin -r metadata -o status [--property network_id=<net_id>]
|
nsxadmin -r metadata -o status [--property network_id=<net_id>]
|
||||||
|
|
||||||
NSXv3
|
NSXv3
|
||||||
-----
|
-----
|
||||||
@ -174,7 +178,7 @@ Ports
|
|||||||
|
|
||||||
nsxadmin -r ports -o list-mismatches
|
nsxadmin -r ports -o list-mismatches
|
||||||
|
|
||||||
- Update the VMs ports on the backend after migrating nsx-v -> nsx-v3
|
- Update the VMs ports on the backend after migrating nsx-v -> nsx-v3::
|
||||||
|
|
||||||
nsxadmin -r ports -o nsx-migrate-v-v3
|
nsxadmin -r ports -o nsx-migrate-v-v3
|
||||||
|
|
||||||
|
@ -258,6 +258,34 @@ def nsx_update_edge(resource, event, trigger, **kwargs):
|
|||||||
LOG.error(usage_msg)
|
LOG.error(usage_msg)
|
||||||
|
|
||||||
|
|
||||||
|
@admin_utils.output_header
|
||||||
|
def nsx_update_edges(resource, event, trigger, **kwargs):
|
||||||
|
"""Update all edges with the given property"""
|
||||||
|
if not kwargs.get('property'):
|
||||||
|
usage_msg = _LE("Need to specify a property to update all edges. "
|
||||||
|
"Add --property appliances=<True/False>")
|
||||||
|
LOG.error(usage_msg)
|
||||||
|
return
|
||||||
|
|
||||||
|
edges = utils.get_nsxv_backend_edges()
|
||||||
|
properties = admin_utils.parse_multi_keyval_opt(kwargs['property'])
|
||||||
|
result = 0
|
||||||
|
for edge in edges:
|
||||||
|
if properties.get('appliances', 'false').lower() == "true":
|
||||||
|
try:
|
||||||
|
change_edge_appliance(edge.get('edge-id'))
|
||||||
|
except Exception as e:
|
||||||
|
result += 1
|
||||||
|
LOG.error(_LE("Failed to update edge %(edge)s. Exception: "
|
||||||
|
"%(e)s"), {'edge': edge.get('edge-id'),
|
||||||
|
'e': str(e)})
|
||||||
|
if result > 0:
|
||||||
|
total = len(edges)
|
||||||
|
msg = (_LE("%(result)s of %(total)s edges failed "
|
||||||
|
"to update.") % {'result': result, 'total': total})
|
||||||
|
LOG.error(msg)
|
||||||
|
|
||||||
|
|
||||||
registry.subscribe(nsx_list_edges,
|
registry.subscribe(nsx_list_edges,
|
||||||
constants.EDGES,
|
constants.EDGES,
|
||||||
shell.Operations.NSX_LIST.value)
|
shell.Operations.NSX_LIST.value)
|
||||||
@ -276,3 +304,6 @@ registry.subscribe(nsx_list_missing_edges,
|
|||||||
registry.subscribe(nsx_update_edge,
|
registry.subscribe(nsx_update_edge,
|
||||||
constants.EDGES,
|
constants.EDGES,
|
||||||
shell.Operations.NSX_UPDATE.value)
|
shell.Operations.NSX_UPDATE.value)
|
||||||
|
registry.subscribe(nsx_update_edges,
|
||||||
|
constants.EDGES,
|
||||||
|
shell.Operations.NSX_UPDATE_ALL.value)
|
||||||
|
@ -43,6 +43,7 @@ class Operations(enum.Enum):
|
|||||||
NSX_LIST = 'nsx-list'
|
NSX_LIST = 'nsx-list'
|
||||||
NSX_CLEAN = 'nsx-clean'
|
NSX_CLEAN = 'nsx-clean'
|
||||||
NSX_UPDATE = 'nsx-update'
|
NSX_UPDATE = 'nsx-update'
|
||||||
|
NSX_UPDATE_ALL = 'nsx-update-all'
|
||||||
NSX_UPDATE_SECRET = 'nsx-update-secret'
|
NSX_UPDATE_SECRET = 'nsx-update-secret'
|
||||||
NSX_RECREATE = 'nsx-recreate'
|
NSX_RECREATE = 'nsx-recreate'
|
||||||
MIGRATE_TO_DYNAMIC_CRITERIA = 'migrate-to-dynamic-criteria'
|
MIGRATE_TO_DYNAMIC_CRITERIA = 'migrate-to-dynamic-criteria'
|
||||||
@ -91,7 +92,8 @@ nsxv_resources = {
|
|||||||
constants.EDGES: Resource(constants.EDGES,
|
constants.EDGES: Resource(constants.EDGES,
|
||||||
[Operations.NSX_LIST.value,
|
[Operations.NSX_LIST.value,
|
||||||
Operations.NEUTRON_LIST.value,
|
Operations.NEUTRON_LIST.value,
|
||||||
Operations.NSX_UPDATE.value]),
|
Operations.NSX_UPDATE.value,
|
||||||
|
Operations.NSX_UPDATE_ALL.value]),
|
||||||
constants.BACKUP_EDGES: Resource(constants.BACKUP_EDGES,
|
constants.BACKUP_EDGES: Resource(constants.BACKUP_EDGES,
|
||||||
[Operations.LIST.value,
|
[Operations.LIST.value,
|
||||||
Operations.CLEAN.value,
|
Operations.CLEAN.value,
|
||||||
|
Loading…
Reference in New Issue
Block a user