Comment résoudre les erreurs courantes lors de l'utilisation de l'option OEM_AGENT avec Amazon RDS for Oracle ?

Dernière mise à jour : 05/11/2021

J'ai une instance de base de données Amazon Relational Database Service (Amazon RDS) qui exécute Oracle. Je reçois un message d'erreur lorsque j'essaie d'utiliser l'option OEM_AGENT avec mon instance de base de données. Comment puis-je dépanner et résoudre les erreurs courantes lors de l'utilisation de l'option OEM_AGENT ?

Brève description

Amazon RDS prend en charge Oracle Enterprise Manager (OEM) Management Agent grâce à l'option OEM_AGENT. Vous pouvez recevoir l'une des erreurs décrites dans cet article lorsque vous utilisez l'option OEM_AGENT avec votre instance de base de données Amazon RDS for Oracle.

Remarque : avant de passer aux étapes de dépannage, exécutez les prévérifications suivantes sur votre instance de base de données :

1.    Vérifiez l'état du groupe d'options après y avoir ajouté l'option OEM_AGENT et appliqué l'option à l'instance de bases de données en exécutant la commande AWS Command Line Interface (AWS CLI) suivante :

aws rds describe-db-instances --db-instance-identifier <db-instance-name> --query 'DBInstances[*].[Engine,DBInstanceStatus,OptionGroupMemberships]'

Remarque : en cas d'erreurs lors de l'exécution des commandes AWS CLI, vérifiez que vous utilisez la version la plus récente de l'AWS CLI.

Vérifiez la sortie pour vous assurer que l'état du groupe d'options est synchronisé. Si l'état du groupe d'options est synchronisé, vous obtenez la sortie suivante :

[
    [
        "oracle-ee",
        "available",
        [
            {
                "OptionGroupName": "custom-oracle-option",
                "Status": "in-sync"
            }
        ]
    ]
]

Si l'état du groupe d'options est INVALID, l'OEM_AGENT n'est pas installé correctement en raison de problèmes liés à la configuration réseau et à d'autres prérequis.

Vous pouvez vérifier l'état d'installation de l'option OEM_AGENT en consultant la section Events (Événements) de votre instance de base de données Amazon RDS depuis la console de gestion AWS. Vous pouvez également utiliser la commande describe-events de l'AWS CLI.

Si les événements indiquent un problème lors de l'installation de l'option OEM_AGENT ou de la configuration réseau, assurez-vous que les prérequis suivants sont respectés.

2.    Vérifiez la configuration réseau de votre instance de base de données. Le groupe de sécurité de votre instance de base de données doit permettre à OMS_HOST d'écouter le port OEM_AGENT (3872par défaut) et le port RDS (1521par défaut).

3.    Exécutez un test telnet du serveur Oracle Management Service (OMS) vers votre instance de base de données sur le port de l'agent OEM et le port de base de données pour vérifier la connectivité.

4.    Vérifiez les configurations réseau, y compris les listes de contrôle d'accès (ACL) réseau et les tables de routage. La vérification des configurations exclut la possibilité d'avoir des bloqueurs ou un refus explicite.

5.    Assurez-vous que le pare-feu entre OMS et RDS autorise le trafic sur le port d'écoute de base de données et le port OEM_AGENT.

Au terme de ces vérifications, vérifiez si le téléchargement OEM_AGENT fonctionne. Pour plus d'informations sur les prérequis OEM_AGENT, veuillez consulter Oracle Management Agent pour Enterprise Manager Cloud Control.

Solution

Pour résoudre les problèmes liés à l'utilisation de l'option OEM_AGENT avec votre instance RDS for Oracle, consultez les journaux d'OEM_AGENT après les avoir exporté vers Amazon CloudWatch. Pour plus d'informations, veuillez consulter Publication des journaux Oracle dans Amazon CloudWatch Logs.

L'instance de base de données n'apparaît pas dans la détection automatique des cibles sur la console OEM.

Ce problème se produit lorsque le serveur OMS ne peut pas se connecter à l'hôte sous-jacent via SSH. Cette connexion représente un prérequis au niveau du système d'exploitation pour que la détection automatique fonctionne correctement. Contrairement à la détection automatique basée sur l'assistant qui est utilisée lors de l'ajout d'une instance de base de données Oracle cible, vous devez ajouter manuellement votre instance de base de données Oracle en tant que cible. Pour plus d'informations sur les limitations de l'agent de gestion, veuillez consulter Limitations pour l'agent de gestion.

Erreur : impossible d'installer Oracle OEM_AGENT, car le mot de passe de l'agent est incorrect ou a expiré

Assurez-vous que le mot de passe de l'agent est correct et qu'il n'a pas expiré. Sur le serveur OEM, vous pouvez modifier le mot de passe d'enregistrement de l'agent existant ou créer un nouveau mot de passe.

Erreur : impossible d'installer Oracle OEM_AGENT, car l'instance de base de données ne peut pas atteindre l'hôte OMS.

