Monitorar e Gerenciar Suas Instalações de Aplicativos Java e Java
Antes de Começar
Essa arquitetura de referência pressupõe que você tenha se integrado com sucesso ao OCI.
O JMS é um serviço nativo do OCI que você pode implantar em realms comerciais e restritos. Ele pode ser acessado por meio da API (OCI Software Development Kit (SDK) para JMS) ou da console JMS.
Você criará frotas JMS em um compartimento da sua tenancy. Você pode ter várias frotas e recursos JMS em uma ou mais geografias. Use frotas para controlar o acesso ao recurso associado e atribuí-los aos departamentos da sua empresa. Com essa abordagem, cada departamento da empresa do cliente pode controlar sua própria frota e recursos.
Execute o seguinte para concluir a integração do JMS:
- Configure o Oracle Cloud Infrastructure para JMS (gerencie manualmente políticas ou use um assistente).
- Cria uma frota JMS.
- Implante um agente ou configure o agente e ative o plug-in JMS.
- Monitore as instalações e os aplicativos Java em sua instância gerenciada.
- Execute operações de Recursos Avançados, conforme necessário.
Consulte o serviço Java Management na Documentação do OCI para obter mais informações.
Arquitetura
O agente JMS é instalado nas instâncias gerenciadas para coletar telemetria de uso do Java e metadados de uso do Java. Os dados de telemetria são emitidos e armazenados em sua tenancy para proteção de privacidade.
Os metadados de uso do Java são exfiltrados da sua tenancy pelo agente instalado nas tenancies. O JMS usa esses metadados para gerar insights como a versão Java, a Linha de Base de Segurança e as próximas Atualizações do Java e o Uso do Aplicativo; que é apresentado quando você faz log-in na Console do OCI. Não há acesso da Oracle além do processamento dos metadados exfiltrados.
Usando os recursos avançados disponíveis no JMS, você pode analisar o uso de servidores de aplicativos Java, identificar possíveis vulnerabilidades nas bibliotecas Java usadas por aplicativos em execução em seu ambiente, usar o gravador de voo Java para análise de desempenho e criptografia e gerenciar Oracle Java Runtimes (versões JDK) em seu ambiente. Você pode usar o recurso avançado para gerenciar o Java em execução no seu ambiente.
O diagrama a seguir ilustra a topologia do serviço JMS em produção. O diagrama mostra os agentes implantados para rastrear o Java em execução na OCI, seus desktops on-premises, laptops e servidores e serviços de nuvem de terceiros. Esses agentes são implantados em suas instâncias gerenciadas e estão associados aos seus recursos criados (fleets) em suas tenancies.
O diagrama a seguir ilustra essa arquitetura de referência.

Descrição da ilustração jms-oci-topology.png
Em alto nível, o seguinte ilustra como os dados fluem entre o agente JMS instalado em sua instância gerenciada e o serviço JMS no OCI:
- Você instala o agente na Instância Gerenciada e o agente se registra no OCI.
- Você configura ou ativa o plug-in JMS (passando a frota JMS como parâmetro). O agente JMS agora está associado à frota JMS desejada.
- O agente JMS registrado pesquisa JMS para trabalho. O JMS responderá à sondagem com solicitações de serviço apropriadas, se houver.
- O agente JMS verifica periodicamente a instância gerenciada em busca de instalações ou entradas Java no rastreador de uso e envia as métricas Java e os metadados Java para o OCI.
O fluxo de dados entre o agente JMS e o serviço OCI é mostrado na ilustração abaixo.

Descrição da ilustração jms-oci-workflow.png
- Usuário: Instala o agente no Agente JMS e uma solicitação é enviada ao Agente JMS (solicitação).
- Agente JMS: Envia uma solicitação de Registro aos Serviços do OCI (solicitação).
- Serviços do OCI: Valida a chave e retorna metadados e tokens de autenticação e envia uma resposta ao Agente JMS (resposta).
- Agente JMS: O agente é iniciado e envia uma resposta ao Usuário (resposta).
- Agente JMS: Instala plug-ins solicitados para Serviços do OCI (solicitação).
- Agente JMS: Verifica os Serviços do OCI como uma solicitação de trabalho (solicitação).
- Serviços do OCI: Envia uma solicitação de trabalho (resposta).
- Agente JMS: O agente obtém o pacote de plug-ins e instala (solicitação).
- Agente JMS: Verifica periodicamente e envia inventário para os Serviços do OCI na tenancy do cliente (solicitação).
O diagrama de rede abaixo descreve os fluxos de tráfego entre o agente JMS instalado em suas máquinas host (on-premises) e o JMS em execução no OCI. Padrão de tráfego semelhante ocorre entre suas máquinas host no OCI e JMS.

