Serverless & Managed Solutions
- Ian Christopher (Deactivated)
Overview
Guidance Summary
- Overall Status: DRAFT and FOR DISCUSSION ONLY
- Alliance Review: Alliance in general agreement. SME & product-owner consultations remaining.
- Governance Review: Unreviewed by TAG.
- Dissemination Status: Will be new guidance upon publication.
- Implementation Status: Alliance products are architected to support this guidance, though some work remains.
Background
When deploying in the cloud, Ed-Fi technology should be deployed on serverless and managed solutions where possible.
Prior to the migration to .NET Core, running the Web API in a Linux container was not possible. At that time, it was common to create a Windows Server VM (virtual machine) and deploy the API via IIS. Today, with full .NET Core support, the API should be deployed on a serverless or managed solution. This means lower costs and less administrative burden. Refer to the Ed-Fi Academy reference architectures for guidance on which solutions to use in each of the 3 major cloud providers.
Leveraging serverless and managed solutions in the cloud means spending less time and resources maintaining infrastructure. Serverless solutions such as Google Cloud Run enable an engineer to deploy the Ed-Fi Platform without having to worry about managing hardware, OS updates, SSL certificates, and more. With Cloud Run, you provide a Docker image, and Google deploys the application while handling auto-scaling as traffic increases, scaling to zero at times of no traffic, load balancing across multiple containers, and provides a HTTPS endpoint automatically.
Managed solutions such as AWS RDS provides users with automated backups, automated patching and upgrades, and auto-provisioning of additional storage as needed. Compute and memory can be adjusted as needs change without any downtime.
This page:
Best practice content: