Transfert des données de surveillance des utilisateurs réels vers l'adresse de téléchargement de données Oracle Cloud Infrastructure

Vous pouvez transférer les données de surveillance des utilisateurs réels vers l'adresse de téléchargement de données Oracle Cloud Infrastructure en fonction de divers scénarios de déploiement.

Détermination du scénario de configuration de votre déploiement

  • Scénario 1 : si votre société accorde un accès Internet complet à tous les utilisateurs, les données de surveillance des utilisateurs réels sont envoyées à Application Performance Monitoring sans configuration spéciale ou proxy.
  • Scénario 2 : si votre société limite l'accès à Internet mais souhaite toujours envoyer toutes les données de surveillance des utilisateurs réels à Application Performance Monitoring, vous devez configurer votre pare-feu ou votre proxy existant de façon à autoriser l'envoi de demandes à Application Performance Monitoring. Reportez-vous à Transfert des données de surveillance des utilisateurs réels par l'intermédiaire d'un proxy.
  • Scénario 3 : si vous avez des exigences particulières en matière de sécurité ou d'administration, vous pouvez configurer un proxy inverse au sein de votre réseau qui transfert le trafic de manière plus contrôlée vers Application Performance Monitoring. Reportez-vous à Transfert des données de surveillance des utilisateurs réels par l'intermédiaire d'un proxy inverse.

Transfert des données de surveillance des utilisateurs réels par l'intermédiaire d'un proxy

Si les utilisateurs internes d'une application Web d'entreprise ont accès à cette application, mais pas à Internet en général, vous devez adapter les règles de proxy de façon à autoriser l'accès à l'adresse de téléchargement de données (window.apmrum.ociDataUploadEndpoint) pour tous les utilisateurs. De cette façon, vous pouvez envoyer les données de performances de la surveillance des utilisateurs réels à l'adresse de téléchargement de données, même si les utilisateurs n'y ont pas accès.

Pour plus d'informations sur l'adresse de téléchargement de données, reportez-vous à Déploiement de l'agent de navigateur APM avec votre application. La configuration d'un proxy est propre au fournisseur. Pour plus d'informations sur cette configuration, reportez-vous à la documentation du fournisseur du proxy.

Transfert des données de surveillance des utilisateurs réels par l'intermédiaire d'un proxy inverse

La technique du proxy inverse permet aux navigateurs de passer outre le pare-feu du client. Un proxy inverse agit comme une adresse au sein du réseau d'entreprise, qui transmet chaque demande à l'adresse de téléchargement de données et renvoie la réponse reçue à partir de cette dernière. Vous pouvez configurer un proxy inverse en procédant comme suit :

Configuration de l'agent de navigateur APM de façon à utiliser une autre adresse de téléchargement de données

L'agent de navigateur APM doit remplacer l'adresse de téléchargement de données par l'adresse locale du proxy inverse. Pour ce faire, configurez la propriété window.apmrum.ociDataUploadEndpoint. Pour utiliser un proxy inverse, vous avez besoin d'un certificat valide. D'autres informations à ce sujet sont fournies plus loin dans cette section.

Exemple de configuration du paramètre :
window.apmrum.ociDataUploadEndpoint='https://myproxy.example.com:4443'
Dans l'exemple ci-dessus, remplacez myproxy.example.com et le numéro de port 4443 par le nom d'hôte et le numéro de port de la machine sur laquelle le proxy inverse est installé. Une fois l'adresse de téléchargement de données mise à jour, redémarrez le serveur d'applications.

Configuration d'un proxy inverse

Vous pouvez configurer un proxy inverse à l'aide de n'importe quel outil de configuration de proxy inverse, tel que NGINX, Squid ou WebLogic ProxyPlugin. Toutefois, les instructions suivantes s'appliquent uniquement si vous utilisez Oracle HTTP Server (OHS).

Remarque

