Setting up AWS S3 Client Connector (Hub)

AWS S3 offers efficient and unlimited storage for large media files in the cloud. Zoom can directly integrate with S3 storage and manage large files in the cloud, without the need for any on-premises shared storages like a NAS or SAN. To allow users to work transparently with the AWS S3 storage, Zoom ships with a built-in AWS S3 Client Connector (C3 Hub) that can be set up on the user’s workstation. The AWS S3 Client Connector allows users working remotely or from home-office to transfer large files, including footage, camera cards, and high-resolution exports, between their workstation and AWS S3. There is no need for the user to install a third party S3 client, it’s all handled transparently by the Zoom S3 Client Connector. The connector is designed to break up large files into chunks and transfer them in parallel for maximum speed, users also do not need specialized third party WAN File Accelerator solutions to transfer large files as fast as possible between their workstations and the cloud.

Prerequisites

  • Installer for Zoom Client 7.6.1 or above
  • Server-side configuration to start the S3 Client Connector
  • Administrator permission on the user desktop
  • User-specific hub.xml file for each user workstation
The terms S3 Client Connector and Hub are used interchangeably in this document.

Client-side Configuration

After the Zoom Administrator has performed the server-side configuration as described below, configure each Zoom Client user’s workstation as follows:

  1. Download the Zoom Client 7.6.1+ installer from the link supplied by the Evolphin Support team instead of using the EZ Downloader (this will change from future releases)
  2. Run the desktop installer as you would normally do for installing the Zoom Client application. After the installation is complete, the Hub would be automatically installed but not turned on.
  3. Next, get the name of your user-specific location created by the Zoom Administrator. For example, PedroMac for the user Pedro.
  4. Set up the new user’s Server Settings from the Z menu > Settings > Server/WC Settings on the client machine.
  5. Choose the user-specific location created by the Zoom Administrator earlier. If you don’t see a location with your name, contact the Zoom Administrator before proceeding to the next step.
  6. Ensure the location-specific settings are synced by restarting Zoom Client from the desktop Z menu > Restart ClientProxy. Please wait for the sync complete alert to show up as a desktop notification.
  7. If the sync was successful, you will see new menu options appear in your Z menu.
  8. Now, stop the Hub using the Z menu > Stop Hub, in order to update the hub.xml configuration file.
  9. Obtain the hub.xml file for this user from the Evolphin Support team. Once you have the correct file, take a backup of the current hub.xml. For instance, on macOS for a user Joe, hub.xml is located in
    /Users/Joe/Library/Application Support/Evolphin/ejh/client/conf
  10. Copy the new hub.xml to your Zoom Hub system folder.
  11. Start the Hub once again from the Z menu > Start Hub. Hub will now start with the new hub.xml settings.

You should now be able to start using Zoom S3 related features integrated into the Zoom Client. These include:

  • Automatically copy to AWS S3 any new high-resolution (high-res) media.
  • Invoke Archive/Restore options from the Asset Browser.
  • View the progress of high-res transfers using the S3 Connector Hub dashboard (Z menu > Open Hub Dashboard)

 

Server-side Configuration

As a Zoom Administrator, you need to add some configuration settings for each user that is going to use the AWS S3 Connector to connect to the cloud-based storage.

These settings are needed:

On the Zoom Server

If you are using Evolphin Managed Cloud, then skip this section. These settings will be configured by your Zoom Managed Admin.

