Microsoft Brings Serverless Computing to Containers
Serverless computing based on containers took a step forward this week, as Microsoft made Azure Container Instances (ACI) generally available on the Microsoft Azure cloud. ACI is a serverless computing framework based on an event-driven architecture optimized for Docker images running on either Linux or Windows.
Gabe Monroy, Microsoft program manager for containers on Azure, says that while serverless computing based on event-driven architectures will make cloud bursting more commonplace, developers need to clearly understand the nature of their application workload before selecting one type of cloud service over another. It’s easier than most developers appreciate to create workloads that, for example, end up with infinite callback looks to multiple application programming interfaces (APIs), says Monroy.
ACI is an attractive option because it allows developers to invoke compute resources on a more granular, per-second pricing model instead of committing to using a virtual machine for a full hour. In addition to cloud bursting, use of serverless computing frameworks also is being applied to more traditional forms of batch processing. Serverless computing frameworks are gaining traction because they eliminate the need to manage the underlying virtual machines as well the cluster they are deployed on. Additional compute, storage and networking resources are made available to applications instantly.
As big a boon that capability may be, however, Monroy notes that cloud computing will continue to be heterogeneous. Developers will leverage APIs to invoke a broad range of services that they will mix and match depending on the attributes of the application. DevOps teams should resist getting overly infatuated with one type of cloud service or model because there’s no silver bullet when it comes to cloud computing, he says.
Longer term, Monroy says those options will also include containers running on bare-metal servers as some organizations look to remove the overhead associated with running traditional hypervisors. Containers represent the rise of new type of computer primitive, he notes. However, most IT organizations still don’t fully appreciate the impact they will have on not just IT processes, but also how IT departments ultimately are organized, he says, noting IT shops that have embraced Linux are further along than their Windows counterparts when it comes to DevOps processes. But it’s only a matter of time before the culture in IT organizations running Windows similarly evolves.
Most IT organizations today have at the very least dabbled with integrated DevOps processes. But as IT organizations move to embrace microservices enabled by containers, DevOps processes will be a prerequisite for success. It’s simply not possible to manage thousands of containers running on cloud services and local virtual machines along with physical servers relying on legacy IT management processes.
The good news is that platforms such as ACI and Kubernetes continue to abstract away the underlying IT infrastructure. In theory, that means more time and energy can be devoted to managing the application development and deployment process. In fact, from an IT organizational perspective the total number of people working in IT might remain constant, while the total number of workloads being managed continues to exponentially expand.