Si vous disposez d'une configuration OHS, ignorez les étapes 1 à 6. Si vous utilisez un certificat sécurisé, ignorez l'étape 7.
  1. Accédez à http://www.oracle.com/technetwork/middleware/webtier/downloads/index.html.

  2. Acceptez le contrat de licence.

  3. Faites défiler l'écran jusqu'à Oracle WebTier 12cR2 et Oracle HTTP Server 12.2.1.1.

  4. Sélectionnez Linux 64 bits et téléchargez le programme d'installation.

  5. Installez Oracle HTTP Server. Pour plus d'informations, reportez-vous à A propos de l'installation d'Oracle HTTP Server dans Installation et configuration d'Oracle HTTP Server.

    Remarque

    Le document ci-dessus suppose qu'OHS est installé à l'emplacement /Oracle.
  6. Démarrez nodemanager.

    # export DOMAIN_HOME=<WLS Domain home>
    # cd $DOMAIN_HOME/bin
    # nohup ./startNodeManager.sh > nm.out&
    Voici un exemple :
    # export DOMAIN_HOME="/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain"
    # cd $DOMAIN_HOME/bin
    # nohup ./startNodeManager.sh > nm.out&
  7. Ajoutez le certificat HTTP Server au portefeuille.

    1. Préparez le portefeuille :

      # export DOMAIN_HOME=<WLS Domain home>
      # cd $DOMAIN_HOME/config/fmwconfig/components/OHS/instances/ohs1/keystores
      # mkdir proxy
      # $DOMAIN_HOME/../../../oracle_common/bin/orapki wallet create -wallet . -auto_login_only

      Voici un exemple :

      # export DOMAIN_HOME=/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain
      # cd $DOMAIN_HOME/config/fmwconfig/components/OHS/instances/ohs1/keystores
      # mkdir proxy
      # $DOMAIN_HOME/../../../oracle_common/bin/orapki wallet create -wallet . -auto_login_only
    2. Obtenez les certificats et ajoutez-les au portefeuille :

      Méthode 1 :

      # echo -n | openssl s_client -connect <Data Upload Endpoint>:<port> | sed -ne '/-BEGIN CERTIFICATE-/,/-END CERTIFICATE-/p' > /tmp/proxy_certificate.cert

      Méthode 2 :

      1. Installez (ou mettez à jour) les certificats de l'autorité de certification :

        # yum update ca-certificates
      2. Divisez le fichier racine de package d'autorité de certification contenant tous les certificats en fichiers distincts. (orapki ne peut pas gérer de package.)

        # awk 'BEGIN {c=0;} /BEGIN CERT/{c++} { print > "cert." c ".pem"}' < /etc/pki/tls/certs/ca-bundle.crt
      3. Chargez les certificats individuels dans le portefeuille proxy OHS.

        # for i in `ls cert.*.pem`; do / Oracle/Middleware/Oracle_Home/oracle_common/bin/orapki wallet add -wallet . -cert $i -trusted_cert -auto_login_only; done
  8. Obtenez l'adresse ociDataUploadEndpoint. Pour plus d'informations, reportez-vous à Injection manuelle de l'agent de navigateur.

  9. Configurez le proxy inverse HTTPS avec Oracle HTTP Server.

    1. Dans un éditeur, ouvrez le fichier ssl.conf situé dans le dossier ohs1.

      # export DOMAIN_HOME=<WLS Domain home>
      DOMAIN_HOME/config/fmwconfig/components/OHS/instances/ohs1

      Voici un exemple :

      # export DOMAIN_HOME="/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain"
      # vi $DOMAIN_HOME/config/fmwconfig/components/OHS/instances/ohs1/ssl.conf
    2. Configurez le proxy inverse SSL dans une section de définition d'hôte virtuel existante.

      Voici un exemple :
      ...
      <VirtualHost *:4443>
        <IfModule ossl_module>
         #  SSL Engine Switch:
         #  Enable/Disable SSL for this virtual host.
         SSLEngine on
         SSLProxyEngine on
         SSLProxyWallet "${ORACLE_INSTANCE}/config/fmwconfig/components/${COMPONENT_TYPE}/instances/${COMPONENT_NAME}/keystores/proxy"
         SSLProxyVerify none
         ProxyPass "/20200630/observations" "https://datauploadendpointurl.com/20200630/observations/public-span"
         ProxyPassReverse "/20200630/observations" "https://datauploadendpointurl.com/20200630/observations/public-span"
         ProxyPreserveHost On
         ProxyRequests off
         ...
      </VirtualHost>
      ...
    3. Remplacez l'URL https://datauploadendpointurl.com/20200630/observations/public-span par l'adresse de téléchargement de données réelle.

      Remarque

      Pour utiliser la communication HTTP entre le navigateur et le proxy inverse, transformez la ligne SSLEngine on en commentaire.
    4. Démarrez le composant ohs1.

      # export DOMAIN_HOME=<WLS Domain home>
      # cd DOMAIN_HOME/bin
      # ./startComponent.sh ohs1

      Voici un exemple :

      # export DOMAIN_HOME=/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain
      # cd DOMAIN_HOME/bin
      # ./startComponent.sh ohs1