Descrição da ilustração jms-oci-network-traffic.png
jms-oci-network-traffic-oracle.zip (tráfego de rede)
- O agente JMS sempre inicia a solicitação autenticando-se com o OCI usando uma porta aberta que é permitida pelo firewall (443).
- O agente de Gerenciamento e o serviço JMS do OCI não enviam dados para o agente.
- O agente JMS sonda o serviço para solicitações de serviço.
- O intervalo de sondagem das solicitações de serviço do agente JMS pode ser tão baixo quanto 30 segundos.
- O intervalo de polling do agente JMS é configurável, o intervalo máximo de polling é de 10 minutos.
- Os dados transmitidos são criptografados usando TLS.
- Em seguida, os serviços do OCI enviam de volta os dados em resposta a essa solicitação depois que a conexão é estabelecida.
A arquitetura tem os seguintes componentes:
- Região
Região do Oracle Cloud Infrastructure é uma área geográfica localizada que contém um ou mais data centers, denominada domínios de disponibilidade. As regiões são independentes de outras regiões, e grandes distâncias podem separá-las (entre países ou até mesmo continentes).
- Domínios de disponibilidade
Domínios de disponibilidade são data centers stand-alone e independentes dentro de uma região. Os recursos físicos de cada domínio de disponibilidade são isolados dos recursos de outros domínios de disponibilidade, o que oferece tolerância a falhas. Os domínios de disponibilidade não compartilham infraestrutura como energia ou refrigeração ou a rede interna do domínio de disponibilidade. Portanto, uma falha em um domínio de disponibilidade não deve afetar os outros domínios de disponibilidade na região.
- Compartimento
Os compartimentos são partições lógicas entre regiões em uma tenancy do Oracle Cloud Infrastructure. Use compartimentos para organizar, controlar o acesso e definir metas de uso para seus recursos do Oracle Cloud. Em um determinado compartimento, você define políticas que controlam o acesso e definem privilégios para recursos.
- Gateway de roteamento dinâmico (DRG)
O DRG é um roteador virtual que fornece um caminho para o tráfego de rede privada entre VCNs na mesma região, entre uma VCN e uma rede fora da região, como uma VCN em outra região do Oracle Cloud Infrastructure, uma rede local ou uma rede em outro provedor de nuvem.
- Pool de instâncias
Pool de instâncias é um grupo de instâncias dentro de uma região que são criadas com base na mesma configuração e gerenciadas como grupo.
- Rede on-premises
Essa rede é a rede local usada por sua organização. É um dos raios da topologia.
- Lista de segurança
Para cada sub-rede, você pode criar regras de segurança que especifiquem a origem, o destino e o tipo de tráfego que deve ser permitido dentro e fora da sub-rede.
- Zona de segurança
As zonas de segurança garantem as melhores práticas de segurança da Oracle desde o início, impondo políticas, como criptografar dados e impedir o acesso público a redes de um compartimento inteiro. Uma zona de segurança está associada a um compartimento com o mesmo nome e inclui políticas de zona de segurança ou uma "receita" que se aplica ao compartimento e seus subcompartimentos. Não é possível adicionar ou mover um compartimento padrão para um compartimento de zona de segurança.
- Gateway de roteamento dinâmico (DRG)
O DRG é um roteador virtual que fornece um caminho para o tráfego de rede privada entre VCNs na mesma região, entre uma VCN e uma rede fora da região, como uma VCN em outra região do Oracle Cloud Infrastructure, uma rede local ou uma rede em outro provedor de nuvem.
- Gateway de serviço
O gateway de serviço fornece acesso de uma VCN a outros serviços, como o Oracle Cloud Infrastructure Object Storage. O tráfego da VCN para o serviço Oracle percorre a malha da rede Oracle e não passa pela internet.
- Tenancy
Uma tenancy é uma partição segura e isolada que a Oracle configura no Oracle Cloud quando você se inscreve no Oracle Cloud Infrastructure. Você pode criar, organizar e administrar seus recursos no Oracle Cloud em sua tenancy. Uma tenancy é sinônimo de uma empresa ou organização. Normalmente, uma empresa terá uma única locação e refletirá sua estrutura organizacional dentro dessa locação. Uma única tenancy geralmente é associada a uma única assinatura, e uma única assinatura geralmente só tem uma tenancy.
- LoggingO registro em log é um serviço altamente escalável e totalmente gerenciado que oferece acesso aos seguintes tipos de logs de seus recursos na nuvem:
- Logs de auditoria: Logs relacionados a eventos emitidos pelo serviço Audit.
- Logs de serviço: Logs emitidos por serviços individuais, como API Gateway, Events, Functions, Load Balancing, Object Storage e logs de fluxo da VCN.
- Logs personalizados: Logs que contêm informações de diagnóstico de aplicativos personalizados, outros provedores de nuvem ou um ambiente on-premises.
- Monitoring
O serviço Oracle Cloud Infrastructure Monitoring monitora ativa e passivamente seus recursos de nuvem usando métricas para monitorar recursos e alarmes para notificá-lo quando essas métricas atenderem aos acionadores especificados pelo alarme.
- Política
Uma política do Oracle Cloud Infrastructure Identity and Access Management especifica quem pode acessar quais recursos e como. O acesso é concedido no nível de grupo e compartimento. Isso significa que você pode gravar uma política que dá a um grupo um tipo específico de acesso em um compartimento específico ou à tenancy.
- Oracle Cloud Infrastructure Vault
O Oracle Cloud Infrastructure Vault permite gerenciar centralmente as chaves de criptografia que protegem seus dados e as credenciais secretas usadas para proteger o acesso aos seus recursos na nuvem. Você pode usar o serviço Vault para criar e gerenciar vaults, chaves e segredos.
O OCI Vault também oferece um rico conjunto de APIs Rest para gerenciar vaults e chaves.
- Fluxo de Trabalho
O serviço Oracle Cloud Infrastructure Workflow é um mecanismo de workflow sem servidor com um designer de fluxo gráfico para desenvolvedores e arquitetos. Ele acelera a criação e a execução da orquestração de serviços da OCI, como OCI Functions, IA/ML, para executar lógica empresarial, tarefas de TI e jobs de dados.
- Rede virtual na nuvem (VCN) e sub-redes
Uma VCN é uma rede personalizável definida por software que você configura em uma região do Oracle Cloud Infrastructure. Como as redes tradicionais de data center, as VCNs oferecem controle sobre seu ambiente de rede. Uma VCN pode ter vários blocos CIDR não sobrepostos que você pode alterar após a criação da VCN. Você pode segmentar uma VCN em sub-redes, com escopo definido para uma região ou para um domínio de disponibilidade. Cada sub-rede consiste em um intervalo contíguo de endereços que não se sobrepõem a outras sub-redes da VCN. Você pode alterar o tamanho de uma sub-rede após a criação. Uma sub-rede pode ser pública ou privada.
- Gateway de API
O Oracle Cloud Infrastructure API Gateway permite que você publique APIs com pontos finais privados acessíveis na sua rede e que você pode expor à internet pública, se necessário. Os pontos finais suportam validação de API, transformação de solicitação e resposta, CORS, autenticação e autorização e limitação de solicitação.
- Autonomous Database
O Oracle Autonomous Database é um ambiente de banco de dados totalmente gerenciado e pré-configurado que você pode usar para processamento de transações e cargas de trabalho de data warehousing. Você não precisa configurar nem gerenciar nenhum hardware, nem instalar nenhum software. O Oracle Cloud Infrastructure trata da criação, backup, aplicação de patches, upgrade e ajuste do banco de dados.
- Bastion host
O bastion host é uma instância de computação que atua como um ponto de entrada seguro e controlado para a topologia de fora da nuvem. O bastion host geralmente é provisionado em uma zona desmilitarizada (DMZ). Ele permite proteger recursos confidenciais colocando-os nas redes privadas que não podem ser acessadas diretamente de fora da nuvem. A topologia tem um único ponto de entrada conhecido que você pode monitorar e auditar regularmente. Desse modo, você pode evitar expor os componentes mais confidenciais da topologia sem comprometer o acesso a eles.
- Computação
Com o Oracle Cloud Infrastructure Compute, você pode provisionar e gerenciar hosts de computação na nuvem. Você pode iniciar instâncias de computação com formas que atendam aos seus requisitos de recursos para CPU, memória, largura de banda de rede e armazenamento. Depois de criar uma instância de computação, você pode acessá-la com segurança, reiniciá-la, anexar e desconectar volumes e encerrá-la quando não precisar mais dela.
- DNS
O serviço DNS (Domain Name System) do Oracle Cloud Infrastructure é uma rede de sistema de nomes de domínio (DNS) anycast global altamente escalável que oferece desempenho, resiliência e escalabilidade de DNS aprimorados, para que os usuários finais se conectem a aplicativos da Internet rapidamente, de qualquer lugar.
- Streams do Kafka
O Kafka Streams é uma biblioteca cliente para criar aplicativos e microsserviços, onde os dados de entrada e saída são armazenados em clusters Kafka. Ele combina a simplicidade de escrever e implementar aplicativos Java e Scala padrão no lado do cliente com os benefícios da tecnologia de cluster do lado do servidor do Kafka.
- Armazenamento de objetos
O serviço Oracle Cloud Infrastructure Object Storage oferece acesso rápido a grandes quantidades de dados estruturados e não estruturados de qualquer tipo de conteúdo, incluindo backups de bancos de dados, dados de análise e conteúdo avançado, como imagens e vídeos. Você pode armazenar de forma segura e depois recuperar dados diretamente da internet ou de dentro da plataforma da nuvem. Você pode dimensionar o armazenamento sem prejudicar o desempenho ou a confiabilidade do serviço. Use o armazenamento padrão para armazenamento de acesso frequente que você precisa para acessar de forma rápida, imediata e com frequência. Use o armazenamento de arquivos compactados para armazenamento "frio" que você mantém por longos períodos de tempo e raramente acessa.
- Oracle Management Agent
O Oracle Management Agent é um serviço que fornece comunicação interativa de baixa latência e coleta de dados entre o Oracle Cloud Infrastructure e as instâncias gerenciadas on-premise. Os agentes de gerenciamento coletam dados de origens que você deseja monitorar. O Management Agent Service, um Oracle Cloud Service, gerencia o ciclo de vida do agente de gerenciamento e os plug-ins dos serviços.
- Agente do Oracle Cloud
O Oracle Cloud Agent é um processo leve que gerencia o ciclo de vida dos plug-ins em execução nas instâncias de computação no OCI. Os Plug-ins JMS coletam metadados Java do seu ambiente implantado na instância gerenciada no OCI. O plug-in JMS exfiltra esses metadados Java para o serviço JMS no OCI.
- Kiev como Serviço (KaaS)
KaaS é um serviço de plataforma de dados totalmente gerenciado usado principalmente pelos serviços do Plano de Controle no OCI. O KaaS fornece APIs NoSQL de alto nível para fácil integração, verificações serializáveis, streaming de feed de alterações e outros recursos. KaaS é um serviço construído sobre Kiev. Kiev é uma "loja de valor-chave NoSQL" que também suporta mini-transações por conveniência. Para evitar bugs de simultaneidade em aplicativos, as mini-transações de Kiev têm um forte isolamento que fornece garantias mais fortes do que os níveis de isolamento mais fracos que são comumente usados em Oracle e MySQL. Kiev tem um SLA de disponibilidade de 99,9%.
Recomendações
- VCN
Ao criar uma VCN, determine o número de blocos CIDR necessários e o tamanho de cada bloco com base no número de recursos que você planeja anexar a sub-redes na VCN. Use blocos CIDR que estejam dentro do espaço de endereço IP privado padrão.
Selecione blocos CIDR que não se sobreponham a nenhuma outra rede (no Oracle Cloud Infrastructure, em seu data center local ou em outro provedor de nuvem) para a qual você pretende configurar conexões privadas.
Depois de criar uma VCN, você poderá alterar, adicionar e remover seus blocos CIDR.
Ao projetar as sub-redes, considere seus requisitos de fluxo de tráfego e segurança. Anexe todos os recursos dentro de uma camada ou atribuição específica à mesma sub-rede, que pode servir como um limite de segurança.
Usar sub-redes regionais.
- Segurança
Use o Oracle Cloud Guard para monitorar e manter a segurança dos seus recursos no Oracle Cloud Infrastructure de forma proativa. Use zonas de segurança para obter segurança máxima.
- Cloud Guard
Clone e personalize as receitas padrão fornecidas pela Oracle para criar receitas personalizadas de detector e respondedor. Essas receitas permitem que você especifique que tipo de violações de segurança geram um aviso e quais ações podem ser executadas nelas. Por exemplo, talvez você queira detectar buckets do Object Storage que tenham visibilidade definida como pública.
Aplique o Cloud Guard no nível da tenancy para cobrir o escopo mais amplo e reduzir a carga administrativa de manutenção de várias configurações.
Você também pode usar o recurso Lista Gerenciada para aplicar determinadas configurações aos detectores.
- Zonas de Segurança
Para recursos que exigem segurança máxima, a Oracle recomenda o uso de zonas de segurança. Uma zona de segurança é um compartimento associado a uma receita de políticas de segurança definida pela Oracle baseada nas melhores práticas. Por exemplo, os recursos em uma zona de segurança não devem estar acessíveis pela internet pública e devem ser criptografados usando chaves gerenciadas pelo cliente. Quando você cria e atualiza recursos em uma zona de segurança, o Oracle Cloud Infrastructure valida as operações em relação às políticas na receita da zona de segurança e nega as operações que violam qualquer uma das políticas.
- Grupos de segurança de rede (NSGs)
Você pode usar NSGs para definir um conjunto de regras de entrada e saída que se aplicam a VNICs específicas. Recomendamos o uso de NSGs em vez de listas de segurança, porque NSGs permitem separar a arquitetura de sub-rede da VCN dos requisitos de segurança do seu aplicativo.
- Largura de banda do balanceador de carga
Ao criar o balanceador de carga, você pode selecionar uma forma predefinida que forneça uma largura de banda fixa ou especificar uma forma personalizada (flexível), na qual você define uma faixa de largura de banda e permite que o serviço dimensione a largura de banda automaticamente com base nos padrões de tráfego. Com qualquer uma das abordagens, você pode alterar a forma a qualquer momento após criar o balanceador de carga.
Considerações
Considere os pontos a seguir ao implantar essa arquitetura de referência.
- DesempenhoConsidere os itens a seguir ao implementar a arquitetura de referência para detectar e gerenciar instalações Java e aplicativos java em instâncias gerenciadas on-premises.
- O JMS usa o Agente para exfiltrar os metadados Java (o tráfego de rede e a configuração cuidadosa do firewall são uma consideração).
- O agente requer a versão mais recente do JRE 8 para ser executada na instância gerenciada.
- O agente requer 512 MB de memória heap livre na instância gerenciada.
- O agente competirá com o aplicativo pela CPU na instância gerenciada.
Os metadados exfiltrados estão disponíveis no seu objeto de log. O JMS processa os metadados para gerar insights. Esses insights e métricas são armazenados no banco de dados Oracle Autonomous Transaction Processing de propriedade do serviço. Você pode usar a API para consultar o serviço para obter insights históricos sobre Java implantado em seu ambiente. O JMS não é um sistema em tempo real. Pode haver latência fornecendo insights atuais e históricos devido ao carregamento do serviço por várias outras consultas de clientes.
- Segurança
Use políticas para restringir quem pode acessar os recursos do OCI (Oracle Cloud Infrastructure) em sua empresa e como eles podem acessá-los. Os metadados Java exfiltrados do seu ambiente em um objeto de log pertencente à sua empresa. O JMS processa esses metadados e os insights são apresentados a você. Os insights são armazenados no banco de dados do Oracle Autonomous Transaction Processing. Os relatórios gerados são armazenados no OCI Object Storage.
A criptografia é ativada para o OCI Object Storage por padrão e não pode ser desativada.
- Disponibilidade
O JMS foi designado como um serviço de categoria 10 com um objetivo de nível de serviço publicado de 3'9s (99.9).
- Custo
O JMS é um serviço gratuito. Os recursos básicos para monitorar e consultar insights para Java em seu ambiente estão disponíveis para todos. Os recursos avançados que envolvem o gerenciamento de Java em seu ambiente só estão disponíveis para assinantes do Java SE que executam instâncias gerenciadas on-premises. A versão completa do recurso JMS também está disponível quando você executa toda a sua carga de trabalho na OCI.
Se você tiver instâncias gerenciadas on-premises e usar cargas de trabalho Java mínimas, poderá achar aceitável trabalhar com JMS dentro dos limites da camada gratuita da OCI (evitando o custo mensal mínimo do custo de computação, armazenamento e saída de rede).
Explorar Mais
Vá para Configurar o Java Management Service para monitorar o uso do Java em um host do Oracle Linux para configurar e ativar o monitoramento do uso do Java em suas máquinas do Oracle Linux.
-
Estrutura bem arquitetada para o Oracle Cloud Infrastructure
- Estimador de Custos do Oracle Cloud
- SDK (Software Development Kit) do Oracle Cloud Infrastructure para JMS (GitHub)
- Oracle Cloud Infrastructure Cloud Adoption Framework
- Autonomous Database
- Oracle Cloud Infrastructure Identity and Access Management
- Java Management Service
- Agente do Oracle Cloud
- Management Agent
- Objetivos de Nível de Serviço para Serviços de Nuvem Pública Oracle PaaS e IaaS
- Conta do Oracle Cloud Free Tier