web infrastructure in a box #10
Overview
This bundle is an example of an at scale web infrastructure using a three tier system. Each tier comprised of the following elements:
Loadbalancer
The first tier, the loadbalancer, is using NGiNX as a proxy, a cache, and load balancer. This is being achieved through the nginx-proxy charm. The charm will properly handle multiple services when connected and properly route traffic to each.
Application
This tier is comprised of two services: NGiNX webserver serving static content and Node.JS running the backend code. Each service group can be scalled accordingly using Juju to accomodate load and demand. In this bundle the application being served is Juju Academy an open source walkthrough for using Juju.
Database
Finally, the database tier is represented using MongoDB a NoSQL database engine. This charm can be scaled in to a replicaset or easily reconfigured to use shards.
Usage
If you're viewing this from the Juju GUI simply select the Deploy option and your bundle deployment will be under way. To deploy this file after downloading it drag and drop the bundles.yaml file to your Juju GUI to begin deployment.