NetX is an enterprise application that involves many components—successful implementation requires adequate planning, internal resources, and ongoing maintenance. This document outlines these considerations in detail and can help you assess whether or not hosting in an on-premise datacenter (or on a third-party cloud platform) is the best option for your organization.
NetX application stack
The NetX environment consists of several components that work together to deliver a fully functioning application. These components are described below, see Supported Platforms for more details.
- Application Server - NetX is written in Java, and requires a Java Application Server (servlet container) to run. Apache Tomcat is NetX's only supported Application Server. A supported configuration of Tomcat is distributed with the NetX application.
- Database - NetX supports the most popular database engines, including MySQL and Microsoft SQL Server.
- Storage - Asset files, constituents (thumbnails, previews, zooms, views), and other temp files require a file system for storage. Local storage, DAS, NAS, and SAN technologies have all been successfully used with NetX. If more than one NetX instance (or any other service) is utilizing a storage location, you will need to make the location available via supported network-sharing protocols such as SMB or NFS.
- Search Engine - NetX uses the Apache Solr search engine to provide rapid search capabilities. A supported configuration of Solr is distributed with all NetX installations.
- Transcoding Engines - Transcoding engines are required to view and manipulate assets. They generate previews and thumbnails, provide repurposing capability, produce PDF output files, render document pages, and create proxy videos and keyframes. Transcoding engines are not distributed with NetX and require manual installation.
- In-memory Datastore - NetX uses Redis as a message broker for certain features such as webhooks.
- Email Server - For collaboration and notification functions, an SMTP server that supports communication on port 25 is required.
- Directory Server/SAML Provider (optional) - NetX supports LDAP(S) and SAML 2.0 for your organization's Single-Sign-On and authentication needs.
- Reverse proxy - NetX supports web server products such as Apache, IIS, and Nginx for use as a reverse proxy.
Technical staff availability
Hosting NetX requires that an organization has experienced sysadmins, network engineers, DBAs, and other IT professionals onsite whose primary responsibilities include server, network, and database administration. We do not recommend hosting NetX if your organization outsources IT support, as this can lead to delays during service interruption. Our most successful clients have staff in place that can gradually build knowledge around how to properly maintain a NetX environment. NetX staff can provide some general recommendations, but cannot provide support or detailed guidance for any third-party hardware, software, or services that are run in conjunction with NetX. In the case that NetX staff are providing installation services, customers are fully responsible for proper setup and configuration of Server OS, Database Engines, Network Devices, or Storage technologies in accordance with NetX's system requirements. These preparations must be completed before installation services can commence.
Administering NetX products requires a moderate to advanced technical skill set, including but not limited to:
- Experience installing and maintaining production application servers.
- Comfort running SQL commands, installing and maintaining a database.
- Ability to troubleshoot and isolate network performance issues.
- Ability to set up and maintain HA and/or load balancing technologies, if applicable.
- Ability to set up and troubleshoot storage connectivity.
- Ability to troubleshoot connectivity with LDAP and SAML providers, if applicable.
- Ability to manage log archiving and other routine service administration tasks.
- Experience with setup and maintenance of third-party Infrastructure-as-a-Service (IAAS) products, such as AWS or Azure, if applicable.
- Customers are responsible for administering, troubleshooting, and upgrading their own hosting environments. NetX staff can provide some general recommendations, but cannot provide direct support or for any third-party hardware, software, or services that are run in conjunction with NetX. Please contact the appropriate vendor for support of those products and services.
Hardware and software requirements
Please see NetX System Requirements and/or NetX Sizing Guide articles for more information. Customers are responsible for ensuring that their infrastructure meets the necessary system requirements. If assistance is needed for sizing an initial deployment, please contact your Account Manager or Onboarding Project Manager. As system usage grows, customers are responsible for increasing resources to scale their environment appropriately.
Load balancing or high availability
Customers who wish to use Network Load Balancing or High Availability are responsible for implementing, testing, and troubleshooting those solutions. Although we have many customers using these technologies, NetX will not provide support for those technologies directly. If a problem arises with a NetX environment, NetX support may request that the Load Balancing/HA solution be temporarily disabled during troubleshooting to eliminate it as a root cause.
Single sign-on support
NetX supports LDAP(S) integration with Active Directory and OpenLDAP. We also support SAML integration with any provider that is SAML 2.0 compatible. Customers are responsible for the setup, configuration, and maintenance of these services and their ability to properly communicate with NetX, in accordance with NetX system requirements. NetX staff can provide assistance with configuring the integration of these technologies with NetX but cannot provide support for the products themselves.
SSL / custom hostname support
NetX requires the use of a reverse proxy and strongly encourages using HTTPS for secure communication. However, NetX staff cannot provide direct assistance (beyond general guidelines) for configuring or troubleshooting 3rd party web servers. Customers are fully responsible for configuring DNS and related certificates for custom hostnames.
Cloud computing services
As of this writing, NetX has successful deployments operating on Amazon Web Services (AWS), Azure, and Rackspace. Customers who wish to deploy their NetX environment on a cloud computing platform must adhere to the requirements listed below:
- Customers are required to setup, configure, troubleshoot, and maintain all IAAS technologies offered by their vendor of choice, such as virtual machines, storage services, network services, load balancing, etc. NetX staff will not log onto any platform-specific service consoles, or any other vendor-specific IAAS tools, nor can we assist with the configuration or troubleshooting of any infrastructure services. These technologies are not within NetX's area of expertise.
- For deployment assistance during Onboarding, or ongoing support, the customer's infrastructure must appear "transparent" to NetX staff and be accessible via VPN or RDP at the time service is needed. RDP must be enabled on each VM involved in the NetX environment, NetX staff will not support "daisy chained" RDP access.
- Large-scale distributed (Hydra) deployments are not currently supported on cloud computing platforms such as AWS or Azure, but will be compatible in future releases of NetX.
- If NetX determines in good faith that the NetX application performance is hindered by incorrect IAAS configuration or untested/unsupported services, it is the customer's sole responsibility to remedy these issues. Migration to a different hosting platform may be required in certain situations if the environment is proven to be unsound.
Amazon Web Services (AWS)
NetX has been officially tested and verified for production operation under the following configuration:
- NetX supports deployment on EC2 instances, along with EBS and S3 for storage. Thumbnail storage is not currently supported for use with S3 storage.
- AWS' Relational Database Service (RDS) has not yet been tested for use with NetX. However, we do have a verified deployment in AWS that uses a standard MySQL database installation running on an EC2 instance.
Onboarding and professional services
Customers can purchase NetX deployment and configuration services via Onboarding and/or Professional Services packages. NetX's standard support offerings include basic guidance and documentation regarding system requirements and use of the NetX application itself, so any hands-on troubleshooting, upgrade, training, or configuration assistance will fall under Professional Services once Onboarding has ended and the customer's deployment is in production. Any exclusions (unsupported products or tasks) listed throughout this document apply to Onboarding and Professional Services, as well as standard support offerings. Please see the Support Policy and Remote Installation Requirements articles for more details.