Apache Mesos abstracts compute resources like CPU, memory, and storage from physical or virtual machines, enabling distributed systems to easily build and run applications in a fault-tolerant and elastic way. It provides scalability to 10,000s of nodes, fault tolerance through replicated masters and slaves using ZooKeeper, support for Docker containers, isolation between tasks using Linux containers, and scheduling of multiple resources like memory, CPU, disk and ports. It also includes Java, Python and C++ APIs and a web UI to view cluster state.