Vous pouvez migrer des ressources personnalisées qui ne sont pas migrées par défaut lorsqu'un cluster est importé.
Les ressources personnalisées ne sont pas créées par NCP. Il existe des méthodes dans le fichier nsxt_mp_to_policy_converter.py (recherchez le mot « custom » dans les définitions de méthode) qui peuvent être remplacées pour mettre en œuvre le comportement prévu lors de l'importation du gestionnaire vers la stratégie. Par défaut, NCP n'effectue aucune action pour ces ressources et, par conséquent, aucun comportement personnalisé n'est implémenté. Si vous spécifiez un ID de ressource personnalisée, une demande simple pour l'importer sera créée (l'ID de stratégie est déduit de display_name dans ce cas, aucune mise à jour n'est effectuée aux phases 2 et 3). Vous pouvez spécifier les ID de ces ressources dans le fichier de spécification utilisateur (voir l'exemple ci-dessous) à l'aide de l'identifiant custom_resources. Voici la syntaxe :
k8s-clusters: <k8s cluster name>: <NSX Resource Shell Class Name>: <NSX Resource - 1 Class Name>: custom_resources: <NSX Resource - 1A ID>: metadata: - "key": <metadata key recognized by Migration API> "value": <metadata value associated with the key recognized by Migration API> linked_ids: - "key": <linked_ids key recognized by Migration API> "value": <linked_ids value associated with the key recognized by Migration API> <NSX Resource - 2 Class Name>: # these resources are imported after NSX Resource - 1A is custom_resources: <NSX Resource - 2A ID>: metadata: - "key": <metadata key recognized by Migration API> "value": <metadata value associated with the key recognized by Migration API> linked_ids: - "key": <linked_ids key recognized by Migration API> "value": <linked_ids value associated with the key recognized by Migration API> <NSX Resource - 1 Class Name>: <NSX Resource - 1B ID>: metadata: - "key": <metadata key recognized by Migration API> "value": <metadata value associated with the key recognized by Migration API> linked_ids: - "key": <linked_ids key recognized by Migration API> "value": <linked_ids value associated with the key recognized by Migration API>
Exemple de spécification de ressources personnalisées dans user-spec.yaml
k8s-clusters: k8scluster: # top-tier-router-id is required for each cluster top-tier-router-id: t1-router-id top-tier-router-type: TIER1 # Provide custom resources as follow: NamespaceResources: Tier1Router: custom_resources: # Custom resources are specified only with MP ID 6d93a932-87ea-42de-a30c-b39f397322b0: metadata: # It should be a list - key: 'metadata-key' value: 'metadata-value' linked_ids: # It should be a list - key: 'linked_id-key' value: 'linked_id-value' NATRules: custom_resources: # Custom resources are specified only with MP ID 536870924: metadata: # It should be a list - key: 'metadata-key' value: 'metadata-value' linked_ids: # It should be a list - key: 'linked_id-key' value: 'linked_id-value'
Reportez-vous à la section « Ordre de spécification des ressources » ci-dessous pour voir comment spécifier des ressources personnalisées dans user-spec.yaml.
Ordre de spécification des ressources
SharedResources - IpBlock - IpPool - IpPoolAllocation (specified as ip-allocations; see the sample user-spec.yaml for an example) - Tier0Router - Tier0RouterPorts (cannot be specified in user-spec.yaml) - Tier0RouterConfig (cannot be specified in user-spec.yaml) - Tier1Router - SpoofGuardSwitchingProfile - SwitchSecuritySwitchingProfile - QosSwitchingProfile - IpDiscoverySwitchingProfile - MacManagementSwitchingProfile - NodeLogicalSwitch - LogicalPort - Tier1RouterPortsAndStaticRoutes - NatRule - IpSet - MacSet - NsGroup - Certificate - LBClientSSlProfile - LBServerSSlProfile - LBCookiePersistenceProfile - LBSourceIPPersistenceProfile - LBGenericPersistenceProfile - LbHttpMonitor - LbHttpsMonitor - LbIcmpMonitor - LbTcpMonitor - LbUdpMonitor - LbPassiveMonitor - LbHttpProfile - LbFastTcpProfile - LbFastUdpProfile - LbPool - LbVirtualServer - LbService - NSService - NSProfile - FirewallSectionsAndRules - GatewayFirewallSectionsAndRules ClusterResources - Tier1Router - LogicalPort - Tier1RouterPortsAndStaticRoutes - GatewayFirewallSectionsAndRules NamespaceResources - ExternalIpPoolsAllocations - IpBlockSubnet - IpPoolAllocation - Tier1Router - Tier1RouterPorts - SpoofguradProfile - NodeLogicalSwitch - NATRules - NsGroup - GatewayFirewallSectionsAndRules PodResources - ExternalIpPoolsAllocations - LogicalPort - NATRules NetworkPolicyResources - IpSet - FirewallSectionsAndRules SecretResources - Certificate LBClusterWideResources - ExternalIpPoolsAllocations - IpPool - IpPoolAllocation - NodeLogicalSwitch - Tier1Router - Tier1RouterPortsAndStaticRoutes - Certificate - ServerPool - CookiePersistenceProfile - SourceIPPersistenceProfile - ApplicationProfile - VirtualServer - GatewayFirewallSectionsAndRules L4ServiceResources - ExternalIpPoolsAllocations - SourceIPPersistenceProfile - VirtualServer - LBService - DefaultLBService