The FileFlex Enterprise system is a complex set of modules, and is therefore deployed as a virtual machine to greatly simplify deployment. Several different virtualization solutions are presently supported, including:
Follow one of the provided guides to deploy the FileFlex Enterprise image using the virtualization technology of your choice.
Server Hardware Allocation RequirementsFileFlex Enterprise may be deployed on a variety of hardware configurations, with an underlying requirement of Intel x64 CPU architecture. When discussing deployment hardware, it is specifically with respect to the VM's allocation of hardware resources to the VM, rather than the total capacity of the underlying host machine. This document is focused on single-machine/VM deployments rather than a clustered deployment. Server Hardware RequirementsThe following table describes typical deployment configurations and capacities. Server hardware refers to VM-assigned resources.
Connector Agent Hardware Requirements
View-Only ConversionsThe advanced panel of the server administration contains a configurable property "Maximum concurrent view-only conversions". This defines the maximum number of view-only conversions that may execute at the same time. When a user chooses to view an office document within the application, a conversion is necessary. The number of conversions that can happen at the same time is directly connected to the amount of CPU and RAM allocated to the server. Each "concurrent view-only conversion" requires 1 dedicated CPU core, and 1gb of RAM. We recommend adding 1 CPU core and 1gb of RAM for each additional 1,000 users added to the system, depending on the frequency with which they are viewing documents within the application, and the size of the documents they are viewing. Effect of RAMThe most important fundamental resource is RAM because several running processes are launched for data accumulation, proxying, data encryption, etc. A minimum of 4gb is required to run all needed services adequately. The maximum activations introduce a persistent RAM requirement, so a higher RAM total allows for more total activations/users. Simultaneous transfers also require more RAM. A larger cache allows for a larger number of "active users". View-Only conversion is by far the largest consumer of RAM, and allocation must be made as indicated above. Effect of Disk IOThe server is not critically bound to drive IO, so most typical well-functioning NAS drive deployments will be adequate. The connector however which is responsible for fetching files from the local device is tied to the IO performance of the device - especially the seek time. SSD caching schemes will greatly improve it's ability to deliver high numbers of files concurrently without overly slowing down the NAS's performance. The exception is view-only conversions. If your use-cases involve a great deal of document viewing, then IO limitations may come into play and the deployment of an SSD-backed high performance data-storage solution is recommended. Effect of CPUThe CPU is highly utilized for encoding/decoding of requests, so is directly related to the number of active users. It is also directly related to the number of high-speed transfers due to the active encryption. The CPU becomes especially important when dealing with 10GbE connections with clients located on the same high-performance network. View-Only conversion is a large consumer of CPU, and allocation must be made as indicated above. Effect of NetworkThe network is very important when dealing with a large number of concurrent transfers if one wants to maintain consistent local-network level performance. For the reasons described above, it's important to correlate the CPU with the network speed. ClusteringWhen capacity becomes saturated, it is possible to deploy FileFlex in a clustered configuration. Supporting a clustered configuration requires dual networks, so it's important that such deployments have at least two network adapters. In a highly de-centralized deployment, the CPU and RAM become less important as the load is spread across several machines. |