Set Up Cold Storage Using the Platform UI

JFrog Platform Administration Documentation

Content Type
Administration / Platform
ft:sourceType
Paligo

Step 1: Set up a Live Artifactory Instance (recommended but not mandatory)

The Live Artifactory instance can be a newly installed instance or an existing instance that is configured as follows:

  1. Open the Artifactory System YAML file of the instance.Artifactory System YAML

  2. Add the shared.jfrogColdStorage.coldInstanceEnabled property and set it as false to configure the instance as the Live instance.

Step 2: Create a Cold Artifactory Instance

On the Artifactory instance that you are designating as the Cold instance, perform the following steps:

  1. Update the Artifactory System YAML fileArtifactory System YAML:

    Add the shared.jfrogColdStorage.coldInstanceEnabled property and set it as true to configure the instance as the Cold instance.

    shared:
        jfrogColdStorage:
            coldInstanceEnabled: true
  2. Configure the Archive Binary Provider:

    When setting up the Cold instance, you will need to connect it to a binary storage provider. You can use one of the following storage options:

    • Self-hosted Storage: If you wish to use the local file system, see Configuring the Filestore.Filestore Configuration

    • Amazon S3 Glacier Cloud Storage: If you wish to use Amazon S3 Glacier, follow these steps:

      1. Open the binarystore.xml configuration file located in the $JFROG_HOME/artifactory/var/etc/artifactory folder.

      2. Specify the s3-storage-v3-archive chain.

      3. Within the chain, define the standard Amazon S3 Binary Provider template as outlined in the section Amazon S3 Official SDK Template and configure the parameters as per your requirements.

        Example

        s3-storage-v3-archive Template

        <config version="1">
            <chain template="s3-storage-v3-archive"/> //Dedicated Cold Storage parameters
            <provider type="s3-storage-v3" id="s3-storage-v3"> //Based on s3-storage-v3 Template
                <bucketName>artifactory-ice-test-regular-bucket</bucketName>
                <path>artifactory-on-ice</path>
                <credential>creds</credential>
                <identity>ident</identity>
                <provider.id>aws-s3</provider.id>
                <region>eu-central-1</region>
            </provider>
        </config>
  3. Restart the Cold Artifactory instance:

    After making the above changes, restart the Cold Artifactory instance for the changes to take effect.

Disabling Cold Artifact Storage feature

The Cold Storage feature is enabled by default. If you wish to disable the feature, in the Artifactory System Properties file, set artifactory.retention.enabled as false.Artifactory Configuration Files

Custom Base URL

It is recommended that you configure a Custom Base URL for this Artifactory instance. A custom URL base is especially useful when the system is running behind a proxy. For more information, see General System Settings.

Step 3: Add the Live and Cold Artifactory Instances to Mission Control

In this step, you will need to add both instances to Mission Control. If Mission Control is enabled in the instance that you have designated the Live instance, then you will only need to do this step for the Cold instance.

  1. First, create a binding token for Mission Control by following the steps in Pairing Tokens (available from Artifactory 7.29.7).

  2. Next, add the Cold Artifactory instance to Mission Control by following the steps detailed in Registering a Platform Deployment.

  3. If the Live Artifactory instance you set up above is not the JPD that has Mission Control enabled, add the Live Artifactory instance to Mission Control in the same way.

Remember to copy the token you generate to a location where you will be able to find it easily.

Step 4: Bind the Live and Cold Artifactory Instances

Available from Artifactory 7.38.4

After completing the previous two steps, your Platform Deployments will have two JPDs that are both connected to the Mission Control microservice: the Live instance and the Cold instance. The next step will be to bind the two instances to each other so that the Cold Artifactory instance will trust and receive requests from the Live Artifactory instance. You can only bind one Live instance to one Cold instance, and this is a one-way trust.

Perform the following steps on the Artifactory instance that you have set as the Live instance.

  1. From the Administration module, click Platform Deployments | Bindings.

  2. Click the Cold Storage tab. In the top right corner, click + Add Binding, and select Cold Storage from the dropdown list.

    add-cold-storage-binding.png

    This displays the Create Binding window.

    create-cold-storage-binding-empty.png
  3. From the Source JPD dropdown, select the Live instance.

  4. From the Target JPD dropdown, select the Cold instance.

  5. Click Apply.

    The Summary displays the target and source you selected.

    create-cold-storage-binding.png
  6. Click Create to create the new binding.

    The binding results are displayed.

    cold-storage-binding-results.png