Gestion d'instances Exadata
Le tableau de bord et les API Mes services sont en phase d'abandon.
Les procédures suivantes vous guident dans la création, la modification et la suppression d'instances Exadata utilisées avec l'API Mes services Oracle Cloud.
Ces procédures sont destinées à Oracle Database Exadata Database Service on Cloud@Customer UNIQUEMENT. Pour plus d'informations, reportez-vous à Administration d'Oracle Database Exadata Cloud at Customer. Ces procédures ne s'appliquent PAS à Exadata Cloud Service disponible dans Oracle Cloud Infrastructure.
Prérequis
Pour pouvoir gérer des instances Exadata, vous devez effectuer les opérations suivantes :
- Vous abonner à un service Oracle Cloud
- Obtenir les informations d'identification de compte avec les rôles requis affectés
- Déterminer l'adresse d'API
Pour accéder à l'API Mes services Oracle Cloud, vous devez souscrire un abonnement payant ou d'évaluation à un service Oracle Cloud.
Demandez à l'administrateur de compte les éléments suivants pour accéder à l'API Mes services Oracle Cloud :
-
Informations d'identification de compte :
-
Nom utilisateur et mot de passe
-
ID de domaine d'identité
L'ID de domaine d'identité peut être le GUID IDCS qui identifie le domaine d'identité des utilisateurs dans Identity Cloud Service (IDCS) ou le nom de domaine d'identité d'un compte cloud traditionnel.
-
-
Rôles requis affectés au nom utilisateur ci-dessus
Insérez l'ID de domaine d'identité fourni par l'administrateur de compte (<domain>) entre /itas/
et /myservices/
.
Exemple :
https://itra.oraclecloud.com/itas/<domain>/myservices/api/v1/serviceEntitlements
Création d'instances Exadata
Cette section présente la création d'une instance Exadata de base, d'une instance avec une configuration réseau IP personnalisée et d'une instance avec prise en charge de plusieurs machines virtuelles.
Envoyez une demande avec la charge utile requise afin de créer une instance pour une habilitation de service donnée (Exadata dans notre cas).
Dans l'exemple suivant, <domain> est l'ID de domaine d'identité.
POST /itas/<domain>/myservices/api/v1/operations
{
"operationItems": [
{
"attributes": [
{
"name": "requestPayload.name",
"value": "newinstanceName"
},
{
"name": "requestPayload.serviceEntitlementId",
"value": "500073421"
},
{
"name": "requestPayload.size",
"value": "CUSTOM"
},
{
"name": "requestPayload.serviceType",
"value": "Exadata"
},
{
"name": "requestPayload.adminUserName",
"value": "john.smith@example.com"
},
{
"name": "requestPayload.adminEmail",
"value": "john.smith@example.com"
},
{
"name": "requestPayload.adminFirstName",
"value": "John"
},
{
"name": "requestPayload.adminLastName",
"value": "Smith"
},
{
"name": "requestPayload.invokerAdminUserName",
"value": "john.smith@example.com"
},
{
"name": "requestPayload.invokerAdminEmail",
"value": "john.smith@example.com"
},
{
"name": "requestPayload.invokerAdminFirstName",
"value": "John"
},
{
"name": "requestPayload.invokerAdminLastName",
"value": "Smith"
},
{
"name": "requestPayload.customAttributes.ExaUnitName",
"value": "systemname"
},
{
"name": "requestPayload.customAttributes.CreateSparse",
"value": "N"
},
{
"name": "requestPayload.customAttributes.BackupToDisk",
"value": "N"
},
{
"name": "requestPayload.customAttributes.isBYOL",
"value": "N"
},
{
"name": "requestPayload.customAttributes.PickRackSize",
"value": "Quarter Rack"
},
{
"name": "requestPayload.customAttributes.SELECTED_DC_ID",
"value": "US001"
}
],
"operationItemDefinition": {
"id": "CIM-Exadata-CUSTOM-PRODUCTION-CREATE"
}
}
]
}
Attributs
Nom | Description |
---|---|
requestPayload.name |
Requis : oui Type : chaîne Nom de l'instance Exadata. Ce nom doit respecter les conditions suivantes :
|
requestPayload. serviceEntitlementId |
Requis : oui Type : chaîne Habilitation de service pour l'instance Exadata. Reportez-vous à Repassage d'habilitation de service Exadata. Notez que les préfixes "cesi-" et "sub-" ne doivent pas être inclus. |
requestPayload. customAttributes. ExaUnitName |
Requis : oui Type : chaîne Nom de l'environnement Exadata Database Machine. Ce nom est également utilisé comme nom de cluster pour l'installation Oracle Grid Infrastructure. |
requestPayload. customAttributes. CreateSparse |
Requis : oui Type : chaîne "Y" pour créer un groupe de disques basé sur des disques grille dispersés, sinon "N". Vous devez sélectionner cette option pour activer les clichés Exadata Cloud Service. Les clichés Exadata permettent de créer et de détruire très rapidement et avec facilité des clones de bases de données Oracle peu gourmands en espace. |
requestPayload. customAttributes. BackupToDisk |
Requis : oui Type : chaîne "Y" pour utiliser l'option Sauvegardes de base de données sur le stockage Exadata, sinon "N". Cette option active le stockage des sauvegardes de base de données locale sur le stockage Exadata. |
requestPayload. customAttributes. isBYOL |
Requis : oui Type : chaîne "Y" pour indiquer que l'instance Exadata Cloud Service utilise les licences Oracle Database que vous fournissez et non celles qui font partie de l'abonnement au service, sinon "N". Cette option s'applique uniquement à la facturation associée à l'instance de service. Elle n'a aucun effet sur la configuration technique de l'instance Exadata Cloud Service. |
requestPayload. customAttributes. PickRackSize |
Requis : oui Type : chaîne Indiquez la configuration de rack pour l'instance de service. Les valeurs exactes autorisées dépendent de votre acquisition. Les valeurs classiques sont Rack complet, Demi-rack, Quart de rack ou Huitième de rack. |
requestPayload. customAttributes. SELECTED_DC_ID |
Requis : oui Type : chaîne Centre de données qui hébergera l'instance Exadata Cloud Service. Pour obtenir les identifiants de centre de données admissibles, reportez-vous à Repérage d'habilitation de service Exadata. |
Envoyez une demande avec les attributs ClientNetwork et BackupNetwork dans la charge utile. L'exemple suivant inclut ces attributs facultatifs, ainsi que les attributs requis.
Dans l'exemple suivant, <domain> est l'ID de domaine d'identité.
POST /itas/<domain>/myservices/api/v1/operations
{
"operationItems": [
{
"attributes": [
{
"name": "requestPayload.name",
"value": "newinstanceName"
},
{
"name": "requestPayload.serviceEntitlementId",
"value": "500073421"
},
{
"name": "requestPayload.size",
"value": "CUSTOM"
},
{
"name": "requestPayload.serviceType",
"value": "Exadata"
},
{
"name": "requestPayload.adminUserName",
"value": "john.smith@example.com"
},
{
"name": "requestPayload.adminEmail",
"value": "john.smith@example.com"
},
{
"name": "requestPayload.adminFirstName",
"value": "John"
},
{
"name": "requestPayload.adminLastName",
"value": "Smith"
},
{
"name": "requestPayload.invokerAdminUserName",
"value": "john.smith@example.com"
},
{
"name": "requestPayload.invokerAdminEmail",
"value": "john.smith@example.com"
},
{
"name": "requestPayload.invokerAdminFirstName",
"value": "John"
},
{
"name": "requestPayload.invokerAdminLastName",
"value": "Smith"
},
{
"name": "requestPayload.customAttributes.ExaUnitName",
"value": "systemname"
},
{
"name": "requestPayload.customAttributes.CreateSparse",
"value": "N"
},
{
"name": "requestPayload.customAttributes.BackupToDisk",
"value": "N"
},
{
"name": "requestPayload.customAttributes.isBYOL",
"value": "N"
},
{
"name": "requestPayload.customAttributes.PickRackSize",
"value": "Quarter Rack"
},
{
"name": "requestPayload.customAttributes.SELECTED_DC_ID",
"value": "US001"
}
{
"name": "requestPayload.customAttributes.ClientNetwork",
"value": "/root/root/1/ipnetwork1"
},
{
"name": "requestPayload.customAttributes.BackupNetwork",
"value": "/root/root/1/ipnetwork2"
}
],
"operationItemDefinition": {
"id": "CIM-Exadata-CUSTOM-PRODUCTION-CREATE"
}
}
]
}
Attributs
Nom | Description |
---|---|
requestPayload. customAttributes. ClientNetwork |
Requis : oui Type : URL Définitions de réseau IP pour le réseau principalement utilisé pour l'accès client aux serveurs de base de données. Les applications accèdent généralement aux bases de données sur Exadata Cloud Service via ce réseau à l'aide d'Oracle Net Services en association avec les interfaces SCAN (Single Client Access Name) et Oracle RAC Virtual IP (VIP). |
requestPayload. customAttributes. BackupNetwork |
Requis : oui Type : URL Définitions de réseau IP pour le réseau généralement utilisé pour accéder aux serveurs de base de données pour diverses raisons, dont les sauvegardes et les transferts de données en masse. |
Si votre environnement système Exadata prend en charge plusieurs clusters de machines virtuelles, vous pouvez définir jusqu'à huit clusters et indiquer la manière dont les ressources système Exadata globales leur sont allouées.
Dans une configuration à plusieurs clusters de machines virtuelles, une partie dédiée des ressources système Exadata globales est allouée à chaque cluster, sans surprovisionnement ni partage des ressources. Sur les noeuds de calcul, une machine virtuelle distincte est définie pour chaque cluster, et une partie dédiée des ressources disponibles d'UC, de mémoire et de disque local du noeud de calcul est allouée à chaque machine virtuelle. Une partie dédiée du stockage Exadata global est également allouée à chaque cluster de machines virtuelles.
Envoyez une demande avec les attributs EXAUNIT_ALLOCATIONS et MULTIVM_ENABLED dans la charge utile. L'exemple suivant inclut ces attributs facultatifs, ainsi que les attributs requis.
Dans l'exemple suivant, <domain> est l'ID de domaine d'identité et <base64_encoded_string> est un encodage base64 des données de l'exemple.
Exemple de charge utile pour la demande :
POST /itas/<domain>/myservices/api/v1/operations
{
"operationItems": [
{
"attributes": [
{
"name": "requestPayload.name",
"value": "newinstanceName"
},
{
"name": "requestPayload.serviceEntitlementId",
"value": "500073421"
},
{
"name": "requestPayload.size",
"value": "CUSTOM"
},
{
"name": "requestPayload.serviceType",
"value": "Exadata"
},
{
"name": "requestPayload.adminUserName",
"value": "john.smith@example.com"
},
{
"name": "requestPayload.adminEmail",
"value": "john.smith@example.com"
},
{
"name": "requestPayload.adminFirstName",
"value": "John"
},
{
"name": "requestPayload.adminLastName",
"value": "Smith"
},
{
"name": "requestPayload.invokerAdminUserName",
"value": "john.smith@example.com"
},
{
"name": "requestPayload.invokerAdminEmail",
"value": "john.smith@example.com"
},
{
"name": "requestPayload.invokerAdminFirstName",
"value": "John"
},
{
"name": "requestPayload.invokerAdminLastName",
"value": "Smith"
},
{
"name": "requestPayload.customAttributes.ExaUnitName",
"value": "systemname"
},
{
"name": "requestPayload.customAttributes.CreateSparse",
"value": "N"
},
{
"name": "requestPayload.customAttributes.BackupToDisk",
"value": "N"
},
{
"name": "requestPayload.customAttributes.isBYOL",
"value": "N"
},
{
"name": "requestPayload.customAttributes.PickRackSize",
"value": "Quarter Rack"
},
{
"name": "requestPayload.customAttributes.SELECTED_DC_ID",
"value": "US001"
}
{
"name": "requestPayload.customAttributes.EXAUNIT_ALLOCATIONS",
"value": "<base64_encoded_string>"
},
{
"name": "requestPayload.customAttributes.MULTIVM_ENABLED",
"value": "true"
}
],
"operationItemDefinition": {
"id": "CIM-Exadata-CUSTOM-PRODUCTION-CREATE"
}
}
]
}
Charge utile pour <base64_encoded_string> :
{
ExaunitProperties: [
{name:requestId, value:27ac0ee3-0c72-4493-b02b-40038f07d2a0},
{name:Operation, value:AddCluster},
{name:TotalNumOfCoresForCluster, value:4},
{name:TotalMemoryInGb, value:30},
{name:StorageInTb, value:3},
{name:OracleHomeDiskSizeInGb, value:60},
{name:ClientNetwork, value:/root/root/1/ipnetwork1}, // Only if Higgs is also required
{name:BackupNetwork, value:/root/root/1/ipnetwork2}, // Only if Higgs is also required
{name:ExaUnitName, value:systemname},
{name:CreateSparse, value:N},
{name:BackupToDisk, value:N}
]
}
Attributs
Nom | Description |
---|---|
requestId |
Requis : non Type : chaîne UUID unique |
TotalNumOfCores ForCluster |
Requis : oui Type : chaîne Nombre de coeurs de processeur alloués au cluster de machines virtuelles. Il s'agit du nombre total de coeurs de processeur alloués à parts égales entre tous les noeuds de calcul du cluster de machines virtuelles. Il doit être un multiple de numComputes tel que le renvoie un appel à ecra/endpoint/clustershapes. |
TotalMemoryInGb |
Requis : oui Type : chaîne Quantité de mémoire (en Go) allouée au cluster de machines virtuelles. Il s'agit de la quantité totale de mémoire allouée à parts égales entre tous les noeuds de calcul du cluster de machines virtuelles. Il doit être un multiple de numComputes tel que le renvoie un appel à ecra/endpoint/clustershapes. |
StorageInTb |
Requis : oui Type : chaîne Quantité totale de stockage Exadata (en To) allouée au cluster de machines virtuelles. Ce stockage est alloué à parts égales à partir de tous les serveurs Exadata Storage Server. |
OracleHomeDiskSize InGb |
Requis : oui Type : chaîne Quantité de stockage sur disque local (en Go) allouée à chaque serveur de base de données dans le premier cluster de machines virtuelles. |
Modification d'instances Exadata
Cette section explique comment ajouter un cluster à une instance existante, modifier la forme d'un cluster et supprimer un cluster.
Envoyez une demande avec la valeur operationItemDefinition de CIM-Exadata-CUSTOM-PRODUCTION-UPDATE et un encodage base64 de charge utile incluant la valeur d'opération d'AddCluster.
Dans l'exemple suivant, <domain> est l'ID de domaine d'identité, <instanceId> et <serviceEntitlementId> sont renvoyés à partir d'iTAS serviceInstances, et <base64_encoded_string> est un encodage Base64 de la charge utile de l'exemple.
Exemple de charge utile pour la demande :
POST /itas/<domain>/myservices/api/v1/operations HTTP/1.1
{
"operationItems": [
{
"attributes": [
{
"name": "instanceId",
"value": "<instanceId>"
},
{
"name": "requestPayload.serviceEntitlementId",
"value": "<serviceEntitlementId>"
},
{
"name": "requestPayload.size",
"value": "CUSTOM"
},
{
"name": "requestPayload.serviceType",
"value": "Exadata"
},
{
"name": "requestPayload.customAttributes.EXAUNIT_ALLOCATIONS",
"value": "<base64_encoded_string>"
},
{
"name": "requestPayload.customAttributes. MULTIVM_ENABLED",
"value": "true"
}
],
"operationItemDefinition": {
"id": "CIM-Exadata-CUSTOM-PRODUCTION-UPDATE"
}
}
]
}
Charge utile pour <base64_encoded_string> :
{
ExaunitProperties: [
{name:requestId, value:27ac0ee3-0c72-4493-b02b-40038f07d2a0},
{name:Operation, value:AddCluster},
{name:TotalNumOfCoresForCluster, value:4},
{name:TotalMemoryInGb, value:30},
{name:StorageInTb, value:3},
{name:OracleHomeDiskSizeInGb, value:60},
{name:ClientNetwork, value:/root/root/1/ipnetwork1}, // Only if Higgs is also required
{name:BackupNetwork, value:/root/root/1/ipnetwork2}, // Only if Higgs is also required
{name:ExaUnitName, value:Cluster2},
{name:CreateSparse, value:N},
{name:BackupToDisk, value:N}
]
}
Envoyez une demande avec la valeur operationItemDefinition de CIM-Exadata-CUSTOM-PRODUCTION-UPDATE et un encodage base64 de charge utile incluant la valeur d'opération de ReshapeCluster.
Dans l'exemple suivant, <domain> est l'ID de domaine d'identité et <base64_encoded_string> est un encodage base64 des données de l'exemple.
Exemple de charge utile pour la demande :
POST /itas/<domain>/myservices/api/v1/operations HTTP/1.1
{
"operationItems": [
{
"attributes": [
{
"name": "instanceId",
"value": "500076173"
},
{
"name": "requestPayload.serviceEntitlementId",
"value": "500073421"
},
{
"name": "requestPayload.size",
"value": "CUSTOM"
},
{
"name": "requestPayload.serviceType",
"value": "Exadata"
},
{
"name": "requestPayload.customAttributes.EXAUNIT_ALLOCATIONS",
"value": "<base64_encoded_string>"
},
{
"name": "requestPayload.customAttributes. MULTIVM_ENABLED",
"value": "true"
}
],
"operationItemDefinition": {
"id": "CIM-Exadata-CUSTOM-PRODUCTION-UPDATE"
}
}
]
}
Charge utile pour <base64_encoded_string> :
{
ExaunitProperties: [
{name:requestId, value:27ac0ee3-0c72-4493-b02b-40038f07d2a0},
{name:ExaunitID, value:1}, // From ecra/endpoint/exaservice/{serviceInstance}/resourceinfo
{name:Operation, value:ReshapeCluster},
{name:TotalNumOfCoresForCluster, value:10},
{name:TotalMemoryInGb, value:10},
{name:StorageInTb, value:4},
{name:OhomePartitionInGB, value:100},
{name:ClientNetwork, value:/root/root/1/ipnetwork1}, // Only if Higgs is also required
{name:BackupNetwork, value:/root/root/1/ipnetwork2} // Only if Higgs is also required
]
}
-
Un seul attribut peut être modifié par demande de modification de forme. La charge utile doit contenir uniquement l'attribut modifié. Exemple :
{ExaunitProperties : [{name:Operation,value : ReshapeCluster}, { name:ExaunitID,value:5 },{ name:TotalNumOfCoresForCluster , value:6}] }
- Lorsque vous procédez à une modification de forme avec l'attribut
OracleHomeDiskSizeInGb
, utilisez le nomOhomePartitionInGB
. - La valeur de
TotalNumOfCoresForCluster
doit être un multiple denumComputes
tel que le renvoie un appel àecra/endpoint/clustershapes
. - La valeur de
TotalMemoryInGb
doit être un multiple denumComputes
tel que le renvoie un appel àecra/endpoint/clustershapes
.
Envoyez une demande avec la valeur operationItemDefinition de CIM-Exadata-CUSTOM-PRODUCTION-UPDATE et un encodage base64 de charge utile incluant la valeur d'opération de DeleteCluster.
Dans l'exemple suivant, <domain> est l'ID de domaine d'identité et <base64_encoded_string> est un encodage base64 des données de l'exemple.
Exemple de charge utile pour la demande :
POST /itas/<domain>/myservices/api/v1/operations HTTP/1.1
{
"operationItems": [
{
"attributes": [
{
"name": "instanceId",
"value": "500076173"
},
{
"name": "requestPayload.serviceEntitlementId",
"value": "500073421"
},
{
"name": "requestPayload.size",
"value": "CUSTOM"
},
{
"name": "requestPayload.serviceType",
"value": "Exadata"
},
{
"name": "requestPayload.customAttributes.EXAUNIT_ALLOCATIONS",
"value": "<base64_encoded_string>"
},
{
"name": "requestPayload.customAttributes. MULTIVM_ENABLED",
"value": "true"
}
],
"operationItemDefinition": {
"id": "CIM-Exadata-CUSTOM-PRODUCTION-UPDATE"
}
}
]
}
Charge utile pour <base64_encoded_string> :
{
ExaunitProperties: [
{name:requestId, value:27ac0ee3-0c72-4493-b02b-40038f07d202}, // Optional
{name:ExaunitID, value:2},
{name:Operation, value:DeleteCluster}
]
}
Suppression d'instances Exadata
Cette section explique comment supprimer des instances Exadata.
Supprimez tous les clusters à plusieurs machines virtuelles existants avant de supprimer l'instance Exadata. Cette action évite que l'instance ne se trouve dans un état non valide.
Envoyez une demande avec la valeur operationItemDefinition de CIM-Exadata-CUSTOM-PRODUCTION-DELETE.
Dans l'exemple suivant, <domain> est l'ID de domaine d'identité.
Exemple de charge utile pour la demande :
POST /itas/<domain>/myservices/api/v1/operations HTTP/1.1
{
"operationItems": [
{
"attributes": [
{
"name": "instanceId",
"value": "500076173"
},
{
"name": "requestPayload.serviceEntitlementId",
"value": "500073421"
},
{
"name": "requestPayload.serviceType",
"value": "Exadata"
}
],
"operationItemDefinition": {
"id": "CIM-Exadata-CUSTOM-PRODUCTION-DELETE"
}
}
]
}
Repérage d'habilitations et d'instances
Cette section explique comment repérer des habilitations de service et des instances de service.
Envoyez la demande suivante :
GET /itas/<domain>/myservices/api/v1/serviceEntitlements?serviceDefinitionNames=Exadata
Exemple de charge utile renvoyée pour cette demande :
{
"items": [
{
"id": "cesi-585927251", // Unique ServiceEntitlementId
"serviceDefinition": {
"canonicalLink": "/itas/a517289/myservices/api/v1/serviceDefinitions/502579309",
"id": "502579309",
"name": "Exadata" // The customer is entitled to use the Exadata Service
},
"status": "ACTIVE",
...
"canonicalLink": "/itas/a517289/myservices/api/v1/serviceInstances/csi-585928949"
}
... // More Service Entitlements could be displayed
],
"canonicalLink": "/itas/<domain>/myservices/api/v1/serviceEntitlements",
"hasMore": false,
"limit": 25,
"offset": 0
}
Centres de données admissibles :
Utilisez :
/itas/
<domain>/myservices/api/v1/serviceEntitlements/{ServiceEntitlementId}?expands=serviceInstancesEligibleDataCenters
où {ServiceEntitlementId}
est un ID d'habilitation de service tel que cesi-500074601
. Ces éléments fournissent des informations supplémentaires telles que :
"serviceInstancesEligibleDataCenters": [
{
"id": "US001"
}
],
Envoyez la demande suivante :
GET /<domain>/myservices/api/v1/serviceInstances?serviceDefinitionNames=Exadata
Exemple de charge utile renvoyée pour cette demande :
{
"items": [
{
"id": "csi-585928949", // Unique ServiceInstanceId
"serviceEntitlement": {
"id": "cesi-585927251", // Related ServiceEntitlementId
"canonicalLink": "/itas/a517289/myservices/api/v1/serviceEntitlements/cesi-585927251"
},
"serviceDefinition": {
"canonicalLink": "/itas/a517289/myservices/api/v1/serviceDefinitions/502579309",
"id": "502579309",
"name": "Exadata" // The customer is entitled to use the Exadata Service
},
...
"canonicalLink": "/itas/a517289/myservices/api/v1/serviceInstances/csi-585928949"
}
... // More Service Entitlements could be displayed
],
"canonicalLink": "/itas/<domain>/myservices/api/v1/serviceEntitlements",
"hasMore": false,
"limit": 25,
"offset": 0
}