Creating locations for each Zoom Client

  1. Log into your Web Management Console as a Zoom Administrator.
  2. Open Server Zoom Properties page under System node in the Admin Menu sidebar.
  3. Click Add Location to add a new location for the first client machine.
  4. Type an appropriate name for the client location and click Submit. For example, PedroMac for the user Pedro.

  5. Choose the new location (say PedroMac) from the Location box and then click Add to open the Add Property box. The properties added now will be added for the selected location (PedroMac for our example).

  6. One-by-one, select each of these properties from the properties list and update its value in the Value box. Then, click to add that property to the Selected Properties box. After adding all the required properties to the Selected Properties box, click Submit.
    1. LIST_DEF_PROPS – save the list of comma-separated metadata properties that will be used for structured search inside the Zoom Adobe plugin.
    2. ALWAYS_USE_S3_FOR_TRANSCODING – set as true.
    3. THIRD_PARTY_MOUNT_POINT – third-party mount location on the client machine. You can use system variables like $Home or $User to save a generalized value for all clients.
    4. S3_DEFAULT_BUCKET – save the name of the default bucket where the media will be saved.
    5. SHOW_HUB_MENU_ITEM_ON_Z – set as true.
    6. S3_DEFAULT_ACCESS_KEY – save the access key for the S3 bucket.
    7. ENABLE_C3 – set as false if your Zoom setup is in the cloud and set it to true if your Zoom Server is in your local network.
    8. S3_DEFAULT_REGION – set the S3 region for this client.
      ENABLE_C3 and SHOW_HUB_MENU_ITEM_ON_Z properties must be set to true in order for the user to have access to the AWS S3 Connector Hub on their machine.
  7. These properties will be added for the client location we chose above (for our example, PedroMac).
  8. For each user that needs access to AWS S3, add a new location by cloning the location saved above. Click Add Location to add a new location. Type an appropriate name for the location. Choose the previously added location in the Copy Location From dropdown box and click Submit.

    For example, for John’s Mac, we can create a location JohnMac by copying PedroMac’s settings.
    While configuring the user’s workstation with Zoom Client, the correct location created in the above step must be selected in their Zoom Settings as shown in the section above.
  9. The properties that we set for the original location (PedroMac in our example) will be copied as it is to the newly created location. Update any of these properties as needed for the new location.
  10. After all the locations are created, we need to add hub configuration in Zoom for each location.

Adding hub configuration for each Zoom Client

  1. Obtain the hub.xml files for all users from the Evolphin Support team. Each hub.xml will have the <hubName> tag to identify the Hub for which it should be used. Usually, a Hub is named similar to its location. Like, Pedrohub for location PedroMac (for the user Pedro).
  2. Open hub.xml for the first client location. Locate the <hubName> tag to find out the name of the associated Hub. Keep this name handy.
    <JobHubServerSpec version=”13″>
    <hubName>Pedrohub</hubName>
    <enableDebug>false</enableDebug>
    <TranscoderSpec>
    <timeOut>3</timeOut>
    <units>MINUTES</units>
    <encodersDefined>false</encodersDefined>
    </TranscoderSpec>
  3. Log into your Web Management Console as a Zoom Administrator.
  4. Open Hub Settings Panel under System node in the Admin Menu sidebar.
  5. Click Add Hub to add a new hub for the first client machine.

  6. Specify the same name for the new Hub as found out from its hub.xml in step 2. For our example, say Pedrohub.

  7. Click Add.
  8. The new Hub is added and ready to be configured further.
  9. Update the Hub Server Host to the hostname or IP of the Zoom Client machine. For our example, we will set the IP/hostname of Pedro’s Mac.
  10. Select the location for the client machine as chosen in step 2.
  11. If using SSL, select the Enable Secure Hub Connection box and update the Hub Server Secure Port if needed.
  12. Click Archive/Restore Configuration.

  13. Under the Archive/Restore Configuration tab, you need to set default values for FS Tier 1 and S3 Tier 2.
    1. On the FS Tier 1 tab, click Add Default Tpm. Specify the local mount path on the related client machine. Click Add Default Tpm.
    2. On the S3 Tier 2 tab, click Add Default. Specify the values for
  14. After these values are saved, click Save Hub on the top of the page.
  15. Open hub.xml for the next client location. Again, locate the <hubName> tag to find out the name of the associated Hub. Keep this name handy.
  16. Click Add Hub to add a new hub for the next client machine.
  17. Specify the same name for this new Hub as found out from its hub.xml in step 12.
  18. This time, select a previously added Hub, like PedroHub, in Copy Configuration From Hub dropdown.

  19. Click Add.
  20. The new Hub is added with the configuration settings from the chosen existing Hub.
  21. Update the configuration settings to match the new client location, like Hub Server Host, Location, FS Tier 1, and S3 Tier 2 settings.
  22. Repeat steps 15 through 21 till all hub.xml files are processed. This will add the necessary Hub/AWS S3 Connector settings in the Zoom Server.
  23. After all the hub configurations are added, we finally need to update the transcoder settings.
For Evolphin Managed Cloud, this configuration would be done by your Zoom Managed Admin. You will get the location name and hub.xml for each Zoom Client.
 

On the Transcoder

Configure the cloud-based Transcoder to transcode directly by streaming the media from S3 itself without physically copying the file to cloud-based block storage. This is important for minimizing the cost of cloud block storage as it can be many times more costly than cloud object storage (AWS S3).

  1. Open your cloud-based Transcoder’s configuration page. Add a semi-colon separated list of each user’s location (as saved in the Web Management Console) in the Location box.
  2. Click Save.
  3. The settings are now saved to your Transcoder.

The server-side configuration is now complete. Configure these settings on the client machines as described in the section above.