Visão geral
A integração da TI ou de sistemas é a conexão de dados, aplicações, APIs e dispositivos por toda a organização de TI. Por meio de processos de integração, as empresas se tornam mais eficientes, produtivas e ágeis. Quando se trata de transformação digital empresarial, a integração é fundamental (altera essencialmente como os negócios são conduzidos para se adaptar às mudanças do mercado), pois é responsável por fazer com que todos os elementos da TI funcionem bem em conjunto. A integração não só conecta tudo, mas também agrega valor com as novas funcionalidades geradas ao conectar diferentes funções do sistema. Por exemplo, o Apache Kafka é uma plataforma open source que integra fluxos de dados a aplicações para a interação em tempo real.
A integração da TI é diferente da integração contínua (CI), que é uma prática de desenvolvimento em que cópias do código em funcionamento são inseridas em um repositório central compartilhado várias vezes por dia. O objetivo da CI é automatizar a compilação e as verificações para que os problemas sejam detectados antecipadamente, o que agiliza o desenvolvimento.
Continue explorando a integração com a Red Hat
Uma breve história sobre a integração
Com o tempo, os sistemas de TI cresceram e se desenvolveram de tal maneira que começaram a se expandir e se separar. As soluções de um determinado fornecedor não conseguiam mais se comunicar com as de outro. A única certeza era que todo o stack de TI estava conectado de alguma maneira. Portanto, foi necessário organizar essa tecnologia desestruturada para interromper o esforço em dobro, principalmente com relação à implementação e à prática da lógica de negócios.
*Observação: a informação a seguir está sujeita a debates sobre semântica (topologias físicas versus lógicas, abordagens versus arquiteturas ou tecnologias). As explicações abaixo foram elaboradas como uma visão geral.
Integração de aplicações empresariais
Uma solução para toda essa expansão foi a integração de aplicações empresariais (EAI), que é o uso de tecnologias, conjuntos de ferramentas e um framework para implementar integração baseada em mensagens em tempo real entre aplicações. Essas mensagens são acionadas por alterações ou parâmetros incorporados nas aplicações individuais. A EAI era feita de duas maneiras: point-to-point (P2P) ou hub-and-spoke.
No modelo point-to-point (P2P), cada aplicação precisava ser personalizada para interagir com outras aplicações e demais componentes da TI. Tudo isso era personalizado para cada ativo de TI e cada componente a ele conectado. Este é um trabalho monótono e muito sujeito a erros. Para complicar ainda mais, conforme a infraestrutura e as aplicações são atualizadas, esse modelo pode se tornar muito difícil de manter.
Para resolver esse problema, existe o modelo hub-and-spoke, em que as conexões entre aplicações e serviços são realizadas por um broker central, o hub. Os spokes que conectam o hub às aplicações e aos serviços podem ser mantidos individualmente. Com todas as partes da integração feitas pelo hub-and-spokes, as aplicações são mais focadas. A principal desvantagem dessa abordagem é a centralização do hub. Isso torna-se um ponto único de falha no sistema e na comunicação da infraestrutura. Todas as integrações no modelo hub-and-spoke da EAI, pela própria concepção, dependem do hub para funcionar.
O barramento de serviços empresariais
Depois da abordagem hub-and-spoke da EAI, surgiu o Enterprise Service Bus (ESB), uma ferramenta que fornece abstração baseada em mensagens, o que modularizou os serviços entre aplicações.
Um ESB também funciona como hub central, em que todos esses serviços modularizados são compartilhados, roteados e organizados para conectar aplicações e dados. É a melhor opção para o hub-and-spoke da EAI, mas talvez não seja a solução definitiva, porque, conforme as empresas crescem, adicionam ativos e precisam de mais velocidade em todas as suas propriedades e recursos de software.
Agora, você deve imaginar que o ESB é muito similar ao modelo hub-and-spoke. Isso é verdade, mas o ESB tem funcionalidades que os distinguem.
- ESBs são um serviço que usa padrões open source. Isso acaba com a necessidade de escrever interfaces exclusivas para cada aplicação.
- Os serviços de integração podem ser implantados com o mínimo de alterações nas aplicações.
- ESBs contam com o padrão do setor, protocolos abertos e interfaces para facilitar novas implantações.
No entanto, muitas vezes, as implantações de ESB comuns resultam em arquiteturas centralizadas pelos motivos já mencionados no modelo hub-and-spoke: um único local para hospedar e controlar todos os serviços de integração. As implantações e as arquiteturas de ESB centralizadas têm governança central rígida. Portanto, não é possível fornecer soluções mais rápidas e adaptativas, que são a base para as iniciativas de transformação digital. Além disso, muitas vezes, os ESBs se transformam em aplicações monolíticas.
Integração ágil
Até agora, falamos sobre a integração: as tecnologias que fazem com que tudo funcione junto. Mas afinal, o que é integração ágil? Em termos simples, é como a Red Hat vê o futuro de sistemas conectados e a forma como eles viabilizam o trabalho que as equipes de TI realmente precisam realizar para ter sucesso, principalmente com as mudanças cada vez mais frequentes.
A Red Hat acredita que a abordagem tradicional de integração, baseada em equipes centralizadas controlando tecnologias monolíticas, pode impedir o desenvolvimento e o aproveitamento em longo prazo de aplicações distribuídas. Tecnologias de integração tradicionais, como o ESB, oferecem benefícios, como a priorização da segurança e a integridade dos dados. No entanto, também dependem de uma única equipe que defina as integrações para a empresa inteira.
Atualmente, as arquiteturas de aplicações nativas em nuvem levemente acopladas e desenvolvidas com metodologia Ágil e DevOps precisam de uma abordagem de integração igualmente versátil e escalável. Essa é a visão da Red Hat para a integração ágil: uma abordagem de conexão de recursos que combina tecnologias de integração, técnicas de entrega ágil e plataformas nativas em nuvem para aumentar a rapidez e a segurança na entrega de aplicações. Especificamente, a integração ágil envolve a implantação de tecnologias de integração como APIs em containers Linux e a expansão de funções de integração entre equipes diferentes. Uma arquitetura de integração ágil pode ser dividida em três principais funcionalidades: integração distribuída, containers e interfaces de programação de aplicações.
Integração distribuída
- Menores requisitos de TI
- Baseada em padrões
- Orientada a eventos
- Adquirida na comunidade open source
Com isso, você tem FLEXIBILIDADE
Containers
- Nativo em nuvem
- Artefatos Lean, implantados individualmente
- Escalável, altamente disponível
Com isso, você tem ESCALABILIDADE
Interfaces de programação de aplicações
- Endpoints bem definidos, reutilizáveis e gerenciados
- Influência e uso do ecossistema
Com isso, você tem CAPACIDADE DE REUTILIZAÇÃO