Supervisión y gestión de las instalaciones de aplicaciones Java y Java
Antes de empezar
Esta arquitectura de referencia asume que se ha incorporado correctamente a OCI.
JMS es un servicio nativo de OCI que puede desplegar en dominios comerciales y restringidos. Se puede acceder a él a través de la API (OCI Software Development Kit (SDK) para JMS) o la consola de JMS.
Creará conjuntos de JMS en un compartimento de su arrendamiento. Puede tener varias flotas y recursos de JMS en una o más geografías. Utilice conjuntos para controlar el acceso al recurso asociado y asignarlo a los departamentos de la empresa. Con este enfoque, cada departamento de la empresa del cliente puede controlar su propia flota y recursos.
Realice lo siguiente para completar la vinculación de JMS:
- Configure Oracle Cloud Infrastructure para JMS (ya sea gestionando manualmente políticas o utilizando un asistente).
- Crea un conjunto JMS.
- Desplegar un agente o configurar el agente y activar el plugin de JMS.
- Supervise las instalaciones y aplicaciones de Java en la instancia gestionada.
- Realice operaciones de funciones avanzadas según sea necesario.
Consulte Java Management Service en la documentación de OCI para obtener más información.
Arquitectura
El agente JMS se instala en las instancias gestionadas para recopilar la telemetría de uso de Java y los metadatos de uso de Java. Los datos de telemetría se emiten y se almacenan en su arrendamiento para proteger la privacidad.
El agente instalado en sus arrendamientos exfiltra los metadatos de uso de Java de su arrendamiento. JMS utiliza estos metadatos para generar estadísticas como la versión de Java, la línea base de seguridad y las próximas actualizaciones de Java, así como el uso de aplicaciones, que se presenta al conectarse a la consola de OCI. No hay acceso de Oracle más allá del procesamiento de los metadatos exfiltrados.
Mediante las funciones avanzadas disponibles en JMS, puede analizar el uso de servidores de aplicaciones Java, identificar posibles vulnerabilidades en las bibliotecas Java utilizadas por las aplicaciones que se ejecutan en su entorno, utilizar el registrador de ejecución de Java para el rendimiento y el análisis criptográfico y gestionar los tiempos de ejecución de Oracle Java Runtime (versiones de JDK) en su entorno. Puede utilizar la función avanzada para gestionar la ejecución de Java en su entorno.
El siguiente diagrama ilustra la topología del servicio JMS en producción. En el diagrama se muestran los agentes desplegados para realizar un seguimiento de Java que se ejecuta en OCI, sus escritorios locales, portátiles y servidores, y servicios en la nube de terceros. Estos agentes se despliegan en las instancias gestionadas y están asociados a los recursos creados (fleets) en sus arrendamientos.
El siguiente diagrama ilustra esta arquitectura de referencia.

Descripción de la ilustración jms-oci-topology.png
En general, a continuación se muestra cómo fluyen los datos entre el agente JMS instalado en la instancia gestionada y el servicio JMS en OCI:
- Instala el agente en la instancia gestionada y el agente se registra con OCI.
- Puede configurar o activar el plugin de JMS (pasando el conjunto de JMS como parámetro). El agente JMS ahora está asociado al conjunto JMS deseado.
- El agente JMS registrado sondea JMS para el trabajo. JMS responderá al sondeo con las solicitudes de trabajo adecuadas, si las hay.
- El agente JMS explora periódicamente la instancia gestionada en busca de instalaciones o entradas de Java en el rastreador de uso y envía las métricas de Java y los metadatos de Java a OCI.
El flujo de datos entre el agente JMS y el servicio OCI se muestra en la siguiente ilustración.

Descripción de la ilustración jms-oci-workflow.png
- Usuario: Instala el agente en el agente JMS y se envía una solicitud al agente JMS (solicitud).
- Agente JMS: Envía una solicitud de registro a los servicios de OCI (solicitud).
- Servicios de OCI: valida la clave y devuelve metadatos y tokens de autenticación y envía una respuesta al agente JMS (respuesta).
- Agente JMS: Se inicia el agente y envía una respuesta al usuario (respuesta).
- Agente JMS: instala los plugins solicitados en los servicios de OCI (solicitud).
- Agente JMS: sondea los servicios de OCI como una solicitud de trabajo (solicitud).
- Servicios de OCI: envía una solicitud de trabajo (respuesta).
- Agente de JMS: El agente obtiene el paquete de plugins e instalaciones (solicitud).
- Agente JMS: sondea periódicamente y envía inventario a los servicios de OCI en el arrendamiento del cliente (solicitud).
El siguiente diagrama de red describe los flujos de tráfico entre el agente JMS instalado en las máquinas host (local) y JMS que se ejecuta en OCI. Se produce un patrón de tráfico similar entre las máquinas host en OCI y JMS.

