# Introduction to deployment

Buzzy is either installed on-premise or in the cloud. At its core it's a set of Docker images that are typically installed in to [Kubernetes](https://kubernetes.io/) (K8s) environment.

### Table of contents

1. [Buzzy clients](#buzzy-clients)
2. [Buzzy server](#buzzy-server)
3. [Server installation guides](#server-installation-guides)
4. [Hosted installs](#hosted-installs)

***

While Buzzy could be installed as a stand-alone Docker install or Docker Swarm, Kubernetes is typically used to give more robustness, auto-scaling and reliability.

The Buzzy software is comprised of a number of key components/services:

### Buzzy clients

These are typically one of:

* Browser clients like Chrome, Safari, Firefox and Internet Explorer
* Native Apps build as branded native applications that are able to communicate with the Buzzy Server. Buzzy uses React Native to create these native application. It's important to note that a single Buzzy client can house/deliver any Buzzy application, so separate native applications are not required.

### Buzzy server

This is a set of NodeJS micro services:

* Core services - a docker image that handles the core service
* Logging service - docker image that handles all things logging. Logging can be used for analytics - eg who has views a resource, comment etc and logging of other events.
* Database - Mongo based persistent scalable storage. This can be an on premise instance of Mongo or a hosted MongoDB
* Object Storage Service - an AWS S3 compatible S# service. These can be hosted on AWS or on premise with a service like [Minio](https://github.com/minio/minio)
* External Services- there are various external services that a Buzzy server can integrate with. Including 3rd Party REST API end points like Spectrum Spatial, ServiceNow, SalesForce, HCL Connections etc and Single Sign On (SSO) services like Microsoft/Office 365, HCL Connections, Google, Slack etc
* Push Services provided by Google's Firebase and Apple Push Notifications

### Server installation guides

Refer to the navigation menu of this section for specific deployment guides. Since we provide Docker images, the server can be installed into any Kubernetes-based environment - in addition to the ones listed in the navigation menu here, other cloud platforms support Kubernetes too. For example, AWS (non Fargate), [Google Kubernetes Engine](https://cloud.google.com/kubernetes-engine), [Azure Kubernetes Service](https://azure.microsoft.com/en-au/free/kubernetes-service/), [IBM Cloud Kubernetes Service](https://www.ibm.com/au-en/cloud/container-service) and many more - more details coming soon; very similar to HCL Connections since at its core Buzzy's Docker images are deployed into the cloud environments' K8s environments.

### Hosted installs

[Contact the Buzzy team](mailto:support@buzzycompany.com?subject=Buzzy%20Docs:%20Support) for more information about a hosted install.

***
