Configuring the multi-site replication of AFM to cloud object storage

Consider the following points for the configuration:
  • The multi-site replication of AFM to cloud object storage is enabled by default and is managed by using the afmObjPIOCtl parameter. For more information, see mmchconfig command.
  • You can combine cloud object storage of different providers by using the same protocol for all. For example, any of Amazon S3 and IBM Cloud® Object Storage buckets CEPH Object storage can be combined. Amazon S3 for AWS and Azure buckets cannot be combined.
  • Create buckets with the same name across all chosen cloud object storage from providers before you establish AFM to cloud object storage fileset relations.
  • The multi-site replication feature is supported only in the manual updates (MU) mode. In this mode, you can manage applied updates, which helps for strategic management of data replication processes.

    Start of changeThis feature is supported on IBM Storage Scale Advanced Edition, IBM Storage Scale Data Management Edition, or IBM Storage Scale Erasure Code Edition.End of change

  • When a bucket with data exists and the AFM to cloud object storage relationship is created, then the relation is created by using AFM to cloud object storage multi-site replication data can be downloaded only from the first target and can subsequently uploaded to all other targets by using mmafmcosctl upload --all command. For more information, see mmafmcosctl command.
  1. Create a bucket with the same name in a respective cloud object storage of a provider.
    In this example, the demomsr bucket is created on Amazon S3 and IBM Cloud Object Storage.
  2. Add respective access and secret keys for the created buckets.
    # mmafmcoskeys demomsr:s3.us-east-1.amazonaws.com set AKIA2XXXXXXFQWFW47DX r9HZC+fWdgXXXXXXJSsItWrvwlmglBibtp
    # mmafmcoskeys demomsr:s3.us-east.cloud-object-storage.appdomain.cloud set 503ddXXXXXX27bab2653167226 27ca1203XXXXXX596f4819cd4d24ea3e332
    55cda27
  3. Create a multi-target map by using the mmafmconfig command.
    # mmafmconfig add demomsrmap1  --multi-target-map s3.us-east.cloud-object-storage.appdomain.cloud/c7f2n02,s3.us-east-1.amazonaws.com/c7f2n03
    A sample output is as follows:
    mmafmconfig: Command successfully completed
    mmafmconfig: Propagating the cluster configuration data to all affected nodes.  This is an asynchronous process.
    Note: The AWS endpoint in the map is first target. If data exists in a bucket, the endpoint can be used as the first target to download the data.
  4. Create AFM to cloud object storage relation in the MU mode by using the export map.
    # mmafmconfig add demomsrmap1  --multi-target-map s3.us-east.cloud-object-storage.appdomain.cloud/c7f2n02,s3.us-east-1.amazonaws.com/c7f2n03  --no-server-resolution
    A sample output is as follows:
    mmafmconfig: Command successfully completed
    mmafmconfig: Propagating the cluster configuration data to all affected nodes. This is an asynchronous process.
  5. Create a few files.
    • dd if=/dev/urandom of=/gpfs/fs1/demomsrfileset/file1  bs=256K count=4 
      4+0 records in
      4+0 records out
      1048576 bytes (1.0 MB, 1.0 MiB) copied, 0.00738335 s, 142 MB/s
    • dd if=/dev/urandom of=/gpfs/fs1/demomsrfileset/file2  bs=256K count=4 
      4+0 records in
      4+0 records out
      1048576 bytes (1.0 MB, 1.0 MiB) copied, 0.00789662 s, 133 MB/s
    • dd if=/dev/urandom of=/gpfs/fs1/demomsrfileset/file3  bs=256K count=4 
      4+0 records in
      4+0 records out
      1048576 bytes (1.0 MB, 1.0 MiB) copied, 0.00747471 s, 140 MB/s
  6. Upload the files by using mmafmcosctl command.
    # mmafmcosctl fs1 demomsrfileset  /gpfs/fs1/demomsrfileset upload  --all
    A sample output is as follows:
    Queued         Failed                TotalData
                                      (approx in Bytes)
             3               0                  3145728 
    Object Upload successfully queued at the gateway.
  7. Verify that the files are uploaded to targets by using any cloud client or one GUI.
    • ./cloudclient ls aws/demomsr
      A sample output is as follows:
      [2024-03-11 13:19:57 EDT]  1.0MiB file1
      [2024-03-11 13:19:56 EDT]  1.0MiB file2
      [2024-03-11 13:19:58 EDT]  1.0MiB file3
    • ./cloudclient ls ibm/demomsr
      A sample output is as follows:
      [2024-03-11 13:19:56 EDT]  1.0MiB file1
      [2024-03-11 13:19:55 EDT]  1.0MiB file2
      [2024-03-11 13:19:57 EDT]  1.0MiB file3