Configure a Grid

A JFrog Grid automatically syncs Project, Access, and Lifecycle entities across all its member sites. The Grid maintains a uniform workspace without manual updates by Platform Admins.

Plan the Grid

Use this general procedure to plan your Grid. This is not a strict sequence of steps, but a checklist of considerations.

  1. Identify Multisite Scenarios: Review your existing subscription topology to identify JPD sites to include in the Grid. Consider the purpose of each site in your SDLC, its geographical location, and the teams it supports.

    • Identify pain points: Do current collaboration or recovery scenarios generate frequent manual updates between sites?

    • Opportunities created by Grid sync: Have you hesitated to implement cross-site collaboration or stage-based Lifecycle processes due to management overhead? Would deployment of new sites benefit your organization?

    Summarize the primary benefits to your organization from the Grid's uniform workspace.
    Which features are immediately important to you?
    What multisite processes can be built on the basis of the Grid?
    Which JPD sites are prime candidates for addition to the Grid?

  2. Grid Topology is always a mesh of peers. Because the Grid syncs many entities on multiple sites to create a single "wall-to-wall" workspace, star or other hierarchical topologies are not supported. This simplifies Grid planning and implementation. You may encounter the following special needs as you plan your Grid configuration:

    • Multiple Grids: The JPD you use to define and monitor the Grid must run the Mission Control service. In most JFrog SaaS subscriptions Mission Control only runs on a single JPD. If your SaaS subscription includes another JPD that runs Mission Control, you can define more than one Grid in the subscription. Consult with your JFrog Customer Success representative. Each JPD site can be a member of only one Grid at a time.

    • JPDs from different subscriptions can be members of a single Grid. You must define a Circle of Trust that includes all JPDs of the Grid. See Prepare Sites to Join the Grid.

  3. Other Federated Services can be deployed to complement or extend the Grid. For example, these federation services sync entities not currently synced by the Grid, and continue to operate normally on sites that are added to a Grid:

    Access Federations sync entities that are also synced by the Grid. To avoid conflicting updates, it is recommended to define JFrog Grid and Access Federation on mutually exclusive groups of sites. For example, use an Access Federation to replicate Access settings to Edge Nodes outside the Grid. In particular:

    • A Grid cannot contain multiple sites in the same Access Federation - the Grid syncs Access entities across its sites, and cannot coexist with updates initiated by the Access Federation service.

    • A Grid member site that is also part of an Access Federation can send and receive updated Access entities to/from other sites in the Access Federation that are not part of its Grid.

    Consult with your JFrog Customer Success representative during planning.

Prepare Sites to Join the Grid

Before you define the Grid, verify that:

  • Candidate JPDs meet Grid requirements.
  • At least one JPD is your subscription's Main site, running Mission Control. You will configure the Grid on this site.
  • All candidate JPDs share a Circle of Trust.

To prepare sites to join the Grid:

  1. Choose the sites in your subscription that you want to add to the Grid.

    • Sites must be part of an Enterprise+ subscription
    • Currently only SaaS sites can be included in a Grid.
    • Select only full-service JPD sites. Edge Nodes are not supported.
    • Select no more than one site of each Access Federation in your subscription.
  2. Identify the Main site of the Grid: The Main site of the Grid is the JPD on which you create and manage the Grid. The Main site JPD must run the Mission Control service. Log in to a JPD in your subscription and go to Administration > Topology > JPD Services.

    • If there is no JPD Services option in the Topology menu, then Mission Control does not run on this JPD. Repeat this step with another JPD in your subscription.
    • If there is a JPD Services page, go to Topology > Grid. This verifies that Mission Control is running, and you can define the Grid on this JPD. This is the Main site JPD.
  3. Review candidate JPDs: On the Main site JPD, go to Administration > Topology > JPD Services. The table lists JPDs that were registered in this JPD. JPDs from this JFrog SaaS subscription are ready to be added to the Grid. JFrog automatically configures a Circle of Trust for all JPDs in the subscription.

  4. To include JPDs from a different subscription in the Grid:

    • In JPD Services register the JPD using its pairing token.
    • Contact your JFrog Customer Success representative to establish the Circle of Trust between the Main site and any JPDs from another subscription.

Configure a Grid

Use this procedure to define a new Grid, or to modify an existing Grid.

You can use Grid API endpoints to perform this procedure. You must be a Platform Admin to perform this procedure.

To configure a grid using the Platform Administration interface:

  1. Verify that all sites of the Grid are live and connected.

  2. Log in to the Main site you used to Prepare the Grid sites.

  3. Go to Administration > Topology > Grid.

    • To define a new Grid, click Create Grid. The Grid Definition pane appears.
    • To modify an existing Grid, click Edit Grid. The Edit Grid pane shows the current Grid configuration.
  4. In the Member Sites tab, do the following:

    • Enter a name in the Grid Name field, such as Grid_CI or Test Sites.
    • Enter a brief description of the Grid that indicates the management purpose of the Grid, or the shared function of the sites you include in this Grid.
    • The Select Sites area lists JPDs that are registered in this JPD and fulfill the criteria to join a Grid. Select the sites that you want to include in the Grid. A site can be a member of only one Grid at a time.

    When you first define the Grid, JFrog generates a unique Grid Key identifier. You cannot modify this value. The Main site on which you define the Grid is always included in the Grid, and cannot be removed.

    When you edit an existing Grid, you can modify the Name and Description fields, and add or remove sites from the Grid.

  5. Click Next. The Review and Create tab lists the sites you added to the Grid. It also lists the Global Entities that will be synced by the Grid and no longer maintained locally on each site. Check the settings you defined.

  6. To create the Grid with these settings, click Create Grid.

    The Grid service checks each site for:

    • Health & Network connectivity
    • Membership in the Circle of Trust
    • Enterprise+ Subscription with Grid entitlement
    • Conflicts with Access Federation

    Grid creation continues only if all selected sites meet these qualifications.

    The Grid service creates the Grid and configures the mesh topology on each site. The Grid service then copies Global Entities between sites so they are identical on all sites. The most recent version of each entity is used (Last Write Wins). Older versions are overwritten during sync, and cannot be restored. See How the Grid Syncs Global Entities.

  7. After initial sync the Grid table displays the member sites of the Grid and their current status.

    If you removed sites from an existing Grid, those sites no longer appear in the table. The Global Entities synced by the Grid are not erased or rolled back, but the Grid no longer updates them on these sites.

How the Grid Syncs Global Entities

The entities that the Grids syncs across its member sites are called Global Entities.

  • Initial Sync: When the Grid is defined, or when sites are added to the Grid, all member sites compare Global Entity values. The most recent value of each Global Entity is copied to all sites of the Grid (Last Write Wins).

  • Ad Hoc Sync: When a change is made to a Global Entity on a member site, this new value is copied to all sites of the Grid.

Both Initial and Ad Hoc syncs overwrite previous values of Global Entities. Older values are not saved, and cannot be restored.

  • When a site is removed from the Grid, it continues to operate based on the most recent values of its Global Entities. The site no longer participates in Grid synchronization: other Grid sites no longer send updates to this site, and it does not publish local changes to its Entities over the Grid.

  • The Grid service does not query or modify sites that are not in the Grid.


Did this page help you?