Skip to main content
NetApp database solutions
Die deutsche Sprachversion wurde als Serviceleistung für Sie durch maschinelle Übersetzung erstellt. Bei eventuellen Unstimmigkeiten hat die englische Sprachversion Vorrang.

TR-4974: Oracle 19c im Standalone-Neustart auf AWS FSx/EC2 mit NFS/ASM

Beitragende kevin-hoke

Allen Cao, Niyaz Mohamed, NetApp

Diese Lösung bietet einen Überblick und Details zur Bereitstellung und zum Schutz von Oracle-Datenbanken im AWS FSx ONTAP Speicher und in der EC2-Recheninstanz mit NFS-Protokoll und Oracle-Datenbank, die in einem eigenständigen ReStart unter Verwendung von asm als Volume-Manager konfiguriert ist.

Zweck

ASM (Automatic Storage Management) ist ein beliebter Oracle-Speichervolume-Manager, der in vielen Oracle-Installationen eingesetzt wird. Es ist außerdem die von Oracle empfohlene Speicherverwaltungslösung. Es bietet eine Alternative zu herkömmlichen Volume-Managern und Dateisystemen. Seit Oracle Version 11g wird ASM mit einer Grid-Infrastruktur und nicht mit einer Datenbank gepackt. Um Oracle ASM für die Speicherverwaltung ohne RAC zu nutzen, müssen Sie daher die Oracle Grid-Infrastruktur auf einem eigenständigen Server installieren, auch als Oracle Restart bezeichnet. Dadurch wird die ansonsten einfachere Bereitstellung einer Oracle-Datenbank sicherlich komplexer. Wie der Name jedoch schon sagt, werden bei der Bereitstellung von Oracle im Neustartmodus alle fehlgeschlagenen Oracle-Dienste nach einem Hostneustart ohne Benutzereingriff neu gestartet, wodurch ein gewisses Maß an Hochverfügbarkeit bzw. HA-Funktionalität bereitgestellt wird.

Oracle ASM wird im Allgemeinen in FC- und iSCSI-Speicherprotokollen und LUNs als Rohspeichergeräte bereitgestellt. Allerdings wird die Konfiguration von ASM auf NFS-Protokoll und NFS-Dateisystem auch von Oracle unterstützt. In dieser Dokumentation zeigen wir, wie Sie eine Oracle 19c-Datenbank mit dem NFS-Protokoll und Oracle ASM in einer Amazon FSx ONTAP -Speicherumgebung mit EC2-Compute-Instances bereitstellen. Wir zeigen Ihnen außerdem, wie Sie den NetApp SnapCenter -Dienst über die NetApp BlueXP Konsole verwenden, um Ihre Oracle-Datenbank für Entwicklung/Test oder andere Anwendungsfälle für einen speichereffizienten Datenbankbetrieb in der AWS Public Cloud zu sichern, wiederherzustellen und zu klonen.

Diese Lösung ist für die folgenden Anwendungsfälle geeignet:

  • Oracle-Datenbankbereitstellung in Amazon FSx ONTAP Speicher und EC2-Recheninstanzen mit NFS/ASM

  • Testen und Validieren einer Oracle-Workload in der öffentlichen AWS-Cloud mit NFS/ASM

  • Testen und Validieren der in AWS bereitgestellten Neustartfunktionen der Oracle-Datenbank

Publikum

Diese Lösung ist für folgende Personen gedacht:

  • Ein DBA, der Oracle in einer öffentlichen AWS-Cloud mit NFS/ASM bereitstellen möchte.

  • Ein Datenbanklösungsarchitekt, der Oracle-Workloads in der öffentlichen AWS-Cloud testen möchte.

  • Der Speicheradministrator, der eine im AWS FSx-Speicher bereitgestellte Oracle-Datenbank bereitstellen und verwalten möchte.

  • Der Anwendungsbesitzer, der eine Oracle-Datenbank in AWS FSx/EC2 einrichten möchte.

Test- und Validierungsumgebung für Lösungen

Das Testen und Validieren dieser Lösung wurde in einer AWS FSx- und EC2-Umgebung durchgeführt, die möglicherweise nicht der endgültigen Bereitstellungsumgebung entspricht. Weitere Informationen finden Sie im Abschnitt Wichtige Faktoren für die Bereitstellungsüberlegungen .

Architektur

Dieses Bild bietet eine detaillierte Darstellung der Oracle-Bereitstellungskonfiguration in der öffentlichen AWS-Cloud mit iSCSI und ASM.

Hardware- und Softwarekomponenten

Hardware

FSx ONTAP Speicher

Aktuelle von AWS angebotene Version

Ein FSx HA-Cluster in derselben VPC und Verfügbarkeitszone

EC2-Instanz für Compute

t2.xlarge/4vCPU/16G

Zwei EC2 T2 xlarge EC2-Instanzen, eine als primärer DB-Server und die andere als Klon-DB-Server

Software

RedHat Linux

RHEL-8.6.0_HVM-20220503-x86_64-2-Hourly2-GP2

RedHat-Abonnement zum Testen bereitgestellt

Oracle Grid-Infrastruktur

Version 19.18

RU-Patch p34762026_190000_Linux-x86-64.zip angewendet

Oracle-Datenbank

Version 19.18

RU-Patch p34765931_190000_Linux-x86-64.zip angewendet

Oracle OPatch

Version 12.2.0.1.36

Neuester Patch p6880880_190000_Linux-x86-64.zip

SnapCenter -Dienst

Version

v2.3.1.2324

