Anvil: Verifying Liveness of Cluster Management Controllers
Xudong Sun, Wenjie Ma, Jiawei Tyler Gu, Zicheng Ma, Tej Chajed, Jon Howell, Andrea Lattuada, Oded Padon, Lalith Suresh, Adriana Szekeres, Tianyin Xu
摘要
Modern clouds depend crucially on an extensible ecosystem of thousands of controllers, each managing critical systems (e.g., a ZooKeeper cluster). A controller continuously reconciles the current state of the system to a desired state according to a declarative description. However, controllers have bugs that make them never achieve the desired state, due to concurrency, asynchrony, and failures; there are cases where after an inopportune failure, a controller can make no further progress. Formal verification is promising for avoiding bugs in distributed systems, but most work so far focused on safety, whereas reconciliation is fundamentally not a safety property.
This paper develops the first tool to apply formal verification to the problem of controller correctness, with a general specification we call eventually stable reconciliation, written as a concise temporal logic liveness property. We present Anvil, a framework for developing controller implementations in Rust and verifying that the controllers correctly implement eventually stable reconciliation. We use Anvil to verify three Kubernetes controllers for managing ZooKeeper, RabbitMQ, and FluentBit, which can readily be deployed in Kubernetes platforms and are comparable in terms of features and performance to widely used unverified controllers.
问问这篇 Paper
智能体会读完全文。
Lune 把这篇 Paper 索引到了最后一个公式,引用它的顶会 Paper 也一样。你提问,回答直接引用原文。
引用它的顶会 Paper22
- Basilisk: Using Provenance Invariants to Automate Proofs of Undecidable ProtocolsTony Nuda Zhang, Keshav Singh, Tej Chajed, Manos Kapritsos 等OSDI 2025 · 被引用 9 次
- Sharpen the Spec, Cut the Code: A Case for Generative File System with SYSSPECQingyuan Liu, Mo Zou, Hengbin Zhang, Dong Du 等FAST 2026 · 被引用 9 次
- An Empirical Study on Kubernetes Operator BugsQingxin Xu, Yu Gao, Jun WeiISSTA 2024 · 被引用 7 次
- Deriving Semantic Checkers from Tests to Detect Silent Failures in Production Distributed SystemsChang Lou, Dimas Shidqi Parikesit, Yujin Huang, Zhewen Yang 等OSDI 2025 · 被引用 6 次
- Kivi: Verification for Cluster ManagementBingzhe Liu, Gangmuk Lim, Ryan Beckett, Philip Brighten GodfreyUSENIX ATC 2024 · 被引用 6 次
它引用的顶会 Paper17
- Twine: A Unified Cluster Management System for Shared InfrastructureChunqiang Tang, Kenny Yu, Kaushik Veeraraghavan, Jonathan Kaldor 等OSDI 2020 · 被引用 107 次
- Verus: Verifying Rust Programs using Linear Ghost TypesAndrea Lattuada, Travis Hance, Chanhee Cho, Matthias Brun 等OOPSLA 2023 · 被引用 86 次
- DistAI: Data-Driven Automated Invariant Learning for Distributed ProtocolsJianan Yao, Runzhou Tao, Ronghui Gu, Jason Nieh 等OSDI 2021 · 被引用 76 次
- Finding Invariants of Distributed Systems: It's a Small (Enough) World After AllTravis Hance, Marijn Heule, Ruben Martins, Bryan ParnoNSDI 2021 · 被引用 69 次
- Storage Systems are Distributed Systems (So Verify Them That Way!)Travis Hance, Andrea Lattuada, Chris Hawblitzel, Jon Howell 等OSDI 2020 · 被引用 52 次
相关 Paper
- Welder: Compositional Liveness Verification of Cluster Control PlanesZhizhen Cathy Cai, Nikhil Date, Jiawei Tyler Gu, Cody Rivera 等SOSP 2026
- Garen: Reliable Cluster Management with Atomic State ReconciliationMingi Kim, Ahnjae Shin, Jaewoo Maeng, Myeongjae Jeon 等EuroSys 2026 · 被引用 1 次
- ZENITH: Towards A Formally Verified Highly-Available Control PlanePooria Namyar, Arvin Ghavidel, Mingyang Zhang, Harsha V. Madhyastha 等SIGCOMM 2025 · 被引用 1 次
- Automatic Reliability Testing For Cluster Management ControllersXudong Sun, Wenqing Luo, Jiawei Tyler Gu, Aishwarya Ganesan 等OSDI 2022 · 被引用 44 次
- Multi-Grained Specifications for Distributed System Model Checking and VerificationLingzhi Ouyang, Xudong Sun, Ruize Tang, Yu Huang 等EuroSys 2025 · 被引用 4 次
