UNCLASSIFIED - NO CUI

Skip to content
Snippets Groups Projects
Code owners
Assign users and groups as approvers for specific file changes. Learn more.

Big Bang Getting Started

Table of Contents

System Requirements

  • Admin tools

  • Kubernetes cluster

    CPU, Memory, and Disk space vary depending on what is enabled. If everything is enabled, the following is the minimum viable setup:

    • vCores - 8
    • Memory - 32GB
    • Disk Space - 20GB

Flux Installation

Flux v2 must be installed into the Kubernetes cluster before deploying Big Bang. There are three options for doing this:

  1. (Recommended) Deploy officially through Iron Bank

    # The script will do the following:
    #   Check flux prerequisites
    #   Interactively login to Iron Bank and store credentials in Secret
    #   Install flux into Kubernetes cluser using Iron Bank repo
    #   Remove Iron Bank credentials from cluster
    hack/flux-install.sh
  2. Deploy unofficially through Big Bang's Repo

    flux install --registry registry.dsop.io/platform-one/big-bang/apps/sandbox/fluxv2
  3. Deploy for development through DockerHub

    flux install

Configuration Template

A template for configuring multi-cluster environments is provided to assist with getting Big Bang setup correctly. You should make a copy of the ./bigbang folder from the customer Big Bang repository and place it into a Git repository under your control.

Overview

The template is setup to allow you to customize the Big Bang deployment for your environment. The template contains support for two cluster environments, dev and prod, but can be easily extended to more. At a minimum, the following must be configured in the template for a properly working deployment:

  • Big Bang version - allows you to control when to upgrade
  • Environment Git repository - where your copy of the configuration template is located
  • Hostname - the base domain to use for your packages
  • Reference to SOPS private key - See the encryption help for more information.
  • Iron Bank pull credentials

The Configuration Template help contains details on how to setup these items.

If there is additional configuration you want, refer to the configuration help for details.

Environments (Multi-cluster)

In the template, there are two folders used for each cluster environment, base and a named folder (e.g. dev or prod). base is used as a shared folder between all the environments and a <env> folder is specific to an environment. Overrides proceed as follows, with <env> having the highest precedence.

graph LR
  pkg[Package values]-->bb[Big Bang values]-->base[`base` values]-->named[`<env>` values]

Next Steps

Follow the steps in the encryption and configuration documentation to setup the minimum viable configuration for deployment.