page_title: BOSH (software)
section_title: Architecture
hierarchical_section_title: BOSH (software) / Architecture
caption_attribution_description: BOSH architecture
context_page_description: BOSH is an open-source software project that offers a toolchain for release engineering, software deployment and application lifecycle management of large-scale distributed services. The toolchain is made up of a server and a command line tool. BOSH is typically used to package, deploy and manage cloud software. While BOSH was initially developed by VMware in 2010 to deploy Cloud Foundry PaaS, it can be used to deploy other software. BOSH is designed to manage the whole lifecycle of large distributed systems.
  Since March 2016, BOSH can manage deployments on both Microsoft Windows and Linux servers.
  A BOSH Director communicates with a single Infrastructure as a service that provides the underlying networking and virtual machines. Several IaaS providers are supported: Amazon Web Services EC2, Apache CloudStack, Google Compute Engine, Microsoft Azure, OpenStack, and VMware vSphere.
  To help support more underlying infrastructures, BOSH uses a concept of Cloud Provider Interface. There is an implementation of the CPI for each of the IaaS listed above. Typically the CPI is used to deploy VMs, but it can be used to deploy containers.
context_section_description: A BOSH installation is made of several separate components that can possibly be split across different VMs or containers:
  A Director that is the “brain” of the server
  The director database, made of a PostgreSQL instance, a Redis instance and a Blobstore for storing compiled packages and jobs
  A Health Monitor that keeps track of instances (VMs or containers) status
  Many BOSH agents, one on each deployed instance
  A NATS message bus for connecting the Director, the Health Monitor, and all the deployed BOSH agents
  A CPI (Cloud Provider Interface), which is just an executable binary conforming to some specific API
  A BOSH managed environment usually centers around the Director deployed on a VM.
caption: BOSH Architecture[4]
exif: {}