Brainboard's documentation
Go to the app ↗
  • Welcome
  • Getting started
    • Fast track
    • Start with a template
    • Start with AI
    • Use cases videos
    • Brainboard philosophy
  • Cloud design
    • Left bar
      • Cloud resources
      • Input & output
    • Design area
      • Node
      • ID card
      • Connectors
      • Versioning
      • Graphical options
    • One action
    • Code Edition
  • Data
    • Data structure
      • Project
      • Environment
      • Cloud architecture
        • Terraform files
        • Readme file
        • Architecture Synchronization
        • Remote backend
      • Template
    • Cloud providers
      • Supported cloud providers
      • Customize provider configuration
      • Unsupported cloud providers
    • Terraform / OpenTofu
      • Modules
        • Module
        • Import modules
        • Manage module
        • Terraform registry credentials
        • Use modules
    • Disaster recovery
  • Automation
    • CI/CD engine
    • Supported plugins
      • Terraform
      • Security
        • Trivy
        • Tfsec
        • Terrascan
        • OPA
        • Checkov
      • Infracost
      • Notifications
        • Email
        • Slack
        • Microsoft Teams
      • Webhooks
    • Pipelines
    • Workflow templates
    • Drift detection
      • Types of drift
      • Remediation
    • Self-Hosted Runner
      • Deploy runner with Kubernetes
      • Deploy runner with docker-compose
  • Settings
    • Overview
    • Authentication
      • Login into Brainboard
      • Single sign-on (SSO)
    • Account management
    • Organization
    • Members
    • Teams
    • Roles & Permissions (RBAC)
      • Level of access
      • Organization RBAC
      • Project RBAC
    • Integrations
      • Git configuration
        • GitHub
        • Azure DevOps (ADO)
        • Bitbucket
        • GitLab
        • How to use
      • Cloud providers
        • AWS
        • Azure
        • GCP
        • OCI
  • Security
    • Data managed by Brainboard
    • SOC 2 Type II
    • Role Based Access Control
  • Help & FAQ
    • Shortcuts
    • FAQ
    • Migration
      • Import from cloud provider
    • Support
    • Glossary
  • Changelog
Powered by GitBook
On this page
  • Definition
  • Create a synced environment
  • View synced environments
  • Un-sync environment
  • Best practices

Was this helpful?

Edit on GitHub
  1. Data
  2. Data structure
  3. Cloud architecture

Architecture Synchronization

PreviousReadme fileNextRemote backend

Last updated 8 months ago

Was this helpful?

Definition

When managing cloud infrastructures at scale, you may want to keep your environments (e.g. QA, staging, prod...) close to each other.

You can achieve this by synchronizing an architecture across multiple environments, which means that any modification you do on one environment will be automatically replicated/synchronized with all synced environments except the values of the variables that are supposed to be specific to each env.

This allows you to maintain a consistent infrastructure across all your development, testing, and production environments.

Create a synced environment

Here are the steps you can follow to implement environment sync in Brainboard:

  1. Create the design and Terraform configuration for a specific architecture within a specific environment, for example: dev.

  2. Go to the project selector and select hover the architecture that you want to sync and click on the clone button:

  3. Follow the steps as below

    • Add the target environment where you want to clone your architecture. For example QA.

    • Choose a new name for the architecture

    • Click on the sync button to keep the source and destination architecture synced

    • Apply the changes by clicking on next

View synced environments

Once the architecture is synced, you see a new button in the options bar to indicate that:

When you click on the sync button you can see all synchronized environments for this architecture.

Un-sync environment

Best practices

  • Use this process to apply changes to all environments consistently. For example, you might use Brainboard CI/CD engine to apply different pipelines to different environments while keeping the design of the cloud architecture consistent through all environments.

    • Refer to the CI/CD Engine to know more about it.

  • Use variables and other configuration options to customize each environment as needed. For example, you might use different values for variables like the number of instances or the size of a database depending on the environment.

By using Brainboard to implement environment sync, organizations can ensure that their infrastructure is consistent across different environments, reducing the risk of a drift, configuration errors and improving overall reliability.

The variables values are not synced so you can use different values for different environments. Refer to the to know more about the variables

To un-sync a specific architecture or environment, click on the sync button available in the options bar, then click on the Unsync this architecture to unlink it from the synchronized environments.

Variables
target
name
sync
last
sync button
synced envs