Vous recevez ce message d'erreur lorsque l'installation de l'agent OEM_AGENT échoue, car l'hôte/port OMS ne peut pas être atteint à partir de l'hôte RDS. Pour résoudre cette erreur, vérifiez si l'hôte OMS est accessible depuis votre instance de bases de données.

Pour valider la connectivité réseau entre le serveur OMS et OEM_AGENT, testez la connexion entre l'instance RDS for Oracle et le serveur OMS. Pour ce faire, vous pouvez tirer parti des listes de contrôle d'accès (ACL) et des packages UTL_TCP.

  • Utilisez le package DBMS_NETWORK_ACL_ADMIN qui fournit l'interface pour administrer l'ACL réseau.
  • Utilisez UTL_TCP.CONNECTION. Il s'agit d'un type d'enregistrement PL/SQL utilisé pour représenter une connexion TCP/IP.

Vous pouvez également procéder comme suit :

1.    Lancez une instance Amazon Elastic Compute Cloud (Amazon EC2) avec la même configuration réseau (SG/ACL) que votre instance de base de données.

2.    Exécutez une commande telnet depuis l'instance Amazon EC2 vers l'hôte OMS sur le port 4903 :

telnet OMS_HOST 4903

3.    Valider la connectivité en exécutant un test telnet dans votre hôte OEM depuis le serveur OMS vers votre instance de base de données :

telnet RDS-instance-endpoint 1521 (RDS default port)

4.    Vérifiez si l'hôte RDS est capable de résoudre le nom d'hôte OMS en une adresse IP :

SQL> SELECT UTL_INADDR.get_host_address('OMS_Host_Name') FROM dual;

5.    Exécutez un traceroute de TCP pour déterminer où le trafic est bloqué.

Erreur : vous avez installé l'option OEM_AGENT sur votre instance de base de données. Il est possible que votre groupe de sécurité ne soit pas configuré correctement.

Même si votre installation se termine correctement, le groupe de sécurité RDS associé à votre instance de base de données peut manquer de configurations pour permettre la communication entre l'hôte OMS et l'instance de base de données.

Pour résoudre cette erreur, vérifiez que le groupe de sécurité de l'agent autorise le trafic entrant et que votre hôte OMS appartient à un groupe de sécurité qui a accès au port de l'agent. Pour plus d'informations, veuillez consulter Oracle Management Agent pour Enterprise Manager Cloud Control.

Erreur : impossible d'installer Oracle OEM_AGENT, car la version x.x.x.x de l'hôte OMS n'est pas compatible avec la version x.x.x.x de l'agent.

Vous recevez ce message d'erreur s'il y a un problème de compatibilité entre votre version OEM_AGENT et la version de l'hôte OMS. Actuellement, OEM_AGENT s'intègre à OMS lorsque les deux composants sont compatibles. Pour résoudre cette erreur, choisissez des versions compatibles pour l'hôte OMS et OEM_AGENT. Pour plus d'informations sur la révision de la matrice de compatibilité, veuillez consulter Conditions préalables pour Management Agent.

Erreur : votre hôte OMS utilise un certificat tiers non approuvé

Vous recevez ce message d'erreur lorsque vous installez correctement l'option OEM_AGENT, mais que votre hôte OMS utilise un certificat tiers qui n'est pas approuvé. Configurez votre hôte OMS avec les certifications d'approbation exigées de votre tiers.

