To complete installation, you need to edit the Syncplicity software configuration file(s) and start the WOPI Connector service.
Retrieve the StorageVault access key
Before editing the configuration files, you need to retrieve the access key for the StorageVault. To do this, browse to https://my.syncplicity.com and log in as a Global Administrator. Then click on the Settings tab of the administrative console and then select Manage StorageVaults at the bottom of the page. A list of configured StorageVaults and their associated access keys can be found here. If no StorageVaults are listed, click the Add StorageVault button to create one. At the completion of a wizard, the access key is displayed. For detailed instructions on defining a StorageVault, see the Set the maximum amount of storage used by StororageVaults article.
Edit the WOPI Connector configuration file
The WOPI Connector configuration file syncp-wopi.conf must maintain common settings with the Storage Connector configuration file syncp-storage.conf for the same StorageVault. There are some WOPI-specific settings in the WOPI Connector configuration file and these settings will not be present in the Storage Connector configuration file. However all configuration settings that are present in both configuration files should be set with identical values.
Most of the settings for the WOPI Connector service are set in the file /etc/syncp-wopi/syncp-wopi.conf. You can enter your custom settings by performing the following steps:
- At the virtual machine, edit the following file using the vi editor:
sudo vi /etc/syncp-wopi/syncp-wopi.conf
- In the syncplicity.ws section of the syncp-wopi.conf file, replace <syncplicity access key> with the access key from the Custom Storage Settings page. For example:
accesskey: "d4jJDpO7erZEmrlKab6w"
- If your company is using the EU PrivacyRegion, the on-premises WOPI Connector must be configured with the following settings:
syncplicity.ws.url: "https://xml.eu.syncplicity.com/1.1"
syncplicity.ws.external.url: "https://api.eu.syncplicity.com"
syncplicity.health.url: "https://health.eu.syncplicity.com/v1"
-
If using a proxy, set the enable/disable flag to true and specify the proxy hostname and port in the proxy section.
syncplicity.ws { proxy { enable: true host: "my_proxy.mycompany.com" port: 8080 } }
-
In the syncplicity.storage section of the syncp-wopi.conf file, replace <storage type> with:
- atmos for EMC Atmos systems
- azure for Azure storage blobs
- google for Google Cloud Storage (GCS)
- isilon for EMC Isilon systems
- fs for generic NFS v3 or v4 systems
- s3 for EMC ECS systems or AWS s3 buckets
- vnx for EMC VNX systems
For example, if you are configuring for Azure blob storage, enter:
syncplicity.storage { type: "azure" }
-
If type is atmos, configure your Atmos storage settings. Under the atmos section of the syncp-wopi.conf file, set url to the URL and port to the port which your Atmos installation listens. Make sure to explicitly include the port number. Set token to your Atmos authentication token and set secret to your Atmos secret key. For example:
syncplicity.storage.atmos { url: "https://atmos.internal:443" token: "7ce21bbh56ek8feg0a7c23f343ad8df99/tenant" secret: "poSq7g5123t1TEQp5PlWhv4SAxk=" }
-
If type is s3 for AWS s3 storage, configure your AWS storage settings under the s3 section of the syncp-wopi.conf file. Enter the name of the bucket you created and its region, the access key and secret For AWS, the secret was generated when you created the IAM user. For example:
syncplicity.storage.s3 { bucket: "put bucket name here" region: "put region here" access: "put access key here" secret: "put secret key here" enableV4: true }
- If type is s3 for EMC ECS storage, configure your EMC ECS storage settings under the s3 section of the syncp-wopi.conf file by providing the following information:
- The full url of the ECS storage, including the port. Refer to your ECS Storage administrator for the exact ports being used. Default ports are 9020 for http and 9021 for https.
- The name of the bucket you created.
- The access key used for authentication, which is generated by the ECS administrator. With ECS, the access key used is typically an email address.
-
The secret used for authentication, which is generated by the ECS administrator.
For example:syncplicity.storage.s3 { access: "syncplicity@mycompany.com" secret: "put secret key here" url: "http://10.1.1.1:9020" bucket: "MyStorageVault_bucket" }
NOTE: When an IP address is used in the URL, the Base URL (fully qualified URL) must be defined in the ECS admin console. The Base URL should correspond to the URL you use in the syncp-wopi.conf file. The Base URL is used by ECS as part of the object address where virtual host style addressing is used and enables ECS to know which part of the address refers to the bucket and, optionally, namespace. To avoid upload errors, such as the one below, make sure to add the Base URL in the ViPR console for ALL your VDCs.
The request signature we calculated does not match the signature you provided. Check your secret access key and signing method. For more information, see REST authentication and SOAP authentication for details.
-
If type is isilon, configure your Isilon storage settings. Under the isilon section of the syncp-wopi.conf file, set rootdir to the mount point of your Isilon cluster on this server. For example:
syncplicity.storage.isilon { rootdir: "/mnt/syncdata" }
Make sure the syncp-wopi:syncp-wopi user owns the mount point. To set the ownership of the mount point, type the following command:
sudo chown -R syncp-wopi:syncp-wopi <mount_point>
-
If type is vnx, configure your VNX storage settings. Under the vnx section of the syncp-wopi.conf file, set the rootdir of your VNX system on this server. The directory that is located below the mount point, e. g., "data", must exist before you proceed. If this directory has not already been created, be sure to create it now. For example:
syncplicity.storage.vnx { rootdir: "/mnt/syncdata/data" }
Make sure the rootdir is one level below the mount point for VNX storage systems. For example, if the mount point is /mnt/syncdata, the rootdir value must be /mnt/syncdata/data.
Make sure the syncp-wopi:syncp-wopi user owns the mount point. To set ownership of the mount point, type the following command:sudo chown -R syncp-wopi:syncp-wopi <mount_point>
-
If type is fs for generic NFS v3 or v4 storage, configure your NFS storage settings. In the syncplicity.storage section of the syncp-wopi.conf file, add the following FS configuration and set rootdir to the mount point of your NFS v3 or v4 server on this server. If the following lines are already included in the syncp-wopi.conf file, edit the lines. For example:
syncplicity.storage.fs { # the root directory of the NFS mount rootdir: "/mnt/syncdata" }
Make sure the syncp-wopi:syncp-wopi user owns the mount point. To set ownership of the mount point, type the following command:
sudo chown -R syncp-wopi:syncp-wopi
<mount_point>
-
If type is azure, configure your Azure storage settings under the azure section of the syncp-wopi.conf file. Enter the Azure storage account name, the storage account key and the name of the Azure blob storage container.
For example:
syncplicity.storage.azure { # Storage account name accountName: "MyStorageVault" # Storage account secret key accountKey: "put secret key here" # Azure blob storage container name container: "MyStorageVault_blob" }
NOTE: When configuring the WOPI Connector to utilize Azure blob storage, the WOPI Connector server(s) should be hosted in the Azure VPC to minimize latency between the WOPI Connector and the storage.
-
If type is google, configure your GCS settings under the google section of the syncp-wopi.conf file. Enter the name of the bucket you created, and the JSON string with authentication credentials provided in a downloadable file when your service account key is generated (see GCS documentation).
For example:
syncplicity.storage.google { # name of the bucket bucket: "put bucket name here" # the authentication credentials JSON for the service account authJson: "put JSON string here" }
-
Now it is time to configure the WOPI Connector-specific settings. To do this you must generate a secret key file and store it securely on your system. This key is required to secure the WOPI access token, and the same key file should be used on all WOPI Connectors that are configured together against the same storage endpoint.
To create the WOPI Connector key file, create a file with a file extension of .key and place it in a secure location (e.g. /etc/syncp-wopi/syncp-wopi.key). The file should include an ASCII format passphrase string of at least 256-bit length (i.e. at least 32 ASCII characters).
Once the key file has been created or copied over from another WOPI Connector, execute the following commands:
sudo chown syncp-wopi.syncp-wopi /<folder>/<filename>.key
sudo chmod 400 /<folder>/<filename>.key
Here is an example using the example filename and folder:
sudo chown syncp-wopi.syncp-wopi /etc/syncp-wopi/syncp-wopi.key
sudo chmod 400 /etc/syncp-wopi/syncp-wopi.key
It is strongly advised to restrict access to the key files.After setting the owner and access to this key file, set key.file to the full path name for the key file in /etc/syncp-wopi/syncp-wopi.conf. For example:
syncplicity.wopi { key.file: "/etc/syncp-wopi/syncp-wopi.key" }
Edit the WOPI Connector log settings (optional)
The WOPI Connector writes error, warning and info messages to a log file in /var/log/syncp-wopi/. Log settings can be customized including the log level, retention of log files and the name of the log file (to improve the usability of reviewing logs from multiple systems).
Any time you change the settings in the logger.xml file you must restart the WOPI Connector service for the changes to take effect. To restart the syncp-wopi service, type the following command:sudo systemctl restart syncp-wopi
Customizing the name of the log file
- Edit /etc/syncp-wopi/logger.xml
sudo vi etc/syncp-wopi/logger.xml
- Modify the <appender> <rollingPolicy> <fileNamePattern> xml element to change the log location path or filename pattern. The default value and formatting for naming is:
/var/log/syncp-wopi/storage-%d{yyyy-MM-dd}.log.gz
- It is possible to add an environment variable (such as HOSTNAME) to the log file name, like this:
<fileNamePattern>/var/log/syncp-wopi/${HOSTNAME}-storage-%d{yyyy-MM-dd}.log.gz</fileNamePattern>
Changing the log retention period
- Edit /etc/syncp-wopi/logger.xml
sudo vi etc/syncp-wopi/logger.xml
- Modify the <maxHistory> setting to the number of archive files to keep (the default is 7 days). Note that the rollover period is determined by the format in <fileNamePattern>.
<maxHistory>7</maxHistory>
Changing the log level
- The log level can be set to one of the following: INFO, WARN, ERROR, ALL, DEBUG, TRACE, OFF. The default logging level is INFO, which provides a moderate level of logged data covering INFO, WARN and ERROR messages. To change this, modify the 'level' setting in the following line in logger.xml:
<logger name="application" level="INFO" />
Starting the WOPI Connector service
Once you have configured the WOPI Connector service and log settings, it is time to start the WOPI Connector service. Start the WOPI Connector software on each of the WOPI Connectors you have configured with this command:sudo systemctl start syncp-wopi
After starting the syncp-wopi service, run some verification checks to make sure that there is no error in the configuration and the service started without any problem. For details see Verify and manage WOPI Connector.
The base software installation process has been completed. If you have not already done so, you should verify the configuration as described in Verify and manage WOPI Connector.
Once you have verified the configuration, the next step is to point your Syncplicity account to the WOPI Connector URL and enable Microsoft Office Online integration, which is described in Adding and Editing StorageVaults.
After you have enabled Microsoft Office Online integration, verify that you are able to view or edit Office documents. If necessary, refer to Viewing and Editing files in Microsoft Office Online, Creating and editing Microsoft Office files on Android, Create and edit Microsoft Office documents on iPad, and Create and edit Microsoft Office documents on iPhone.