Wichtige Faktoren für die Bereitstellungsüberlegungen

  • EC2-Recheninstanzen. Bei diesen Tests und Validierungen haben wir einen AWS EC2 t2.xlarge-Instanztyp für die Oracle-Datenbank-Compute-Instanz verwendet. NetApp empfiehlt die Verwendung einer EC2-Instanz vom Typ M5 als Compute-Instanz für Oracle in der Produktionsbereitstellung, da diese für Datenbank-Workloads optimiert ist. Sie müssen die EC2-Instanz entsprechend der Anzahl der vCPUs und der RAM-Menge entsprechend den tatsächlichen Arbeitslastanforderungen dimensionieren.

  • FSx-Speicher-HA-Cluster, Bereitstellung in einer oder mehreren Zonen. Bei diesen Tests und Validierungen haben wir einen FSx HA-Cluster in einer einzelnen AWS-Verfügbarkeitszone bereitgestellt. Für die Produktionsbereitstellung empfiehlt NetApp die Bereitstellung eines FSx HA-Paares in zwei verschiedenen Verfügbarkeitszonen. Ein FSx HA-Cluster wird immer in einem HA-Paar bereitgestellt, das in einem Paar aktiv-passiver Dateisysteme synchron gespiegelt wird, um Redundanz auf Speicherebene bereitzustellen. Durch die Bereitstellung in mehreren Zonen wird die Hochverfügbarkeit im Falle eines Ausfalls in einer einzelnen AWS-Zone weiter verbessert.

  • Größenbestimmung des FSx-Speicherclusters. Ein Amazon FSx ONTAP Speicherdateisystem bietet bis zu 160.000 rohe SSD-IOPS, bis zu 4 GBps Durchsatz und eine maximale Kapazität von 192 TiB. Sie können die Größe des Clusters jedoch hinsichtlich der bereitgestellten IOPS, des Durchsatzes und des Speicherlimits (mindestens 1.024 GiB) basierend auf Ihren tatsächlichen Anforderungen zum Zeitpunkt der Bereitstellung anpassen. Die Kapazität kann dynamisch im laufenden Betrieb angepasst werden, ohne die Anwendungsverfügbarkeit zu beeinträchtigen.

  • Layout der Oracle-Daten und -Protokolle. In unseren Tests und Validierungen haben wir zwei ASM-Datenträgergruppen für Daten bzw. Protokolle bereitgestellt. Innerhalb der +DATA-ASM-Datenträgergruppe haben wir vier Datenträger in einem Daten-NFS-Dateisystem-Mount-Punkt bereitgestellt. Innerhalb der +LOGS-ASM-Datenträgergruppe haben wir zwei Datenträger in einem NFS-Dateisystem-Mount-Punkt für Protokolle bereitgestellt. Für die Bereitstellung großer Datenbanken können ASM-Datenträgergruppen erstellt werden, die sich über mehrere FSx-Dateisysteme erstrecken, wobei ASM-NFS-Datenträger über mehrere auf FSx-Dateisystemen verankerte NFS-Mount-Punkte verteilt werden. Dieses spezielle Setup ist darauf ausgelegt, einen Datenbankdurchsatz von über 4 GB/s und einen Roh-SSD-IOPS-Anforderungsumfang von 160.000 zu erfüllen.

  • dNFS-Konfiguration. dNFS ist in den Oracle-Kernel integriert und steigert die Leistung von Oracle-Datenbanken deutlich, wenn Oracle auf NFS-Speicher bereitgestellt wird. dNFS ist in der Oracle-Binärdatei enthalten, aber standardmäßig nicht aktiviert. Es sollte für jede Oracle-Datenbankbereitstellung auf NFS aktiviert werden. Für die Bereitstellung mehrerer FSx-Dateisysteme für große Datenbanken sollte der dNFS-Multipfad ordnungsgemäß konfiguriert werden.

  • Oracle ASM-Redundanzstufe, die für jede von Ihnen erstellte Oracle ASM-Datenträgergruppe verwendet werden soll. Da FSx den Speicher bereits auf der FSx-Clusterebene spiegelt, sollten Sie ONLY Verwenden Sie externe Redundanz. Dies bedeutet, dass die Option Oracle ASM nicht erlaubt, den Inhalt der Datenträgergruppe zu spiegeln. Dies ist besonders wichtig, da NFS für die Datenspeicherung in Oracle-Datenbanken die HARD NFS-Mount-Option erfordert, die für die Spiegelung von ASM-Inhalten auf Oracle-Ebene NICHT wünschenswert ist.

  • Datenbanksicherung. NetApp bietet eine SaaS-Version des SnapCenter software Softwaredienstes zum Sichern, Wiederherstellen und Klonen von Datenbanken in der Cloud, die über die NetApp BlueXP -Konsolen-UI verfügbar ist. NetApp empfiehlt die Implementierung eines solchen Dienstes, um eine schnelle (unter einer Minute) SnapShot-Sicherung, eine schnelle (wenige Minuten) Datenbankwiederherstellung und ein Datenbankklonen zu erreichen.

Lösungsbereitstellung

Der folgende Abschnitt enthält schrittweise Bereitstellungsverfahren.

Voraussetzungen für die Bereitstellung

Details

Für die Bereitstellung sind die folgenden Voraussetzungen erforderlich.

  1. Ein AWS-Konto wurde eingerichtet und die erforderlichen VPC- und Netzwerksegmente wurden innerhalb Ihres AWS-Kontos erstellt.

  2. Von der AWS EC2-Konsole aus müssen Sie zwei EC2-Linux-Instanzen bereitstellen, eine als primären Oracle-DB-Server und einen optionalen alternativen Klonziel-DB-Server. Weitere Einzelheiten zur Umgebungseinrichtung finden Sie im Architekturdiagramm im vorherigen Abschnitt. Überprüfen Sie auch die"Benutzerhandbuch für Linux-Instanzen" für weitere Informationen.

  3. Stellen Sie über die AWS EC2-Konsole Amazon FSx ONTAP -Speicher-HA-Cluster bereit, um die Oracle-Datenbank-Volumes zu hosten. Wenn Sie mit der Bereitstellung von FSx-Speicher nicht vertraut sind, lesen Sie die Dokumentation"Erstellen von FSx ONTAP Dateisystemen" für schrittweise Anleitungen.

  4. Die Schritte 2 und 3 können mit dem folgenden Terraform-Automatisierungstoolkit durchgeführt werden, das eine EC2-Instanz namens ora_01 und ein FSx-Dateisystem namens fsx_01 . Lesen Sie die Anweisung sorgfältig durch und ändern Sie die Variablen vor der Ausführung entsprechend Ihrer Umgebung.

    git clone https://github.com/NetApp-Automation/na_aws_fsx_ec2_deploy.git