Erreur : l'option OEM_AGENT ne dispose pas des paramètres d'option requis (Service : AmazonRDS ; Code d'état : 400 ; Code d'erreur : InvalidParameterValue ;

Vous recevez ce message d'erreur lorsque OEM_AGENT ne dispose pas de l'un des paramètres requis, et que vous devez indiquer ce paramètre. Pour plus d'informations sur les paramètres requis pour OEM_AGENT, veuillez consulter Paramètres de l'option Management Agent.

Erreur : état du rythme cardiaque : OMS a répondu illégalement [ERREUR – Impossible de mettre à jour les métadonnées du type de cible]

Vous recevez cette erreur lorsque l'hôte OMS est remplacé après que l'option OEM_AGENT est attachée à Amazon RDS.

1.    Effacez l'état de l'agent ou redémarrez l'agent OEM_AGENT en suivant les étapes décrites dans Exécution des tâches de base de données avec l'agent de gestion.

2.    Rétablissez votre connexion avec l'hôte OMS.

3.    Vérifiez les problèmes de compatibilité avec la version OMS et la version OEM_AGENT. Exécutez la requête suivante pour vérifier si la table répertorie la version OEM_AGENT utilisée dans le groupe d'options :

select type_meta_ver from sysman.mgmt_target_type_versions where target_type = 'oracle_emd';

4.    Si la sortie mgmt_target_type_versions ne contient pas la version OEM_AGENT utilisée dans le groupe d'options, installez la version OEM_AGENT répertoriée dans la sortie de la commande.

Cette erreur peut également indiquer que les correctifs et plugins latéraux OMS requis sont manquants. Assurez-vous que OMS est correctement configuré et que tous les correctifs requis sont appliqués.

Si l'agent est bloqué, procédez comme suit dans la console OEM pour resynchroniser l'agent :

  1. Connectez-vous à la console Cloud Control.
  2. Sélectionnez Setup (Configuration), Manage Cloud Control (Gérer Cloud Control), puis Agents.
  3. Sélectionnez l'agent que vous souhaitez resynchroniser.
  4. Dans la liste déroulante Agent, sélectionnez Resynchronization... (Resynchronisation...).
  5. Sélectionnez Unblock agent on successful completion of agent resynchronization (Débloquer l'agent une fois la resynchronisation de l'agent terminée).
  6. Cliquez sur Continue (Continuer).
    L'opération de resynchronisation est soumise en tant que tâche.
  7. Vérifiez l'état de la tâche de resynchronisation en choisissant le lien du nom de la tâche.

Une fois la tâche effectuée, vérifiez l'état de l'agent que vous avez resynchronisé ainsi que toutes les cibles surveillées.

Remarque : le serveur DNS doit fonctionner en continu pour que la surveillance OEM fonctionne efficacement. L'agent émet une pulsation et envoie les mises à jour d'état vers l'hôte OMS. Si l'hôte OMS n'est pas joignable depuis l'agent pendant une période prolongée, OMS peut considérer que l'agent et la base de données sont hors service. Par conséquent, assurez-vous que le serveur DNS fonctionne.

Pour que Oracle Management Agent charge l'OMS qui lui est associé, exécutez la requête suivante. L'exécution de cette requête équivaut à l'exécution de la commande emctl upload agent.

SELECT rdsadmin.rdsadmin_oem_agent_tasks.upload_oem_agent() as TASK_ID from DUAL;

Pour redémarrer l'agent OEM après avoir effacé l'état de l'agent, exécutez la requête suivante :

SELECT rdsadmin.rdsadmin_oem_agent_tasks.restart_oem_agent() as TASK_ID from DUAL;

Vous pouvez déployer uniquement Oracle Management Agent 13c version 4 (13.4.0.0.0) à l'aide d'Oracle Enterprise Manager Cloud Control 13c version 4 (13.4.0.0.0). Le nouveau déploiement des anciennes versions d'Oracle Management Agent (13.2 et 13.3) n'est pas pris en charge après la mise à niveau d'OMS vers la version 4 13c. Pour plus d'informations, veuillez consulter Before you begin installing an Enterprise Manager System.

Erreur : impossible d'installer l'option OEM_AGENT, car le port de l'agent est en conflit avec le port OMS. Mettez à jour les paramètres de l'option et réessayez

Vous recevez ce message d'erreur, car la configuration de OEM_AGENT n'est pas la bonne et ne lui permet pas de fonctionner correctement. Par exemple, vous avez peut-être spécifié le même numéro de port pour le port OMS et le port OEM_AGENT. Pour résoudre ce problème, modifiez le port OMS ou le numéro de port OEM_AGENT.

Consultez les paramètres d'option de l'agent de gestion suivants :

  • AGENT_PORT – Ce port sur l'instance de base de données écoute l'hôte OMS. La valeur par défaut est 3872. Votre hôte OMS doit appartenir à un groupe de sécurité qui a accès à ce port.
  • OMS_PORT – Ce port HTTPS sur l'hôte OMS écoute l'agent de gestion.
    Pour trouver le port de téléchargement HTTPS, connectez-vous à l'hôte OMS et exécutez la commande suivante :
emctl status oms -details

Erreur : impossible d'installer Oracle OEM_AGENT, car votre instance de base de données ne dispose pas d'un espace de stockage suffisant. Confirmez que le groupe d'options est pris en charge sur votre classe d'instance de base de données et votre configuration. Si c'est le cas, vérifiez tous les paramètres du groupe d'options et réessayez.

Vous recevez ce message d'erreur lorsque l'espace de stockage alloué pour votre instance de base de données n'est pas suffisant selon les prérequis OEM_AGENT. Pour plus d'informations, veuillez consulter Conditions préalables pour Management Agent. Augmentez l'espace de stockage, puis réinstallez l'option OEM_AGENT.

Erreur : le système de fichiers / dispose de X.XX % d'espace disponible

Cette erreur s'affiche en raison d'une limitation de l'utilisation de l'option OEM_AGENT avec une instance RDS for Oracle. Les métriques de l'hôte et la liste des processus peuvent ne pas refléter l'état réel du système. Par conséquent, évitez d'utiliser OEM pour surveiller le système de fichiers racine ou le système de fichiers du point de montage. Pour plus d'informations, veuillez consulter Limitations pour Management Agent.

Le système de fichiers racine d'une instance Amazon RDS est géré par le système d'automatisation interne. Ce système d'automatisation surveille le système de fichiers racine à intervalles réguliers pour s'assurer que celui-ci dispose d'un espace suffisant. Si un stockage insuffisant est détecté, le système d'automatisation ajoute suffisamment d'espace au système de fichiers racine. Étant donné que le système d'automatisation gère l'espace dans le système de fichiers racine, vous pouvez ignorer cette erreur.