Descripción de la ilustración jms-oci-network-traffic.png
jms-oci-network-traffic-oracle.zip
- El agente JMS siempre inicia la solicitud autenticándose a sí mismo con OCI mediante un puerto abierto permitido por el firewall (443).
- El agente de gestión y el servicio JMS de OCI no transfieren ningún dato al agente.
- El agente JMS sondea el servicio en busca de solicitudes de trabajo.
- El intervalo de sondeo de solicitudes de trabajo del agente JMS puede ser tan bajo como 30 segundos.
- El intervalo de sondeo del agente de JMS se puede configurar; el intervalo de sondeo máximo es de 10 minutos.
- Los datos transmitidos se cifran mediante TLS.
- A continuación, los servicios de OCI devuelven los datos en respuesta a estas solicitudes una vez establecida la conexión.
La arquitectura tiene los siguientes componentes:
- Región
Una región de Oracle Cloud Infrastructure es un área geográfica localizada que contiene uno o más centros de datos, denominados dominios de disponibilidad. Las regiones son independientes entre sí y puede haber grandes distancias que las separen (entre países e incluso continentes).
- Dominios de disponibilidad
Los dominios de disponibilidad son centros de datos independientes dentro de una región. Los recursos físicos de cada dominio de disponibilidad están aislados de los recursos de los otros dominios de disponibilidad, lo que proporciona tolerancia a fallos. Los dominios de disponibilidad no comparten infraestructura, como la alimentación o la refrigeración, ni la red interna del dominio de disponibilidad. Por lo tanto, un fallo en un dominio de disponibilidad no debería afectar a los otros dominios de disponibilidad de la región.
- Compartimento
Los compartimentos son particiones lógicas entre regiones dentro de un arrendamiento de Oracle Cloud Infrastructure. Utilice compartimentos para organizar, controlar el acceso y definir cuotas de uso para los recursos de Oracle Cloud. En un compartimento determinado, defina políticas que controlen el acceso y definan privilegios para los recursos.
- Gateway de enrutamiento dinámico (DRG)
El DRG es un enrutador virtual que proporciona una ruta para el tráfico de red privada entre las redes virtuales en la misma región, entre una VCN y una red fuera de la región, como una VCN en otra región de Oracle Cloud Infrastructure, una red local o una red en otro proveedor en la nube.
- Pool de instancia
Un pool de instancias es un grupo de instancias dentro de una región que se crean a partir de la misma configuración de instancia y se gestionan como grupo.
- Red local
Esta red es la red local que utiliza su organización. Es uno de los radios de la topología.
- Lista de seguridad
Para cada subred, puede crear reglas de seguridad que especifiquen el origen, el destino y el tipo de tráfico que se debe permitir dentro y fuera de la subred.
- Zona de seguridad
Las zonas de seguridad garantizan las mejores prácticas de seguridad de Oracle desde el principio mediante la aplicación de políticas como el cifrado de datos y la prevención del acceso público a las redes de todo un compartimento. Una zona de seguridad está asociada a un compartimento con el mismo nombre e incluye políticas de zona de seguridad o una "receta" que se aplica al compartimento y sus subcompartimentos. No puede agregar ni mover un compartimento estándar a un compartimento de zona de seguridad.
- Gateway de enrutamiento dinámico (DRG)
El DRG es un enrutador virtual que proporciona una ruta para el tráfico de red privada entre las redes virtuales en la misma región, entre una VCN y una red fuera de la región, como una VCN en otra región de Oracle Cloud Infrastructure, una red local o una red en otro proveedor en la nube.
- Gateway de servicio
El gateway de servicios proporciona acceso desde una VCN a otros servicios, como Oracle Cloud Infrastructure Object Storage. El tráfico de la VCN al servicio Oracle viaja por el tejido de red de Oracle y no atraviesa Internet.
- Tenancy
Un arrendamiento es una partición segura y aislada que Oracle configura en Oracle Cloud al registrarse en Oracle Cloud Infrastructure. Puede crear, organizar y administrar sus recursos en Oracle Cloud dentro de su arrendamiento. Un arrendamiento es sinónimo de una compañía u organización. Normalmente, una compañía tendrá un único arrendamiento y reflejará su estructura organizativa dentro de ese arrendamiento. Un único arrendamiento suele estar asociado a una única suscripción, y una única suscripción normalmente solo tiene un arrendamiento.
- LoggingLogging es un servicio altamente escalable y totalmente administrado que proporciona acceso a los siguientes tipos de registros de sus recursos en la nube:
- Logs de auditoría: logs relacionados con eventos emitidos por el servicio de auditoría.
- Logs de servicios: logs emitidos por servicios individuales como API Gateway, eventos, funciones, equilibrio de carga, Object Storage y logs de flujo de VCN.
- Logs personalizados: logs que contienen información de diagnóstico de aplicaciones personalizadas, otros proveedores de nube o un entorno local.
- Monitoring
El servicio Oracle Cloud Infrastructure Monitoring supervisa de forma activa y pasiva los recursos en la nube mediante métricas para supervisar recursos y alarmas para notificarle cuando estas métricas cumplen los disparadores especificados por la alarma.
- Política
Una política de Oracle Cloud Infrastructure Identity and Access Management especifica quién puede acceder a qué recursos y de qué modo. El acceso se otorga en el nivel de grupo y compartimento, lo que significa que puede escribir una política que proporcione a un grupo un tipo específico de acceso dentro de un compartimento específico o al arrendamiento.
- Oracle Cloud Infrastructure Vault
Oracle Cloud Infrastructure Vault permite gestionar de forma central las claves de cifrado que protegen los datos y las credenciales secretas que utiliza para proteger el acceso a los recursos en la nube. Puede utilizar el servicio Vault para crear y gestionar almacenes, claves y secretos.
OCI Vault también ofrece un amplio conjunto de API Rest para gestionar almacenes y claves.
- Flujo de trabajo
El servicio de flujo de trabajo de Oracle Cloud Infrastructure es un motor de flujo de trabajo sin servidor con un diseñador de flujo gráfico para desarrolladores y arquitectos. Acelera la creación y ejecución de la orquestación de servicios de OCI, como OCI Functions, AI/ML, para realizar la lógica empresarial, las tareas de TI y los trabajos de datos.
- Red y subredes virtuales en la nube (VCN)
Una VCN es una red personalizable y definida por software que puede configurar en una región de Oracle Cloud Infrastructure. Al igual que las redes de los centros de datos tradicionales, las redes virtuales le proporcionan el control de su entorno de red. Una VCN puede tener varios bloques de CIDR no superpuestos que puede cambiar después de crear la VCN. Puede segmentar una VCN en subredes, las cuales se pueden acotar a una región o a un dominio de disponibilidad. Cada subred está formada por un rango contiguo de direcciones que no se solapan con las demás subredes de la VCN. Puede cambiar el tamaño de una subred después de la creación. Una subred puede ser pública o privada.
- Gateway de API
Oracle Cloud Infrastructure API Gateway permite publicar API con puntos finales privados accesibles desde la red y que se pueden exponer a la red pública de Internet si es necesario. Los puntos finales admiten la validación de API, la transformación de solicitud y respuesta, CORS, la autenticación y autorización, y la limitación de solicitudes.
- Autonomous Database
Oracle Autonomous Database es un entorno de base de datos totalmente gestionado y preconfigurado que puede utilizar para el procesamiento de transacciones y las cargas de trabajo de almacenamiento de datos. No necesita configurar ni gestionar ningún hardware, ni instalar ningún software. Oracle Cloud Infrastructure gestiona la creación, la copia de seguridad, la aplicación de parches, el cambio de versión y el ajuste de la base de datos.
- Host bastión
El host bastión es una instancia informática que sirve como punto de entrada seguro y controlado a la topología desde fuera de la nube. El host bastión se aprovisiona, por lo general, en una zona desmilitarizada (DMZ). Le permite proteger los recursos sensibles, colocándolos en redes privadas a las que no se puede acceder directamente desde fuera de la nube. La topología tiene un único punto de entrada conocido que puede supervisar y auditar con regularidad. Por lo tanto, puede evitar exponer los componentes más sensibles de la topología sin comprometer el acceso.
- Compute
Con Oracle Cloud Infrastructure Compute, puede aprovisionar y gestionar hosts de recursos informáticos en la nube. Puede iniciar instancias informáticas con unidades que cumplan los requisitos de recursos de CPU, memoria, ancho de banda de red y almacenamiento. Después de crear una instancia informática, puede acceder a ella de forma segura, reiniciarla, asociar y desconectar volúmenes y terminarla cuando ya no lo necesite.
- DNS
El servicio de sistema de nombres de dominio (DNS) de Oracle Cloud Infrastructure es una red anycast global con gran capacidad de ampliación de un sistema de nombre de dominio (DNS) que ofrece rendimiento, resiliencia y posibilidades de ampliación de DNS para que los usuarios finales se conecten a las aplicaciones de Internet rápidamente y desde cualquier lugar.
- Flujos de Kafka
Kafka Streams es una biblioteca de clientes para crear aplicaciones y microservicios, donde los datos de entrada y salida se almacenan en clusters de Kafka. Combina la simplicidad de escribir e implementar aplicaciones Java y Scala estándar en el cliente con las ventajas de la tecnología de clúster del servidor de Kafka.
- Almacenamiento de objetos
Oracle Cloud Infrastructure Object Storage proporciona acceso rápido a grandes cantidades de datos estructurados y no estructurados de cualquier tipo de contenido, incluidas copias de seguridad de base de datos, datos analíticos y contenido enriquecido, como imágenes y vídeos. Puede almacenar datos de forma segura y, a continuación, recuperarlos directamente desde Internet o desde la plataforma en la nube. Puede ampliar el almacenamiento sin experimentar ninguna degradación del rendimiento ni de la fiabilidad del servicio. Utilice el almacenamiento estándar para el almacenamiento al que debe acceder de forma rápida, inmediata y frecuente. Utilice el almacenamiento de archivo para el almacenamiento "frío" al que conserva durante largos períodos de tiempo y al que rara vez accede.
- Oracle Management Agent
Oracle Management Agent es un servicio que proporciona recopilación de datos y comunicación interactiva de baja latencia entre Oracle Cloud Infrastructure y las instancias gestionadas locales. Los agentes de gestión recopilan datos de orígenes que desea supervisar. Management Agent Service, un servicio de Oracle Cloud Service, gestiona el ciclo de vida del agente de gestión y los plugins de los servicios.
- Agente de Oracle Cloud
Oracle Cloud Agent es un proceso ligero que gestiona el ciclo de vida de los plugins que se ejecutan en instancias informáticas en OCI. Los plugins de JMS recopilan metadatos de Java de su entorno desplegado en la instancia gestionada en OCI. El plugin de JMS filtra estos metadatos de Java al servicio JMS en OCI.
- Kiev como servicio (KaaS)
KaaS es un servicio de plataforma de datos totalmente gestionado que utilizan principalmente los servicios del plano de control en OCI. KaaS proporciona API de NoSQL de alto nivel para una integración sencilla, exploraciones serializables, transmisión de cambio de alimentación y otras funciones. KaaS es un servicio construido sobre Kiev. Kiev es un "NoSQL almacén de clave-valor" que también soporta mini-transacciones por conveniencia. Para evitar errores de simultaneidad en las aplicaciones, las mini-transacciones de Kiev tienen un fuerte aislamiento que proporciona garantías más sólidas que los niveles de aislamiento más débiles que se utilizan comúnmente en Oracle y MySQL. Kiev tiene un SLA de disponibilidad del 99,9 %.
Recomendaciones
- VCN
Al crear una VCN, determine el número de bloques CIDR necesarios y el tamaño de cada bloque en función del número de recursos que planea asociar a las subredes de la VCN. Utilice bloques CIDR que estén dentro del espacio de direcciones IP privadas estándar.
Seleccione bloques de CIDR que no se solapen con ninguna otra red (en Oracle Cloud Infrastructure, su centro de datos local u otro proveedor en la nube) a la que desee configurar conexiones privadas.
Después de crear una VCN, puede cambiar, agregar y eliminar sus bloques CIDR.
Al diseñar las subredes, tenga en cuenta el flujo de tráfico y los requisitos de seguridad. Asocie todos los recursos de un nivel o rol específico a la misma subred, que puede servir como límite de seguridad.
Utilizar subredes regionales.
- Seguridad
Utilice Oracle Cloud Guard para supervisar y mantener la seguridad de sus recursos en Oracle Cloud Infrastructure de forma proactiva. Utilice zonas de seguridad para obtener la máxima seguridad.
- Cloud Guard
Clone y personalice las recetas por defecto proporcionadas por Oracle para crear recetas personalizadas de detector y responsable de respuesta. Estas recetas permiten especificar qué tipo de violaciones de seguridad generan una advertencia y qué acciones se pueden realizar en ellas. Por ejemplo, puede que desee detectar cubos de Object Storage que tengan la visibilidad definida en pública.
Aplique Cloud Guard en el nivel de arrendamiento para abarcar el ámbito más amplio y reducir la carga administrativa de mantener varias configuraciones.
También puede utilizar la función de lista gestionada para aplicar determinadas configuraciones a los detectores.
- Security Zones
Para los recursos que requieren la máxima seguridad, Oracle recomienda utilizar zonas de seguridad. Una zona de seguridad es un compartimento asociado a una receta de políticas de seguridad definida por Oracle que se basa en las mejores prácticas. Por ejemplo, no se puede acceder a los recursos de una zona de seguridad desde la Internet pública y se deben cifrar mediante claves gestionadas por el cliente. Al crear y actualizar recursos en una zona de seguridad, Oracle Cloud Infrastructure valida las operaciones con respecto a las políticas de la receta de zona de seguridad y deniega las operaciones que violan cualquiera de las políticas.
- Grupos de seguridad de red (NSG)
Puede utilizar NSG para definir un juego de reglas de entrada y salida que se aplican a VNIC específicas. Recomendamos utilizar NSG en lugar de listas de seguridad, ya que los NSG permiten separar la arquitectura de subred de la VCN de los requisitos de seguridad de la aplicación.
- Ancho de banda de equilibrador de carga
Al crear el equilibrador de carga, puede seleccionar una unidad predefinida que proporcione un ancho de banda fijo o especificar una unidad personalizada (flexible) en la que defina un rango de ancho de banda y permita que el servicio amplíe el ancho de banda automáticamente en función de los patrones de tráfico. Con cualquiera de los enfoques, puede cambiar la unidad en cualquier momento después de crear el equilibrador de carga.
Consideraciones
Tenga en cuenta los siguientes puntos al desplegar esta arquitectura de referencia.
- RendimientoTenga en cuenta los siguientes elementos al implantar la arquitectura de referencia para detectar y gestionar instalaciones de Java y aplicaciones java en instancias gestionadas locales.
- JMS utiliza Agent para exfiltrar los metadatos de Java (el tráfico de red y la cuidadosa configuración del firewall son una consideración).
- El agente necesita que se ejecute la última versión de JRE 8 en la instancia gestionada.
- El agente necesita 512 MB de memoria de pila libre en la instancia gestionada.
- El agente competirá con la aplicación para CPU en la instancia gestionada.
Los metadatos exfiltrados están disponibles en el objeto de log. JMS procesa los metadatos para generar estadísticas. Estas estadísticas y métricas se almacenan en la base de datos Oracle Autonomous Transaction Processing propiedad del servicio. Puede utilizar la API para consultar el servicio para obtener estadísticas históricas sobre Java desplegado en su entorno. JMS no es un sistema en tiempo real. Puede haber latencia al proporcionar estadísticas actuales e históricas debido a la carga del servicio por parte de muchas otras consultas de clientes.
- Seguridad
Utilice políticas para restringir quién puede acceder a los recursos de Oracle Cloud Infrastructure (OCI) de su empresa y cómo pueden acceder a ellos. Metadatos de Java extraídos del entorno en un objeto de log que es propiedad de la empresa. JMS procesa estos metadatos y se le presentan las estadísticas. Las estadísticas se almacenan en la base de datos de Oracle Autonomous Transaction Processing. Los informes que genere se almacenan en OCI Object Storage.
El cifrado está activado para OCI Object Storage por defecto y no se puede desactivar.
- Disponibilidad
JMS se ha designado como servicio de categoría 10 con un objetivo de nivel de servicio publicado de 3'9s (99.9).
- Costo
JMS es un servicio gratuito. Todas las funciones básicas para supervisar y consultar estadísticas de Java en su entorno están disponibles. Las funciones avanzadas que implican la gestión de Java en su entorno solo están disponibles para los suscriptores de Java SE que ejecutan instancias gestionadas locales. La versión completa de funciones de JMS también está disponible al ejecutar toda la carga de trabajo en OCI.
Si tiene instancias gestionadas locales y utiliza cargas de trabajo Java mínimas, puede que considere aceptable trabajar JMS dentro de los límites del nivel gratuito de OCI (evitando el costo mensual mínimo de recursos informáticos, almacenamiento y salida de red).
Explorar más
Vaya a Configuración de Java Management Service para supervisar el uso de Java en un host de Oracle Linux para configurar y activar la supervisión del uso de Java en las máquinas de Oracle Linux.
- Estimador de costos de Oracle Cloud
- Oracle Cloud Infrastructure Software Development Kit (SDK) para JMS (GitHub)
- Marco de adopción de la nube de Oracle Cloud Infrastructure Cloud
- Autonomous Database
- Oracle Cloud Infrastructure Identity and Access Management
- Java Management Service
- Agente de Oracle Cloud
- Agente de gestión
- Objetivos de nivel de servicio para Oracle PaaS e IaaS Public Cloud Services
- Cuenta gratuita de Oracle Cloud