Migração e modernização de aplicação de gestão de RH e Oracle Database de ambiente on-premises para arquitetura MultiCloud: Microsoft Azure App Service (Serverless Docker-Based Managed Service) e Oracle Autonomous Database (Serverless Database)
Neste projeto baseado em um cenário real, simulei a atuação de um Arquiteto Cloud, parte de uma equipe responsável pela migração do workload de uma aplicação que estava conectada em um banco de dados Oracle no ambiente on-premises.
Para isto, precisei seguir algumas premissas:
- A migração poderia usar provedores Oracle Cloud Infrastructure e/ou Microsoft Azure
- Arquitetura MultiCloud era permitida- Banco de dados Oracle deveria rodar em infraestrutura de Exadata
- Banco de dados Oracle deveria usar infraestrutura “auto-gerenciável” (serverless)
- Oracle Cloud Infrastructure usado somente para camada de banco de dados
- Aplicação deveria ser convertida de VM para Container
- Aplicação deveria usar serviço de Container serverless
- Infraestrutura deveria ser provisionada como Código (IaC)
No cenário acima, a aplicação que está no ambiente on-premises é destinada para a gestão de RH, composta por apenas um servidor de aplicação, escrita em Python e está utilizando o Microframework chamado Flash para fazer a parte da lógica de negócio da camada de aplicação em si para o banco de dados Oracle, que roda em um ambiente on-premises, vai
estar em uma máquina virtual.
Para realizar essa implementação, foi preciso, na camada de aplicação,
utilizar o Microsoft Azure App Service para fazer o deploy de forma completamente dockerizada, dentro de um Docker, dentro de um Contâiner. E para concluir focado em cumprir com todas as premissas, na camada de banco de dados, foi utilizado o Oracle Autonomous Transaction Processing que é uma das versões do Autonomous Database, completamente serverless e que roda em cima da plataforma Exadata.