Hinweis Stellen Sie sicher, dass Sie im Stammvolume der EC2-Instanz mindestens 50 GB zugewiesen haben, um ausreichend Speicherplatz für die Bereitstellung der Oracle-Installationsdateien zu haben.

EC2-Instance-Kernelkonfiguration

Details

Nachdem Sie die Voraussetzungen erfüllt haben, melden Sie sich als EC2-Benutzer bei der EC2-Instanz an und wechseln Sie mit Sudo zum Root-Benutzer, um den Linux-Kernel für die Oracle-Installation zu konfigurieren.

  1. Erstellen Sie ein Staging-Verzeichnis /tmp/archive Ordner und legen Sie die 777 Erlaubnis.

    mkdir /tmp/archive
    
    chmod 777 /tmp/archive
  2. Laden Sie die binären Oracle-Installationsdateien und andere erforderliche RPM-Dateien herunter und stellen Sie sie auf dem /tmp/archive Verzeichnis.

    In der folgenden Liste sind die Installationsdateien anzugeben, die in /tmp/archive auf der EC2-Instanz.

    [ec2-user@ip-172-30-15-58 ~]$ ls -l /tmp/archive
    total 10537316
    -rw-rw-r--. 1 ec2-user ec2-user      19112 Mar 21 15:57 compat-libcap1-1.10-7.el7.x86_64.rpm
    -rw-rw-r--  1 ec2-user ec2-user 3059705302 Mar 21 22:01 LINUX.X64_193000_db_home.zip
    -rw-rw-r--  1 ec2-user ec2-user 2889184573 Mar 21 21:09 LINUX.X64_193000_grid_home.zip
    -rw-rw-r--. 1 ec2-user ec2-user     589145 Mar 21 15:56 netapp_linux_unified_host_utilities-7-1.x86_64.rpm
    -rw-rw-r--. 1 ec2-user ec2-user      31828 Mar 21 15:55 oracle-database-preinstall-19c-1.0-2.el8.x86_64.rpm
    -rw-rw-r--  1 ec2-user ec2-user 2872741741 Mar 21 22:31 p34762026_190000_Linux-x86-64.zip
    -rw-rw-r--  1 ec2-user ec2-user 1843577895 Mar 21 22:32 p34765931_190000_Linux-x86-64.zip
    -rw-rw-r--  1 ec2-user ec2-user  124347218 Mar 21 22:33 p6880880_190000_Linux-x86-64.zip
    -rw-r--r--  1 ec2-user ec2-user     257136 Mar 22 16:25 policycoreutils-python-utils-2.9-9.el8.noarch.rpm
  3. Installieren Sie Oracle 19c Preinstall RPM, das die meisten Kernel-Konfigurationsanforderungen erfüllt.

    yum install /tmp/archive/oracle-database-preinstall-19c-1.0-2.el8.x86_64.rpm
  4. Laden Sie die fehlenden herunter und installieren Sie sie compat-libcap1 in Linux 8.

    yum install /tmp/archive/compat-libcap1-1.10-7.el7.x86_64.rpm
  5. Laden Sie von NetApp die NetApp Host-Dienstprogramme herunter und installieren Sie sie.

    yum install /tmp/archive/netapp_linux_unified_host_utilities-7-1.x86_64.rpm
  6. Installieren policycoreutils-python-utils , das in der EC2-Instanz nicht verfügbar ist.

    yum install /tmp/archive/policycoreutils-python-utils-2.9-9.el8.noarch.rpm
  7. Installieren Sie Open JDK Version 1.8.

    yum install java-1.8.0-openjdk.x86_64
  8. Installieren Sie nfs-utils.

    yum install nfs-utils
  9. Deaktivieren Sie transparente Hugepages im aktuellen System.

    echo never > /sys/kernel/mm/transparent_hugepage/enabled
    echo never > /sys/kernel/mm/transparent_hugepage/defrag

    Fügen Sie die folgenden Zeilen hinzu in /etc/rc.local deaktivieren transparent_hugepage nach dem Neustart:

      # Disable transparent hugepages
              if test -f /sys/kernel/mm/transparent_hugepage/enabled; then
                echo never > /sys/kernel/mm/transparent_hugepage/enabled
              fi
              if test -f /sys/kernel/mm/transparent_hugepage/defrag; then
                echo never > /sys/kernel/mm/transparent_hugepage/defrag
              fi
  10. Deaktivieren Sie Selinux, indem Sie SELINUX=enforcing Zu SELINUX=disabled . Sie müssen den Host neu starten, damit die Änderung wirksam wird.

    vi /etc/sysconfig/selinux
  11. Fügen Sie die folgenden Zeilen hinzu limit.conf um das Dateideskriptorlimit und die Stapelgröße ohne Anführungszeichen festzulegen " " .

    vi /etc/security/limits.conf
      "*               hard    nofile          65536"
      "*               soft    stack           10240"
  12. Fügen Sie der EC2-Instanz Swap-Speicherplatz hinzu, indem Sie dieser Anweisung folgen:"Wie ordne ich mithilfe einer Auslagerungsdatei Speicher zu, der als Auslagerungsspeicher in einer Amazon EC2-Instanz fungiert?" Die genaue Menge an hinzuzufügendem Speicherplatz hängt von der Größe des RAM ab und kann bis zu 16 GB betragen.

  13. Fügen Sie die ASM-Gruppe hinzu, die für die ASM-Sysasm-Gruppe verwendet werden soll

    groupadd asm
  14. Ändern Sie den Oracle-Benutzer, um ASM als sekundäre Gruppe hinzuzufügen (der Oracle-Benutzer sollte nach der RPM-Vorinstallation von Oracle erstellt worden sein).

    usermod -a -G asm oracle
  15. Starten Sie die EC2-Instance neu.

