Transferencia de los datos de supervisión de usuario real al punto final de carga de datos de Oracle Cloud Infrastructure

Puede transferir datos de supervisión de usuario real al punto final de carga de datos de Oracle Cloud Infrastructure en función de los distintos escenarios de despliegue.

Determinación del escenario de configuración para el despliegue

  • Escenario 1: si su compañía permite el acceso completo a Internet a todos los usuarios, los datos de supervisión de usuario real se enviarán a Application Performance Monitoring sin una configuración especial ni una configuración de proxy.
  • Situación 2: si su compañía limita el acceso a Internet, pero desea enviar los datos completos de supervisión de usuario real a Application Performance Monitoring, debe configurar el firewall o el proxy existentes para permitir que se envíen solicitudes a Application Performance Monitoring. Consulte Transferencia de datos de supervisión de usuario real a través de un proxy.
  • Escenario 3: si hay requisitos administrativos o de seguridad especiales, puede configurar un proxy inverso dentro de la red que reenvíe el tráfico de una manera más controlada a Application Performance Monitoring. Consulte Transferencia de datos de supervisión de usuario real a través de un proxy inverso.

Transferencia de datos de supervisión de usuario real a través de un proxy

En los casos en los que los usuarios internos de una aplicación web de empresa tengan acceso a dicha aplicación, pero no a Internet en general, se deben adaptar las reglas de proxy para permitir el acceso al punto final de carga de datos (window.apmrum.ociDataUploadEndpoint) para todos los usuarios. De esta forma, puede enviar datos de rendimiento de supervisión de usuario real al punto final de carga de datos, incluso si los usuarios no tienen acceso a ellos de otro modo.

Para obtener información sobre el punto final de carga de datos, consulte Despliegue del agente de explorador de APM con la aplicación. La configuración de un proxy es específica del proveedor. Consulte la documentación proporcionada por el proveedor de proxy para obtener más información sobre la configuración.

Transferencia de datos de supervisión de usuario real a través de un proxy inverso

La técnica de proxy inverso permite a los exploradores buscar una vía a través del firewall del cliente. Un proxy inverso actúa como un punto final dentro de la red empresarial, que reenvía cada solicitud al punto final de carga de datos y devuelve la respuesta que recibe desde allí. Puede configurar un proxy inverso siguiendo estos pasos:

Configuración del agente de explorador de APM para que utilice un punto final de carga de datos diferente

El agente de explorador de APM debe sustituir el punto final de carga de datos por el punto final local del proxy inverso. Para ello, se debe configurar la propiedad de window.apmrum.ociDataUploadEndpoint. Tenga en cuenta que para utilizar un proxy inverso, necesitará un certificado válido. Más adelante en esta sección se proporciona más información sobre este.

A continuación se incluye un ejemplo de la configuración:
window.apmrum.ociDataUploadEndpoint='https://myproxy.example.com:4443'
En el ejemplo anterior, sustituya myproxy.example.com y el número de puerto 4443 por el nombre de host y el número de puerto de la máquina en la que está instalado el proxy inverso. Una vez actualizado el punto final de carga de datos, reinicie el servidor de aplicaciones.

Configuración de un proxy inverso

Puede configurar un proxy inverso con cualquier herramienta de configuración de proxy inverso, como NGINX, Squid o WebLogic ProxyPlugin; sin embargo, las siguientes instrucciones solo se aplican si se utiliza Oracle HTTP Server (OHS).

Nota

Si tiene una configuración de OHS, omita los pasos del 1 al 6. Si utiliza un certificado de confianza, omita el paso 7.
  1. Navegue a http://www.oracle.com/technetwork/middleware/webtier/downloads/index.html.

  2. Acepte el acuerdo de licencia.

  3. Desplácese a Oracle WebTier 12cR2 y Oracle HTTP Server 12.2.1.1.

  4. Seleccione Linux-64 bit y descargue el instalador.

  5. Instale Oracle HTTP Server. Para obtener más información, consulte el apartado acerca de la instalación de Oracle HTTP Server en la sección sobre instalación y configuración de Oracle HTTP Server.

    Nota

    En el documento anterior se asume que OHS está instalado en /Oracle.
  6. Inicie el nodemanager.

    # export DOMAIN_HOME=<WLS Domain home>
    # cd $DOMAIN_HOME/bin
    # nohup ./startNodeManager.sh > nm.out&
    A continuación le mostramos un ejemplo:
    # export DOMAIN_HOME="/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain"
    # cd $DOMAIN_HOME/bin
    # nohup ./startNodeManager.sh > nm.out&
  7. Agregue el certificado de servidor HTTP a la cartera.

    1. Prepare la cartera:

      # 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

      A continuación le mostramos un ejemplo:

      # 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. Obtenga los certificados y agréguelos a la cartera:

      Método 1:

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

      Método 2:

      1. Instale (o actualice) los certificados de CA:

        # yum update ca-certificates
      2. Divida el archivo raíz de CA del paquete que contiene todos los certificados en archivos independientes. (orapki no puede gestionar un paquete.)

        # awk 'BEGIN {c=0;} /BEGIN CERT/{c++} { print > "cert." c ".pem"}' < /etc/pki/tls/certs/ca-bundle.crt
      3. Cargue los certificados individuales en la cartera del proxy de 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. Obtenga el ociDataUploadEndpoint. Para obtener más información, consulte Inyección manual del agente de explorador.

  9. Configure el proxy inverso de HTTPS con Oracle HTTP Server.

    1. En un editor, abra el archivo ssl.conf ubicado en la carpeta ohs1.

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

      A continuación le mostramos un ejemplo:

      # export DOMAIN_HOME="/Oracle/Middleware/Oracle_Home/user_projects/domains/base_domain"
      # vi $DOMAIN_HOME/config/fmwconfig/components/OHS/instances/ohs1/ssl.conf
    2. Configure el proxy inverso SSL en una sección de definición de host virtual existente.

      A continuación le mostramos un ejemplo:
      ...
      <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. Sustituya la URL https://datauploadendpointurl.com/20200630/observations/public-span por el punto final de carga de datos real.

      Nota

      Para utilizar la comunicación HTTP entre el explorador y el proxy inverso, convierta en comentario la línea SSLEngine on.
    4. Inicie el componente ohs1.

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

      A continuación le mostramos un ejemplo:

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