Monitorare un database con Enterprise Manager Database Control

In questo articolo viene descritto come impostare una console di Enterprise Manager Database Control per monitorare il database.

Per impostazione predefinita, la console di Enterprise Manager Database Control non è abilitata nei database della versione 11.2.0.4. È possibile abilitare la console:

La porta 1158 è la porta predefinita utilizzata per la prima console abilitata nel sistema DB, ma ogni console aggiuntiva abilitata nel sistema DB avrà una porta diversa.

Nota: per un database versione 11.2.0.4 in un sistema DB RAC a 2 nodi, vedere Abilitare la console per un database versione 11.2.0.4 in un sistema DB a più nodi.

Criterio IAM necessario

Alcune delle procedure riportate di seguito richiedono l'autorizzazione per creare o aggiornare liste di sicurezza. Per ulteriori informazioni sui criteri delle liste di sicurezza, vedere Elenchi di sicurezza.

Determinare la porta per Enterprise Manager Database Control Console

  1. SSH al sistema DB, eseguire il login come opc e sudo all'utente oracle.

    sudo su - oracle
    . oraenv
     <provide the database SID at the prompt>
  2. Utilizzare il comando seguente per ottenere il numero di porta.

    emctl status dbconsole

    La porta si trova nell'URL, come mostrato nell'output seguente:

    Oracle Enterprise Manager 11g Database Control Release 11.2.0.4.0
    Copyright (c) 1996, 2013 Oracle Corporation.  All rights reserved.
    https://dbprod:1158/em/console/aboutApplication
    Oracle Enterprise Manager 11g is running.
    ------------------------------------------------------------------
    Logs are generated in directory /u01/app/oracle/product/11.2.0.4/dbhome_2/dbprod_db11/sysman/log
  3. Aprire la porta della console come descritto in Apri porte nel sistema DB.
  4. Aggiornare la lista di sicurezza per la porta della console come descritto in Aggiornare la lista di sicurezza per il sistema DB.

Connettersi a Enterprise Manager Database Control Console

Dopo aver abilitato la console e aver aperto la porta nella lista di sicurezza e in iptables, è possibile connettersi come indicato di seguito.

  1. Da un browser Web, connettersi alla console utilizzando il seguente formato URL:

    https://<ip_address>:<port>/em

    Ad esempio, https://129.145.0.164:1158/em

    Utilizzare l'indirizzo IP privato o pubblico del sistema DB in base alla configurazione di rete.

    Utilizza l'indirizzo IP privato per connetterti al sistema dalla tua rete on premise o dalla rete cloud virtuale (VCN). Ciò include la connessione da un host situato in locale che si connette tramite una VPN o FastConnect alla tua VCN o da un altro host nella stessa VCN. Utilizza l'indirizzo IP pubblico per connetterti al sistema dall'esterno del cloud (senza VPN). È possibile trovare gli indirizzi IP nella console come indicato di seguito.

    • Nella pagina Dettagli sistema DB, in Risorse, fare clic su Nodi.
    • Nelle colonne della tabella vengono visualizzati l'indirizzo IP pubblico e l'indirizzo IP privato e nome DNS.
  2. Verrà visualizzata una pagina di login ed è possibile eseguire il login con qualsiasi credenziale di database valida.

Per ulteriori informazioni su Enterprise Manager Database Control, vedere l'introduzione a Oracle Enterprise Manager Database Control.

Abilitare la console per un database versione 11.2.0.4 in un sistema DB a più nodi

Per abilitare la console per un database versione 11.2.0.4 in un sistema DB a più nodi sono necessari alcuni passi aggiuntivi.

Configurare l'equivalenza SSH tra i due nodi

