Microsserviços se referem aos milhares de padrões da Web, linguagens de programação, plataformas de banco de dados e componentes de servidores independentes da Web que são encontrados no ciclo de vida de desenvolvimento de software contemporâneo como ferramentas de desenvolvedor. Da perspectiva tradicional, as empresas já focaram na arquitetura orientada a serviços (SOA), que representava a tecnologia de hardware e software integrada a partir de uma única empresa de TI. Com os microsserviços, há milhares de componentes diferentes recebendo suporte em aplicativos de software em nuvem e servidores da Web de empresas de desenvolvimento independentes ou comunidades de código aberto. Os departamentos de TI precisavam de uma nova filosofia para gerenciar os microsserviços que estão em produção em ambientes isolados com multilocatários, em data centers de nuvem pública em hiperescala. Para solucionar isso, adotaram amplamente as soluções de virtualização com padrões SDDC orientadas pela tecnologia de rede de serviços. Os microsserviços formam os blocos ou fundamentos básicos, plataformas e estruturas fundamentais sobre os quais o código é criado e operado em servidores da Web em um data center na nuvem.
Os microsserviços funcionam principalmente aumentando a funcionalidade disponível em um servidor da Web com relação ao que é fornecido pelo sistema operacional padrão, rede ou plataforma de gerenciamento de data center. Alguns microsserviços são extensões de pilha de servidores da Web, como plataformas de linguagem de programação e estruturas de banco de dados. Para desenvolver aplicativos PHP e MySQL, o ambiente do servidor da Web deve ser configurado com suporte da plataforma LAMP. As soluções baseadas em microsserviços competem amplamente com a arquitetura orientada a serviços fornecida pela Microsoft, Oracle, IBM e outras grandes empresas de TI com relação às distribuições de código fechado. Agora, as empresas devem oferecer suporte a vários aplicativos desenvolvidos em PHP, Python, Ruby-on-Rails, Java, C ++, ASP.net etc. em tandem ou simultaneamente na produção. Em outras situações, um data center pode ter várias estruturas de bancos de dados em operação via VMs no hardware com multilocatários. Um servidor da Web deve ser configurado para oferecer suporte a extensões personalizadas para streaming de mídia, integrações de API ou ao adicionar utilitários proprietários para técnicas de análise. Sempre que todos esses serviços terceirizados e de código aberto são agrupados, eles equivalem a milhares de microsserviços em um servidor da Web típico em produção, sendo então, multiplicados por milhões de VMs em hiperescala em um ambiente de serviço de computação em nuvem pública.
O uso dos microsserviços como termo se desenvolveu principalmente após a era da Web 2.0, pois a TI corporativa precisava de uma nova maneira de conceituar o ambiente de desenvolvimento de software para refletir o ecossistema atual e as práticas recomendadas. O uso de microsserviços para o desenvolvimento de aplicativos da Web e móveis levou a uma complexidade aumentada para os administradores de data center oferecerem suporte nas operações da empresa. Em vez de simplesmente contratar a Oracle, a IBM ou a Microsoft para todas as soluções de software e data center necessárias, as empresas agora precisam lidar com um cenário com milhões de projetos de código aberto que oferecem soluções de nível empresarial para uso comercial. Muitos padrões da Web têm versões concorrentes de diferentes empresas. Muitas linguagens de programação e bancos de dados abrangem a mesma funcionalidade usada. Cada equipe de desenvolvimento tem suas próprias preferências por ferramentas e métodos de programação. O gerenciamento de toda essa complexidade, na era da nuvem e em um departamento de TI corporativo unificado, levou à necessidade de oferecer suporte a microsserviços no desenvolvimento profissional de software em muitas organizações complexas de todo o mundo.
A melhor maneira de entender a arquitetura de microsserviços é imaginar as camadas de software como uma pilha de servidores da Web. O sistema operacional pode ser Windows, Linux ou BSD para o servidor da Web. Existem ferramentas para gerenciamento de data center e balanceamento de carga na rede. As opções incluem Apache, IIS, NGINX, Caddy, Tomcat etc. para servidor da Web. A seguir, é apresentada a camada para suporte à linguagem de programação instalada, como PHP, ASP.net, Python, Ruby, Perl, Java e Go. Depois, a camada para estruturas de banco de dados como MySQL, MSSQL, PostgreSQL e MongoDB. Outra camada para utilitários de cache, como Varnish, Redis, CDNs e recursos de otimização. Outras camadas de suporte incluem servidores de borda, plataformas sem servidor e integração de AI/ML. Em um ecossistema de nuvem pública, existem milhares de microsserviços operando simultaneamente que precisam ser gerenciados na rede de serviços para oferecer suporte à interoperabilidade, roteamento e comunicação.
A arquitetura orientada a serviços (SOA) geralmente vem de um único fornecedor ou inclui um pacote de soluções de hardware e software que podem ser implementadas para uma necessidade bem definida do setor. A SOA oferece suporte ao data center, ao servidor da Web e à camada de pilha por meio de diferentes distribuições ou modelos de produtos. A SOA está disponível em soluções proprietárias e de código aberto pelo fornecedor. Os equipamentos de rede e as conexões de fibra são gerenciados de maneiras diferentes nos data centers em nuvem e nos data centers privados internos. Os microsserviços são necessários para a inovação no estado atual de desenvolvimento de software. Até as maiores empresas precisam adotar microsserviços para dar suporte às equipes de programação Agile que lançam novos aplicativos da Web/móveis no mercado. Nesses casos, o suporte ao produto pode incluir milhares de marcas ou domínios. Os microsserviços são frequentemente necessários para a modernização e a conteinerização do software corporativo legado.
O armazenamento definido por software da VMware é uma arquitetura de data center de armazenamento simples e inteligente, que se alinha às demandas de negócios e aplicativos. Saiba mais hoje mesmo.
Estabeleça as bases de um modelo operacional orientado a serviços e orientado a negócios usando as práticas recomendadas de definição de serviços de computação em nuvem.
A virtualização é a maneira mais eficaz de reduzir as despesas de TI e, ao mesmo tempo, aumentar a eficiência e a agilidade para empresas de todos os portes.
As organizações de TI atuais usam "projetos" como constructo para gerenciar o trabalho. Adotar uma orientação ao serviço pode garantir um aprovisionamento mais rápido e reduzir custos.
Conjunto de nuvem empresarial é uma coleção integrada de produtos para gerenciar nuvens híbridas e fornecer aprovisionamento por autoatendimento.
Você deve usar as APIs do NSX Manager para criar uma definição de serviço e um endpoint virtual para o appliance em sua nuvem pública.