Modern DevOps organizations require a high degree of automation to achieve software stability at frequent changes. Further, there is a need for flexible, timely reconfiguration of the infrastructure, e.g., to use pay-per-use infrastructure efficiently based on application load. Infrastructure as Code (IaC) is the DevOps tool to automate infrastructure. However, modern \emph{static IaC} solutions only support infrastructures that are deployed and do not change afterward. To implement infrastructures that change \emph{dynamically} over time, static IaC programs have to be (updated and) re-run, e.g., in a CI/CD pipeline, or configure an external orchestrator that implements the dynamic behavior, e.g., an autoscaler or Kubernetes operator. Both do not capture the dynamic behavior in the IaC program and prevent analyzing and testing the infrastructure configuration jointly with its dynamic behavior.
To fill this gap, we envision \emph{dynamic IaC}, which augments static IaC with the ability to define dynamic behavior within the IaC program. In contrast to static IaC programs, dynamic IaC programs run continuously. They re-evaluate program parts that depend on external signals when these change and automatically adjust the infrastructure accordingly. We implement DIaC as the first dynamic IaC solution and demonstrate it in two realistic use cases of broader relevance. With dynamic IaC, ensuring the program's correctness is even harder than for static IaC because programs may define many target configurations in contrast to only a few. However, for this reason, it is also more critical. To solve this issue, we propose automated, specialized property-based testing for IaC programs and implement it in ProTI.
Thu 17 NovDisplayed time zone: Beijing, Chongqing, Hong Kong, Urumqi change
11:00 - 12:30 | Session 2Doctoral Symposium at ERC Active Learning Room Chair(s): Michael Pradel University of Stuttgart | ||
11:00 30mTalk | This Is Your Cue! Assisting Search Behaviour with Resource Style Properties Doctoral Symposium Deeksha M. Arya McGill University DOI | ||
11:30 30mTalk | Infrastructure as Code for Dynamic Deployments Doctoral Symposium Daniel Sokolowski University of St. Gallen Link to publication DOI Pre-print | ||
12:00 30mTalk | Automated Capacity Analysis of Limitation-Aware Microservices Architectures Doctoral Symposium Rafael Fresno-Aranda University of Seville DOI |