Bereitstellen und Exportieren von NFS-Volumes zum Mounten auf dem EC2-Instance-Host

Details

Stellen Sie drei Volumes über die Befehlszeile bereit, indem Sie sich per SSH als fsxadmin-Benutzer mit der FSx-Cluster-Verwaltungs-IP beim FSx-Cluster anmelden, um die Binär-, Daten- und Protokolldateien der Oracle-Datenbank zu hosten.

  1. Melden Sie sich über SSH als Benutzer fsxadmin beim FSx-Cluster an.

    ssh fsxadmin@172.30.15.53
  2. Führen Sie den folgenden Befehl aus, um ein Volume für die Oracle-Binärdatei zu erstellen.

    vol create -volume ora_01_biny -aggregate aggr1 -size 50G -state online  -type RW -junction-path /ora_01_biny -snapshot-policy none -tiering-policy snapshot-only
  3. Führen Sie den folgenden Befehl aus, um ein Volume für Oracle-Daten zu erstellen.

    vol create -volume ora_01_data -aggregate aggr1 -size 100G -state online  -type RW -junction-path /ora_01_data -snapshot-policy none -tiering-policy snapshot-only
  4. Führen Sie den folgenden Befehl aus, um ein Volume für Oracle-Protokolle zu erstellen.

    vol create -volume ora_01_logs -aggregate aggr1 -size 100G -state online  -type RW -junction-path /ora_01_logs -snapshot-policy none -tiering-policy snapshot-only
  5. Validieren Sie die erstellten DB-Volumes.

    vol show

    Es wird erwartet, dass Folgendes zurückkehrt:

    FsxId02ad7bf3476b741df::> vol show
      (vol show)
    FsxId06c3c8b2a7bd56458::> vol show
    Vserver   Volume       Aggregate    State      Type       Size  Available Used%
    --------- ------------ ------------ ---------- ---- ---------- ---------- -----
    svm_ora   ora_01_biny  aggr1        online     RW         50GB    47.50GB    0%
    svm_ora   ora_01_data  aggr1        online     RW        100GB    95.00GB    0%
    svm_ora   ora_01_logs  aggr1        online     RW        100GB    95.00GB    0%
    svm_ora   svm_ora_root aggr1        online     RW          1GB    972.1MB    0%
    4 entries were displayed.

Datenbankspeicherkonfiguration

Details