Si creeranno chiavi SSH su ciascun nodo e si copierà la chiave sull'altro nodo, in modo che ogni nodo disponga delle chiavi per entrambi i nodi. Nella procedura seguente vengono utilizzati i nomi di esempio node1 e node2.

  1. SSH a node1, eseguire il login come opc e sudo all'utente oracle.

    sudo su - oracle
  2. Creare una directory denominata .ssh, impostarne le autorizzazioni, creare una chiave RSA e aggiungere la chiave pubblica al file authorized_keys.

    mkdir .ssh
    chmod 755 .ssh
    ssh-keygen -t rsa
    cat id_rsa.pub > authorized_keys
  3. Ripetere i passi precedenti sull'altro nodo del cluster.

  4. In ciascun nodo aggiungere la chiave id_rsa.pub per il nodo altro al file authorized_keys.

    Al termine, è necessario visualizzare entrambe le chiavi in authorized_keys su ciascun nodo.

  5. In node1 creare il file known_hosts effettuando le operazioni riportate di seguito.

    • SSH a node1 e rispondere sì al prompt di autenticazione.
    • SSH a node2 e rispondere sì al prompt di autenticazione.
  6. In node2 creare il file known_hosts effettuando le operazioni riportate di seguito.

    • SSH a node2 e rispondere sì al prompt di autenticazione.
    • SSH a node1 e rispondere sì al prompt di autenticazione.
  7. In node1 verificare che l'equivalenza SSH sia ora configurata utilizzando il comando CVU (Cluster Verification Utility) riportato di seguito.

    cluvfy stage -pre crsinst -n all -verbose

Configurare la console

  1. In node1 creare un file denominato emca.rsp con le voci seguenti.

    DB_UNIQUE_NAME=<pdb_unique_name>
    SERVICE_NAME=<db_unique_name>.<db_domain>
    PORT=<scan listener port>
    LISTENER_OH=$GI_HOME
    SYS_PWD=<admin password>
    DBSNMP_PWD=<admin password>
    SYSMAN_PWD=<admin password>
    CLUSTER_NAME=<cluster name>     <=== to get the cluster name, run: $GI_HOME/bin/cemutlo -n
    ASM_OH=$GI_HOME
    ASM_SID=+ASM1
    ASM_PORT=<asm listener port>
    ASM_USER_NAME=ASMSNMP
    ASM_USER_PWD=<admin password>
  2. In node1, eseguire EMCA (Enterprise Manager Configuration Assistant) utilizzando il file emca.rsp come input.

    $ORACLE_HOME/bin/emca
        -config dbcontrol db
        -repos create
        -cluster
        -silent
        -respFile <location of response file above>
  3. In node2, configurare la console in modo che l'agente in node1 riporti alla console in node1 e l'agente in node2 riporti alla console in node2.

    $ORACLE_HOME/bin/emca
        -reconfig dbcontrol
        -silent
        -cluster
        -EM_NODE <node2 host>
        -EM_NODE_LIST <node2 host>
        -DB_UNIQUE_NAME <db_unique_name>
        -SERVICE_NAME <db_unique_name>.<db_domain>
  4. In ogni nodo, verificare che la console funzioni correttamente.

    export ORACLE_UNQNAME=<db_unique_name>
    emctl status agent

    Output:

    Oracle Enterprise Manager 11g Database Control Release 11.2.0.4.0
    Copyright (c) 1996, 2013 Oracle Corporation.  All rights reserved.
    ---------------------------------------------------------------
    Agent Version     : 10.2.0.4.5
    OMS Version       : 10.2.0.4.5
    Protocol Version  : 10.2.0.4.5
    Agent Home        : /u01/app/oracle/product/11.2.0.4/dbhome_x/<host>_<db_unique_name>
    Agent binaries    : /u01/app/oracle/product/11.2.0.4/dbhome_x
    Agent Process ID  : 26194
    Parent Process ID : 25835
    Agent URL         : https://<node host>:1831/emd/main
    Repository URL    : https://<node host>:5501/em/upload/
    Started at        : 2017-03-15 20:20:34
    Started by user   : oracle
    Last Reload       : 2017-03-15 20:27:00
    Last successful upload                       : 2017-03-15 21:06:36
    Total Megabytes of XML files uploaded so far :    22.25
    Number of XML files pending upload           :        0                       <=== should be zero
    Size of XML files pending upload(MB)         :     0.00
    Available disk space on upload filesystem    :    42.75%
    Data channel upload directory                : /u01/app/oracle/product/11.2.0.4/dbhome_x/<host>_<db_unique_name>/sysman/recv
    Last successful heartbeat to OMS             : 2017-03-15 21:08:45
    ---------------------------------------------------------------

Aggiorna lista di sicurezza e iptables

  1. In ciascun nodo modificare iptables per aprire la porta della console, come descritto in Apri porte nel sistema DB.

  2. Aggiornare la lista di sicurezza per la porta della console come descritto in Aggiornare la lista di sicurezza per il sistema DB.