Migrazione di un sistema DB Exadata al nuovo modello di risorsa

Utilizzare le configurazioni Resource Manager e Terraform per eseguire la migrazione di un sistema DB Exadata al nuovo modello di risorsa Exadata.

La generazione X8M dell'hardware Exadata introduce un nuovo modello di risorsa che sostituisce il sistema DB Exadata. Il nuovo modello di risorse utilizza nuove API per eseguire il provisioning e la gestione delle risorse. Le API del sistema DB esistenti per Exadata non saranno più valide da Oracle Cloud Infrastructure per tutti gli utenti dopo la notifica scritta e un periodo di transizione che ti consentirà di passare alle nuove interfacce API e console.

Se si dispone di sistemi DB Exadata esistenti in Oracle Cloud Infrastructure, è possibile utilizzare Terraform per passare al nuovo modello di risorsa e alle nuove API.

Attenzione

Il passaggio di un sistema DB Exadata al nuovo modello di risorsa e le API non possono essere annullate. Se disponi di un'automazione per il tuo sistema che utilizza le API del sistema DB, potresti dover aggiornare le tue applicazioni prima di passare.

Passaggio al nuovo modello di risorsa:

  • Non influisce sui database o sulle connessioni client Exadata esistenti del sistema DB
  • Non modifica l'hardware o la famiglia di forme di base dell'istanza di Exadata Cloud Service
  • Non influirà sui sistemi DB Bare Metal e virtuali

Dopo la conversione del sistema DB, saranno disponibili due nuove risorse al posto della risorsa del sistema DB: una risorsa dell'infrastruttura Exadata cloud e una risorsa cluster VM cloud.

Conseguenze previste del passaggio

  • La nuova risorsa dell'infrastruttura Exadata cloud e il cluster VM cloud vengono creati nello stesso compartimento del sistema DB che sostituiscono
  • La nuova risorsa dell'infrastruttura Exadata cloud e il cluster VM cloud utilizzano la stessa configurazione di rete del sistema DB che sostituiscono
  • Dopo il passaggio, non è possibile eseguire operazioni sulla risorsa del sistema DB Exadata precedente
  • Il passaggio è permanente e la modifica non può essere annullata
  • I sistemi di base X6, X7, X8 ed Exadata conservano le forme fisse dopo lo switch e non possono essere espansi

Per ulteriori informazioni, consulta Exadata Database Service on Dedicated Infrastructure.

Per eseguire la migrazione di un sistema DB Exadata

Questi passi di migrazione utilizzano l'esempio riportato di seguito, che mostra un'istanza di Exadata Cloud Service esistente che utilizza il vecchio modello di risorsa del sistema DB:

resource "oci_database_db_system" "test_db_system" {
  availability_domain = data.oci_identity_availability_domain.ad.name
  compartment_id      = var.compartment_ocid
  cpu_core_count      = var.cpu_core_count
  database_edition    = var.db_edition
  time_zone           = var.time_zone

  db_home {
    database {
      admin_password = var.db_admin_password
      db_name        = "TFdb1Exa"
      character_set  = var.character_set
      ncharacter_set = var.n_character_set
      db_workload    = var.db_workload
      pdb_name       = var.pdb_name

      db_backup_config {
        auto_backup_enabled = false
      }
    }

    db_version   = var.db_version
    display_name = "MyTFDBHome1Exa"
  }

  maintenance_window_details {
    preference = "CUSTOM_PREFERENCE"

    days_of_week {
      name = "MONDAY"
    }

    hours_of_day       = ["4"]
    lead_time_in_weeks = 2

    months {
      name = "APRIL"
    }

    weeks_of_month = ["2"]
  }

  disk_redundancy  = var.db_disk_redundancy
  shape            = var.db_system_shape
  subnet_id        = oci_core_subnet.subnet.id
  backup_subnet_id = oci_core_subnet.subnet_backup.id
  ssh_public_keys  = [var.ssh_public_key]
  display_name     = var.db_system_display_name
  sparse_diskgroup = var.sparse_diskgroup

  hostname                = var.hostname
  data_storage_percentage = var.data_storage_percentage

  #data_storage_size_in_gb = var.data_storage_size_in_gb
  license_model          = var.license_model
  node_count             = data.oci_database_db_system_shapes.test_db_system_shapes.db_system_shapes[0]["minimum_node_count"]
  backup_network_nsg_ids = [oci_core_network_security_group.test_network_security_group.id]
  nsg_ids                = [oci_core_network_security_group.test_network_security_group_backup.id, oci_core_network_security_group.test_network_security_group.id]
}

Per eseguire la migrazione del sistema al nuovo modello di risorse, creare innanzitutto la risorsa oci_database_migration.

// This is 1 time action to migrate test_db_system into db ExaCS
// and the test_db_system will become `Migrated`
resource "oci_database_migration" "test_migration" {
	#Required
	db_system_id = "${oci_database_db_system.test_db_system.id}"
}

Il provisioning della risorsa oci_database_migration crea due nuove risorse: oci_database_cloud_exadata_infrastructure e oci_database_cloud_vm_cluster.

È possibile ottenere gli OCID di queste due risorse dalla risorsa oci_database_migration:

output "cloud_exadata_infrastructure_id" {
  value = oci_database_migration.test_migration.cloud_exadata_infrastructure_id
}

output "cloud_vm_cluster_id" {
  value = oci_database_migration.test_migration.cloud_vm_cluster_id
}

Creare una configurazione Terraform per le due nuove risorse:

resource "oci_database_cloud_exadata_infrastructure" "test_cloud_exadata_infrastructure"{}

resource "oci_database_cloud_vm_cluster" "test_cloud_vm_cluster" {}

Eseguire quindi il comando di importazione Terraform:

terraform import oci_database_cloud_exadata_infrastructure.test_cloud_exadata_infrastructure <cloud_exadata_infrastructure_id>
terraform import oci_database_cloud_vm_cluster.test_cloud_vm_cluster <cloud_vm_cluster_id>

Terraform ora gestisce le due nuove risorse. Dopo il passaggio al nuovo modello di risorse Exadata, rimuovere la vecchia configurazione oci_database_db_system.

Suggerimento

Dopo la migrazione, è possibile utilizzare la ricerca automatica delle risorse per creare un file completo di configurazione e stato per l'importazione di queste due nuove risorse.