Herd of Containers - Saâd Dif

BlaBlaCar's infrastructure journey: From Chef to containerization with Docker, CoreOS, and Fleet, and managing high availability with BGR, PostgreSQL, and more.

Key takeaways
  • BlaBlaCar’s infrastructure is based on containers, using Docker, CoreOS, and Fleet to orchestrate them.
  • They use BGR (Bidirectional Replication) to replicate data across multiple nodes for high availability.
  • PostgreSQL is their main database, with 100GB of data and 50 million travelers using the platform.
  • They used to manage their infrastructure with Chef, but switched to a more container-focused approach.
  • They use Grafana to create dashboards and visualize metrics, with targets defined for specific points.
  • The team uses Prometheus and a custom tool called DGR to handle metrics and alerting.
  • For storage, they use Cassandra, with an emphasis on high availability and scalability.
  • BDR (Bidirectional Replication) is used for disaster recovery, with replication lag being a main concern.
  • The team uses Zookeeper for distributed locking and coordination.
  • They use Elasticsearch for search and filtering, with high availability in mind.
  • Their containers are configured using systemd and etcd, with annotation used to provide summary information.
  • The team is constantly improving their infrastructure, with a focus on performance, scalability, and reliability.