Importieren und richten Sie nun den FSx-Speicher für die Oracle-Grid-Infrastruktur und die Datenbankinstallation auf dem EC2-Instance-Host ein.

  1. Melden Sie sich per SSH als EC2-Benutzer mit Ihrem SSH-Schlüssel und der IP-Adresse der EC2-Instanz bei der EC2-Instanz an.

    ssh -i ora_01.pem ec2-user@172.30.15.58
  2. Erstellen Sie das Verzeichnis /u01, um das binäre Dateisystem von Oracle zu mounten

    sudo mkdir /u01
  3. Hängen Sie das Binärvolume ein in /u01 , geändert in Ihre FSx NFS-LIF-IP-Adresse. Wenn Sie den FSx-Cluster über das NetApp Automatisierungstoolkit bereitgestellt haben, wird die NFS-LIF-IP-Adresse des virtuellen FSx-Speicherservers am Ende der Ausführung der Ressourcenbereitstellung in der Ausgabe aufgeführt. Andernfalls kann es von der AWS FSx-Konsolen-Benutzeroberfläche abgerufen werden.

    sudo mount -t nfs 172.30.15.19:/ora_01_biny /u01 -o rw,bg,hard,vers=3,proto=tcp,timeo=600,rsize=65536,wsize=65536
  4. Ändern /u01 Der Besitz des Mount-Punkts liegt beim Oracle-Benutzer und der zugehörigen primären Gruppe.

    sudo chown oracle:oinstall /u01
  5. Erstellen Sie das Verzeichnis /oradata, um das Oracle-Datendateisystem zu mounten

    sudo mkdir /oradata
  6. Mounten Sie das Datenvolume auf /oradata , geändert in Ihre FSx NFS-LIF-IP-Adresse

    sudo mount -t nfs 172.30.15.19:/ora_01_data /oradata -o rw,bg,hard,vers=3,proto=tcp,timeo=600,rsize=65536,wsize=65536
  7. Ändern /oradata Der Besitz des Mount-Punkts liegt beim Oracle-Benutzer und der zugehörigen primären Gruppe.

    sudo chown oracle:oinstall /oradata
  8. Erstellen Sie das Verzeichnis /oralogs, um das Oracle-Protokolldateisystem zu mounten

    sudo mkdir /oralogs
  9. Hängen Sie das Protokollvolume ein in /oralogs , geändert in Ihre FSx NFS-LIF-IP-Adresse

    sudo mount -t nfs 172.30.15.19:/ora_01_logs /oralogs -o rw,bg,hard,vers=3,proto=tcp,timeo=600,rsize=65536,wsize=65536
  10. Ändern /oralogs Der Besitz des Mount-Punkts liegt beim Oracle-Benutzer und der zugehörigen primären Gruppe.

    sudo chown oracle:oinstall /oralogs
  11. Fügen Sie einen Einhängepunkt hinzu zu /etc/fstab .

    sudo vi /etc/fstab

    Fügen Sie die folgende Zeile hinzu.

    172.30.15.19:/ora_01_biny       /u01            nfs     rw,bg,hard,vers=3,proto=tcp,timeo=600,rsize=65536,wsize=65536   0       0
    172.30.15.19:/ora_01_data       /oradata        nfs     rw,bg,hard,vers=3,proto=tcp,timeo=600,rsize=65536,wsize=65536   0       0
    172.30.15.19:/ora_01_logs       /oralogs        nfs     rw,bg,hard,vers=3,proto=tcp,timeo=600,rsize=65536,wsize=65536   0       0
  12. sudo zum Oracle-Benutzer, erstellen Sie ASM-Ordner zum Speichern von ASM-Festplattendateien

    sudo su
    su - oracle
    mkdir /oradata/asm
    mkdir /oralogs/asm
  13. Erstellen Sie als Oracle-Benutzer ASM-Datenträgerdateien und ändern Sie die Anzahl so, dass sie mit der Blockgröße der Datenträgergröße übereinstimmt.

    dd if=/dev/zero of=/oradata/asm/nfs_data_disk01 bs=1M count=20480 oflag=direct
    dd if=/dev/zero of=/oradata/asm/nfs_data_disk02 bs=1M count=20480 oflag=direct
    dd if=/dev/zero of=/oradata/asm/nfs_data_disk03 bs=1M count=20480 oflag=direct
    dd if=/dev/zero of=/oradata/asm/nfs_data_disk04 bs=1M count=20480 oflag=direct
  14. Ändern Sie die Dateiberechtigung für die Datenträgerdatei auf 640

    chmod 640 /oradata/asm/*
  15. Erstellen Sie als Oracle-Benutzer ASM-Protokolldateien auf der Festplatte und ändern Sie die Anzahl, damit sie mit der Festplattengröße und der Blockgröße übereinstimmt.

    dd if=/dev/zero of=/oralogs/asm/nfs_logs_disk01 bs=1M count=40960 oflag=direct
    dd if=/dev/zero of=/oralogs/asm/nfs_logs_disk02 bs=1M count=40960 oflag=direct
  16. Ändern Sie die Berechtigung für Protokolldateien auf 640

    chmod 640 /oralogs/asm/*
  17. Starten Sie den EC2-Instance-Host neu.

Installation der Oracle Grid-Infrastruktur

Details
  1. Melden Sie sich als ec2-Benutzer über SSH bei der EC2-Instanz an und aktivieren Sie die Kennwortauthentifizierung, indem Sie die Kommentarzeichen entfernen. PasswordAuthentication yes und dann auskommentieren PasswordAuthentication no .

    sudo vi /etc/ssh/sshd_config
  2. Starten Sie den SSHD-Dienst neu.

    sudo systemctl restart sshd
  3. Setzen Sie das Oracle-Benutzerkennwort zurück.

    sudo passwd oracle
  4. Melden Sie sich als Oracle Restart-Softwarebesitzerbenutzer (Oracle) an. Erstellen Sie ein Oracle-Verzeichnis wie folgt:

    mkdir -p /u01/app/oracle
    mkdir -p /u01/app/oraInventory
  5. Ändern Sie die Verzeichnisberechtigungseinstellung.

    chmod -R 775 /u01/app
  6. Erstellen Sie ein Grid-Home-Verzeichnis und wechseln Sie dorthin.

    mkdir -p /u01/app/oracle/product/19.0.0/grid
    cd /u01/app/oracle/product/19.0.0/grid
  7. Entpacken Sie die Grid-Installationsdateien.

    unzip -q /tmp/archive/LINUX.X64_193000_grid_home.zip
  8. Löschen Sie im Grid Home die OPatch Verzeichnis.

    rm -rf OPatch
  9. Kopieren Sie vom Grid Home p6880880_190000_Linux-x86-64.zip zum grid_home und entpacken Sie es dann.

    cp /tmp/archive/p6880880_190000_Linux-x86-64.zip .
    unzip p6880880_190000_Linux-x86-64.zip
  10. Von Grid Home aus überarbeiten cv/admin/cvu_config , Kommentar entfernen und ersetzen CV_ASSUME_DISTID=OEL5 mit CV_ASSUME_DISTID=OL7 .

    vi cv/admin/cvu_config
  11. Bereiten Sie ein gridsetup.rsp Datei für die stille Installation und platzieren Sie die rsp-Datei im /tmp/archive Verzeichnis. Die RSP-Datei sollte die Abschnitte A, B und G mit den folgenden Informationen abdecken:

    INVENTORY_LOCATION=/u01/app/oraInventory
    oracle.install.option=HA_CONFIG
    ORACLE_BASE=/u01/app/oracle
    oracle.install.asm.OSDBA=dba
    oracle.install.asm.OSOPER=oper
    oracle.install.asm.OSASM=asm
    oracle.install.asm.SYSASMPassword="SetPWD"
    oracle.install.asm.diskGroup.name=DATA
    oracle.install.asm.diskGroup.redundancy=EXTERNAL
    oracle.install.asm.diskGroup.AUSize=4
    oracle.install.asm.diskGroup.disks=/oradata/asm/nfs_data_disk01,/oradata/asm/nfs_data_disk02,/oradata/asm/nfs_data_disk03,/oradata/asm/nfs_data_disk04
    oracle.install.asm.diskGroup.diskDiscoveryString=/oradata/asm/*,/oralogs/asm/*
    oracle.install.asm.monitorPassword="SetPWD"
    oracle.install.asm.configureAFD=false
  12. Melden Sie sich als Root-Benutzer bei der EC2-Instanz an.

  13. Installieren cvuqdisk-1.0.10-1.rpm .

    rpm -ivh /u01/app/oracle/product/19.0.0/grid/cv/rpm/cvuqdisk-1.0.10-1.rpm
  14. Melden Sie sich als Oracle-Benutzer bei der EC2-Instanz an und extrahieren Sie den Patch im /tmp/archive Ordner.

    unzip p34762026_190000_Linux-x86-64.zip
  15. Starten Sie vom Grid-Home /u01/app/oracle/product/19.0.0/grid als Oracle-Benutzer gridSetup.sh für die Installation der Netzinfrastruktur.

     ./gridSetup.sh -applyRU /tmp/archive/34762026/ -silent -responseFile /tmp/archive/gridsetup.rsp

    Ignorieren Sie die Warnungen zu falschen Gruppen für die Grid-Infrastruktur. Wir verwenden einen einzelnen Oracle-Benutzer zur Verwaltung von Oracle Restart, dies ist also zu erwarten.

  16. Führen Sie als Root-Benutzer die folgenden Skripts aus:

    /u01/app/oraInventory/orainstRoot.sh
    
    /u01/app/oracle/product/19.0.0/grid/root.sh
  17. Führen Sie als Oracle-Benutzer den folgenden Befehl aus, um die Konfiguration abzuschließen:

    /u01/app/oracle/product/19.0.0/grid/gridSetup.sh -executeConfigTools -responseFile /tmp/archive/gridsetup.rsp -silent
  18. Erstellen Sie als Oracle-Benutzer die LOGS-Datenträgergruppe.

    bin/asmca -silent -sysAsmPassword 'yourPWD' -asmsnmpPassword 'yourPWD' -createDiskGroup -diskGroupName LOGS -disk '/oralogs/asm/nfs_logs_disk*' -redundancy EXTERNAL -au_size 4
  19. Validieren Sie als Oracle-Benutzer die Grid-Dienste nach der Installationskonfiguration.

    bin/crsctl stat res -t
    +
    Name                Target  State        Server                   State details
    Local Resources
    ora.DATA.dg         ONLINE  ONLINE       ip-172-30-15-58          STABLE
    ora.LISTENER.lsnr   ONLINE  ONLINE       ip-172-30-15-58          STABLE
    ora.LOGS.dg         ONLINE  ONLINE       ip-172-30-15-58          STABLE
    ora.asm             ONLINE  ONLINE       ip-172-30-15-58          Started,STABLE
    ora.ons             OFFLINE OFFLINE      ip-172-30-15-58          STABLE
    Cluster Resources
    ora.cssd            ONLINE  ONLINE       ip-172-30-15-58          STABLE
    ora.diskmon         OFFLINE OFFLINE                               STABLE
    ora.driver.afd      ONLINE  ONLINE       ip-172-30-15-58          STABLE
    ora.evmd            ONLINE  ONLINE       ip-172-30-15-58          STABLE

Oracle-Datenbankinstallation

Details
  1. Melden Sie sich als Oracle-Benutzer an und heben Sie die $ORACLE_HOME Und $ORACLE_SID wenn es eingestellt ist.

    unset ORACLE_HOME
    unset ORACLE_SID
  2. Erstellen Sie das Oracle DB-Stammverzeichnis und wechseln Sie dorthin.

    mkdir /u01/app/oracle/product/19.0.0/db1
    cd /u01/app/oracle/product/19.0.0/db1
  3. Entpacken Sie die Oracle DB-Installationsdateien.

    unzip -q /tmp/archive/LINUX.X64_193000_db_home.zip
  4. Löschen Sie aus der Datenbank-Startseite die OPatch Verzeichnis.

    rm -rf OPatch
  5. Kopieren Sie von DB Home p6880880_190000_Linux-x86-64.zip Zu grid_home , und entpacken Sie es dann.

    cp /tmp/archive/p6880880_190000_Linux-x86-64.zip .
    unzip p6880880_190000_Linux-x86-64.zip
  6. Von DB Home aus überarbeiten cv/admin/cvu_config , und entfernen Sie die Kommentarzeichen und ersetzen Sie CV_ASSUME_DISTID=OEL5 mit CV_ASSUME_DISTID=OL7 .

    vi cv/admin/cvu_config
  7. Aus dem /tmp/archive Entpacken Sie den DB 19.18 RU-Patch.

    unzip p34765931_190000_Linux-x86-64.zip
  8. Bereiten Sie die DB-Silent-Install-RSP-Datei vor in /tmp/archive/dbinstall.rsp Verzeichnis mit den folgenden Werten:

    oracle.install.option=INSTALL_DB_SWONLY
    UNIX_GROUP_NAME=oinstall
    INVENTORY_LOCATION=/u01/app/oraInventory
    ORACLE_HOME=/u01/app/oracle/product/19.0.0/db1
    ORACLE_BASE=/u01/app/oracle
    oracle.install.db.InstallEdition=EE
    oracle.install.db.OSDBA_GROUP=dba
    oracle.install.db.OSOPER_GROUP=oper
    oracle.install.db.OSBACKUPDBA_GROUP=oper
    oracle.install.db.OSDGDBA_GROUP=dba
    oracle.install.db.OSKMDBA_GROUP=dba
    oracle.install.db.OSRACDBA_GROUP=dba
    oracle.install.db.rootconfig.executeRootScript=false
  9. Führen Sie vom DB1-Home-Server /u01/app/oracle/product/19.0.0/db1 aus eine stille, reine Software-DB-Installation aus.

     ./runInstaller -applyRU /tmp/archive/34765931/ -silent -ignorePrereqFailure -responseFile /tmp/archive/dbinstall.rsp
  10. Führen Sie als Root-Benutzer die root.sh Skript nach der reinen Softwareinstallation.

    /u01/app/oracle/product/19.0.0/db1/root.sh
  11. Erstellen Sie als Oracle-Benutzer die dbca.rsp Datei mit den folgenden Einträgen:

    gdbName=db1.demo.netapp.com
    sid=db1
    createAsContainerDatabase=true
    numberOfPDBs=3
    pdbName=db1_pdb
    useLocalUndoForPDBs=true
    pdbAdminPassword="yourPWD"
    templateName=General_Purpose.dbc
    sysPassword="yourPWD"
    systemPassword="yourPWD"
    dbsnmpPassword="yourPWD"
    storageType=ASM
    diskGroupName=DATA
    characterSet=AL32UTF8
    nationalCharacterSet=AL16UTF16
    listeners=LISTENER
    databaseType=MULTIPURPOSE
    automaticMemoryManagement=false
    totalMemory=8192
    Hinweis Legen Sie den Gesamtspeicher basierend auf dem verfügbaren Speicher im EC2-Instance-Host fest. Oracle verteilt 75 % der totalMemory zur DB-Instance SGA oder zum Puffercache.
  12. Starten Sie als Oracle-Benutzer die DB-Erstellung mit dbca.

    bin/dbca -silent -createDatabase -responseFile /tmp/archive/dbca.rsp
    
    output:
    Prepare for db operation
    7% complete
    Registering database with Oracle Restart
    11% complete
    Copying database files
    33% complete
    Creating and starting Oracle instance
    35% complete
    38% complete
    42% complete
    45% complete
    48% complete
    Completing Database Creation
    53% complete
    55% complete
    56% complete
    Creating Pluggable Databases
    60% complete
    64% complete
    69% complete
    78% complete
    Executing Post Configuration Actions
    100% complete
    Database creation complete. For details check the logfiles at:
     /u01/app/oracle/cfgtoollogs/dbca/db1.
    Database Information:
    Global Database Name:db1.demo.netapp.com
    System Identifier(SID):db1
    Look at the log file "/u01/app/oracle/cfgtoollogs/dbca/db1/db1.log" for further details.
  13. Validieren Sie als Oracle-Benutzer Oracle. Starten Sie die HA-Dienste nach der DB-Erstellung neu.

    [oracle@ip-172-30-15-58 db1]$ ../grid/bin/crsctl stat res -t
    --------------------------------------------------------------------------------
    Name           Target  State        Server                   State details
    --------------------------------------------------------------------------------
    Local Resources
    --------------------------------------------------------------------------------
    ora.DATA.dg
                   ONLINE  ONLINE       ip-172-30-15-58          STABLE
    ora.LISTENER.lsnr
                   ONLINE  ONLINE       ip-172-30-15-58          STABLE
    ora.LOGS.dg
                   ONLINE  ONLINE       ip-172-30-15-58          STABLE
    ora.asm
                   ONLINE  ONLINE       ip-172-30-15-58          Started,STABLE
    ora.ons
                   OFFLINE OFFLINE      ip-172-30-15-58          STABLE
    --------------------------------------------------------------------------------
    Cluster Resources
    --------------------------------------------------------------------------------
    ora.cssd
          1        ONLINE  ONLINE       ip-172-30-15-58          STABLE
    ora.db1.db
          1        ONLINE  ONLINE       ip-172-30-15-58          Open,HOME=/u01/app/o
                                                                 racle/product/19.0.0
                                                                 /db1,STABLE
    ora.diskmon
          1        OFFLINE OFFLINE                               STABLE
    ora.evmd
          1        ONLINE  ONLINE       ip-172-30-15-58          STABLE
    --------------------------------------------------------------------------------
    [oracle@ip-172-30-15-58 db1]$
  14. Legen Sie den Oracle-Benutzer fest .bash_profile .

    vi ~/.bash_profile
  15. Fügen Sie folgende Einträge hinzu:

    export ORACLE_HOME=/u01/app/oracle/product/19.0.0/db1
    export ORACLE_SID=db1
    export PATH=$PATH:$ORACLE_HOME/bin
    alias asm='export ORACLE_HOME=/u01/app/oracle/product/19.0.0/grid;export ORACLE_SID=+ASM;export PATH=$PATH:$ORACLE_HOME/bin'
  16. Validieren Sie die erstellte CDB/PDB.

    . ~/.bash_profile
    
    sqlplus / as sysdba
    
    SQL> select name, open_mode from v$database;
    
    NAME      OPEN_MODE
    
    DB1       READ WRITE
    
    SQL> select name from v$datafile;
    
    NAME
    
    +DATA/DB1/DATAFILE/system.256.1132176177
    +DATA/DB1/DATAFILE/sysaux.257.1132176221
    +DATA/DB1/DATAFILE/undotbs1.258.1132176247
    +DATA/DB1/86B637B62FE07A65E053F706E80A27CA/DATAFILE/system.265.1132177009
    +DATA/DB1/86B637B62FE07A65E053F706E80A27CA/DATAFILE/sysaux.266.1132177009
    +DATA/DB1/DATAFILE/users.259.1132176247
    +DATA/DB1/86B637B62FE07A65E053F706E80A27CA/DATAFILE/undotbs1.267.1132177009
    +DATA/DB1/F7852758DCD6B800E0533A0F1EAC1DC6/DATAFILE/system.271.1132177853
    +DATA/DB1/F7852758DCD6B800E0533A0F1EAC1DC6/DATAFILE/sysaux.272.1132177853
    +DATA/DB1/F7852758DCD6B800E0533A0F1EAC1DC6/DATAFILE/undotbs1.270.1132177853
    +DATA/DB1/F7852758DCD6B800E0533A0F1EAC1DC6/DATAFILE/users.274.1132177871
    
    NAME
    
    +DATA/DB1/F785288BBCD1BA78E0533A0F1EACCD6F/DATAFILE/system.276.1132177871
    +DATA/DB1/F785288BBCD1BA78E0533A0F1EACCD6F/DATAFILE/sysaux.277.1132177871
    +DATA/DB1/F785288BBCD1BA78E0533A0F1EACCD6F/DATAFILE/undotbs1.275.1132177871
    +DATA/DB1/F785288BBCD1BA78E0533A0F1EACCD6F/DATAFILE/users.279.1132177889
    +DATA/DB1/F78529A14DD8BB18E0533A0F1EACB8ED/DATAFILE/system.281.1132177889
    +DATA/DB1/F78529A14DD8BB18E0533A0F1EACB8ED/DATAFILE/sysaux.282.1132177889
    +DATA/DB1/F78529A14DD8BB18E0533A0F1EACB8ED/DATAFILE/undotbs1.280.1132177889
    +DATA/DB1/F78529A14DD8BB18E0533A0F1EACB8ED/DATAFILE/users.284.1132177907
    
    19 rows selected.
    
    SQL> show pdbs
    
        CON_ID CON_NAME                       OPEN MODE  RESTRICTED
    
             2 PDB$SEED                       READ ONLY  NO
             3 DB1_PDB1                       READ WRITE NO
             4 DB1_PDB2                       READ WRITE NO
             5 DB1_PDB3                       READ WRITE NO
    SQL>
  17. Wechseln Sie als Oracle-Benutzer zum Stammverzeichnis der Oracle-Datenbank /u01/app/oracle/product/19.0.0/db1 und aktivieren Sie dNFS

    cd /u01/app/oracle/product/19.0.0/db1
    
    mkdir rdbms/lib/odm
    
    cp lib/libnfsodm19.so rdbms/lib/odm/
  18. Konfigurieren Sie die Datei oranfstab in ORACLE_HOME

    vi $ORACLE_HOME/dbs/oranfstab
    
    add following entries:
    
    server: fsx_01
    local: 172.30.15.58 path: 172.30.15.19
    nfs_version: nfsv3
    export: /ora_01_biny mount: /u01
    export: /ora_01_data mount: /oradata
    export: /ora_01_logs mount: /oralogs
  19. Melden Sie sich als Oracle-Benutzer von SQLPlus aus bei der Datenbank an und legen Sie die Größe und den Speicherort der DB-Wiederherstellung auf die Datenträgergruppe +LOGS fest.

    . ~/.bash_profile
    
    sqlplus / as sysdba
    
    alter system set db_recovery_file_dest_size = 80G scope=both;
    
    alter system set db_recovery_file_dest = '+LOGS' scope=both;
  20. Aktivieren Sie den Archivprotokollmodus und starten Sie die Oracle DB-Instance neu

    shutdown immediate;
    
    startup mount;
    
    alter database archivelog;
    
    alter database open;
    
    alter system switch logfile;
  21. Überprüfen Sie den DB-Protokollmodus und dNFS nach dem Neustart der Instanz

    SQL> select name, log_mode from v$database;
    
    NAME      LOG_MODE
    --------- ------------
    DB1       ARCHIVELOG
    
    SQL> select svrname, dirname from v$dnfs_servers;
    
    SVRNAME
    --------------------------------------------------------------------------------
    DIRNAME
    --------------------------------------------------------------------------------
    fsx_01
    /ora_01_data
    
    fsx_01
    /ora_01_biny
    
    fsx_01
    /ora_01_logs
  22. Oracle ASM validieren

    [oracle@ip-172-30-15-58 db1]$ asm
    [oracle@ip-172-30-15-58 db1]$ sqlplus / as sysasm
    
    SQL*Plus: Release 19.0.0.0.0 - Production on Tue May 9 20:39:39 2023
    Version 19.18.0.0.0
    
    Copyright (c) 1982, 2022, Oracle.  All rights reserved.
    
    
    Connected to:
    Oracle Database 19c Enterprise Edition Release 19.0.0.0.0 - Production
    Version 19.18.0.0.0
    
    SQL> set lin 200
    SQL> col path form a30
    SQL> select name, path, header_status, mount_status, state from v$asm_disk;
    
    NAME                           PATH                           HEADER_STATU MOUNT_S STATE
    ------------------------------ ------------------------------ ------------ ------- --------
    DATA_0002                      /oradata/asm/nfs_data_disk01   MEMBER       CACHED  NORMAL
    DATA_0000                      /oradata/asm/nfs_data_disk02   MEMBER       CACHED  NORMAL
    DATA_0001                      /oradata/asm/nfs_data_disk03   MEMBER       CACHED  NORMAL
    DATA_0003                      /oradata/asm/nfs_data_disk04   MEMBER       CACHED  NORMAL
    LOGS_0000                      /oralogs/asm/nfs_logs_disk01   MEMBER       CACHED  NORMAL
    LOGS_0001                      /oralogs/asm/nfs_logs_disk02   MEMBER       CACHED  NORMAL
    
    6 rows selected.
    
    
    SQL> select name, state, ALLOCATION_UNIT_SIZE, TOTAL_MB, FREE_MB from v$asm_diskgroup;
    
    NAME                           STATE       ALLOCATION_UNIT_SIZE   TOTAL_MB    FREE_MB
    ------------------------------ ----------- -------------------- ---------- ----------
    DATA                           MOUNTED                  4194304      81920      73536
    LOGS                           MOUNTED                  4194304      81920      81640
    
    This completes Oracle 19c version 19.18 Restart deployment on an Amazon FSx ONTAP and EC2 compute instance with NFS/ASM. If desired, NetApp recommends relocating the Oracle control file and online log files to the +LOGS disk group.

Option zur automatisierten Bereitstellung

NetApp wird ein vollständig automatisiertes Toolkit zur Lösungsbereitstellung mit Ansible veröffentlichen, um die Implementierung dieser Lösung zu erleichtern. Bitte überprüfen Sie später die Verfügbarkeit des Toolkits. Nach der Veröffentlichung wird hier ein Link veröffentlicht.

Sichern, Wiederherstellen und Klonen von Oracle-Datenbanken mit SnapCenter Service

Derzeit wird die Oracle-Datenbank mit NFS- und ASM-Speicheroption nur vom herkömmlichen SnapCenter Server-UI-Tool unterstützt. Siehe"Hybrid Cloud-Datenbanklösungen mit SnapCenter" Weitere Informationen zum Sichern, Wiederherstellen und Klonen von Oracle-Datenbanken mit dem NetApp SnapCenter UI-Tool.