Fuzzball Documentation
Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Toggle Dark/Light/Auto mode Back to homepage

Deployment

After setting up a Hosted Zone in Route53 and fulfilling the other prerequisites from the requirements doc, you are ready to subscribe to Fuzzball and perform a deployment in your AWS account.

Due to limitations in the way that Amazon administers Marketplace container images, Fuzzball is currently only available for deployment in the region us-east-1. Please select this region in your AWS account before beginning a new deployment.
If there are any left-over stacks or resources from a previous deployment they may interfere with your ability to deploy a fresh Fuzzball cluster. Please make sure that all stacks, nested stacks, and resources from previous deployments have been fully and successfully deleted before initiating a new one.

Make sure you are logged into your AWS account and navigate to the Fuzzball Cloud Marketplace listing. Review the information paying special attention to the pricing options. When you are ready to subscribe, press the “View Purchase Options” button.

Fuzzball in the Amazon Marketplace

After subscribing to the software, you can press the “Continue to Configuration” button.

Subscribe to software and continue to configuration

From here, select “Helm Chart” as your fulfillment option and select the version of Fuzzball that you want to deploy.

Completed configuration page

The next page will give you a URL to a CloudFormation (CFN) template.

Launch software page

If you click on the URL, it will automatically download the template, but you don’t need to do so. Instead follow the provided link to CloudFormation and copy/paste the URL to the CFN template into the appropriate field on the CloudFormation page.

Paste URL to CFN template into CloudFormation

After clicking “Next” you will be taken to the configuration form. Here, you can supply the values that are specific to your Fuzzball cluster.

CloudFormation specific parameters form

Most of these values are self-explanatory or are adequately explained by the accompanying text in the form itself. There are a few notes below to better explain some of the values.

  • Domain: This is the domain name of the Hosted Zone that you should have configured in Route53 by either purchasing a new domain, or creating a new Hosted Zone and adding it the the DNS records of your existing top-level domain. See the section on setting up a hosted zone with Route53 in the appendices for more details.

  • DomainHostedZoneID: This is the actual ID of the Hosted Zone that you should have configured in Route53.Once again, see the section on setting up a hosted zone with Route53 in the appendices for more details.

  • PostgresEngineVersion: Fuzzball supports the v13.x series of the PostgreSQL engine. New point versions within the v13.x series are regularly available, and older versions are automatically deprecated when newer versions are released. This means that the version that is pre-filled in the CloudFormation form may be deprecated. To avoid this issue, it is recommended that you run the following command and locate the latest version in the v13.x series. In this example, you would place 13.20 in the PostgresEngineVersion field.

$ aws rds describe-db-engine-versions --engine postgres \
    --query 'DBEngineVersions[].EngineVersion' --output json | \
    grep "^\s*\"13\.[0-9]*\""

    "13.15",
    "13.16",
    "13.17",
    "13.18",
    "13.19",
    "13.20",

Once you’ve filled in the appropriate values and pressed next, you will be presented with several optional configuration parameters. You can fill these in as your use-case dictates, and then check the two acknowledgement boxes at the bottom of the page if you understand the permissions you are giving Fuzzball.

Optional configuration screen

After clicking “Next” you will be presented with one more screen to review all of the parameters you provided and create your cluster.

Review and create screen

Once you are satisfied with the options you have chosen you can select “Submit”. You will be presented with a screen to watch your cluster as it is deployed. There are several options available for watching the various services in your stacks and nested stacks as they are deployed.

Creation in progress

During the deployment process, CloudFormation establishes all of the resources necessary to host the Fuzzball stack, and then the Fuzzball Kubernetes operator deploys the Kubernetes Orchestrate platform. These steps take about 90 minutes and 30 minutes respectively, so the entire deployment usually takes around 2 hours to complete.

Once the main stack reports that it is in the Completed state, you can begin configuring and using Fuzzball.