Information for setting up an environment to run PlanetTogether. Includes hardware guidelines, network considerations, user login methods and performance benchmarks.
This guide will help IT personnel determine how their existing hardware and network infrastructure can be used or expanded to support PlanetTogether software. This guide will cover hardware requirements for a server as well as end user’s computers, failover and recovery, and possible impact on users from limited networks. Content provided is for planning and informative purposes only. This guide does not contain step by step instructions for implementing or configuring PlanetTogether software features.
References to the phrase ‘PlanetTogether’ in this document refers to the Advanced Planning and Scheduling software provided by PlanetTogether Inc.
Note that this is not the PlanetTogether installation guide. Installation instructions can be found online at download.planettogether.com.
The recommended hardware depends on if PlanetTogether will be running on a dedicated machine, or sharing resources with other demanding applications. If running PlanetTogether on a dedicated machine, the Workstation recommendation is ideal. If the machine will be running other applications such as SQL Server, ERP software, or PlanetTogether clients (even on other isolated virtual machines) the server recommendation will provide better results. PlanetTogether may be run on virtual environments with no additional hardware requirements.
Note that cpu speed is the most impactful component on PlanetTogether performance. Faster cpu speeds will result in noticeable speed improvements.
The minimum recommendation is a CPU with four cores and a speed of 2.3 GHz. PlanetTogether must be running on an environment with at least 2 dedicated CPU cores. The server should have 10 GB of free disk space per instance for transactional data files.
Recommended Workstation Specifications
- CPU: Latest Intel i7 or AMD Ryzen. 4.0 GHz or faster
- Example: Intel i7 9700K
- Example: AMD Ryzen 3800x
- 32 GB if under 20,000 orders across all active instances
- 64 GB if over 20,000 orders across all active instances
Recommended Server Specifications
- CPU: Latest Intel Xeon or i9. 3.8 GHz or faster
- At least 4 cores should be dedicated to the PlanetTogether environment
- At least 2 cores should be dedicated to each instance of PlanetTogether running concurrently.
- Dedicated 32 GB if under 20,000 orders across all active instances
- Dedicated 64 GB if over 20,000 orders or using End User method 2 (below)
On-Premise Server Management
PlanetTogether Data Volume Performance
PlanetTogether’s architecture is designed to provide the fastest possible responsiveness to users in data-intensive applications. All data is loaded into computer memory for processing that is much faster than disk-based operations that are common in traditional databases. The memory-resident data objects also have direct links to each other designed in, to allow for fast access to needed information without relying on time-consuming lookups that are also common in many other traditional database systems. The software also utilizes multi-threading extensively. The result is that in most businesses, small or large, PlanetTogether will provide schedule optimizations and adjustments in minutes or even seconds, resulting in a system that is easier and more enjoyable to use.
The most important factors affecting performance are: (1) the number of operations in the schedule, (2) the features in use, and (3) the computer hardware.
Server Demands and Benchmarks
The hardware used to perform the following tests had the specifications matching the Workstation Recommended Specifications above (both server and client components were installed on the Workstation).
This first table shows estimated optimize times based on data volume with minimal constraints. The model contained 100 resources with random need dates and minimal constraints. The only way to be sure of actual performance and memory requirements is to build a representative model of the particular factory with the required features and actual data volumes, running on the computers to be used. This article provides tips for performance tuning.
|# Scheduled Operations||Seconds for full Optimize|
Example model data volumes from realistic models
The following diagram shows realistic models containing multiple constraints.
PlanetTogether End Users
There are three common ways to run the PlanetTogether client application. In each case, the client computer needs access to the PlanetTogether server on the standard installation tcp ports. No other internet access is required. Allowing user access to planettogether.com may be helpful for online help and support resources. End users normally run a PlanetTogether login application that automatically retrieves the latest client updates. This allows for upgrades to PlanetTogether without additional configuration or updates to the end user’s computer. The login application is not required and users may also run the full client application to connect to PlanetTogether.
- Users run PlanetTogether client on their own computers
- Each user’s computer should meet the minimum hardware requirements for PlanetTogether and the memory recommendation for workstations
- Users run PlanetTogether on the server machine
- In this setup, the Server hardware selection is recommended
- Each end-user should be using a separate windows user
- Users run PlanetTogether in a virtual desktop environment.
- Virtual desktops are supported; however, users may not be able to use the client login application when connecting to PlanetTogether. The client login application stores information in user’s roaming appdata folders.
- As an alternative, users can run the full client application to log in. This full client does not require information stored in user profiles but will need to be installed and accessible for each user.
A note about ports: Port 7991 is the secure port to use to allow clients to PlanetTogether. Ports 7992 and 7993 are used on the PlanetTogether server only and no access outside of the server is required for those.
Version 11.39 and older will use port 7990 instead of 7991. Once all older instances are upgraded, port 7990 can be disabled.
Performance with many users
User scheduling actions are processed synchronously. If one user’s action is being processed, other user’s actions will be queued and processed in sequence. PlanetTogether clients will remain responsive while performing scheduling actions. Users may continue to view and analyze data, run reports, and queue additional actions while other user’s actions are in process.
If many users will be logging in to PlanetTogether simultaneously, the limiting factor for login speed will be network bandwidth. Each client will be retrieving required application data. If clients are taking too long to login due to low bandwidth, consider staggering user logins or leave clients connected continuously to avoid the login process.
Active Directory Integration
PlanetTogether supports Microsoft Active Directory for user management. On the server, the APS System Service must be configured with a Log On As user with permissions to read the Active Directory domain.
Active Directory Integration is managed in the PlanetTogether Instance Manager application. If enabled, a domain security group can be specified. Only users in this group will be able to log in with their Windows user.
User’s within the system must still be imported. The user login name imported much match the Active Directory Domain user name.
When users log into PlanetTogether clients, they will have three methods:
- Use PlanetTogether standard user authentication. This method is available even when Active Directory login is enabled. To disable this login method, an Admin may set a strong password in the PlanetTogether system for each user.
- Use the current Windows user account. With this method, the user only needs to provide their current Windows account password.
- Use a different Windows user account. With this method, the user may provide a different Windows Active Directory user account and password.
Operating System Compatibility
PlanetTogether server, clients, and associated programs run on the Microsoft .NET Framework (version 4.8). It is compatible with all Microsoft Windows operating systems that support this framework. A 64-bit operating system is recommended for better performance and future support.
Note: PlanetTogether versions 11.39.9 and later now require a .NET Framework version 4.8.
Any virtual machine that meets the minimum hardware requirements and is running a compatible operating system is sufficient to handle PlanetTogether. The standard approach to installing PlanetTogether in the cloud is to use a Windows virtual machine on any cloud platform.
Note that there is great variability in the performance of cloud virtual machines. As CPU performance is the most important factor for the speed of PlanetTogether, cloud machines with fast computing performance are recommended.
PlanetTogether uses TCP connections to communicate between clients, the server, data sources, and configuration programs. The TCP ports used by PlanetTogether is configurable for each of these connections. Typical data volumes include: between 10 MB to 200 MB during startup of the client, 1 MB to 5 MB between the server and the import data source during queries of the data source, and minimal network during normal operation of a client.
Server software installation using our web installer requires access to https://planettogether.com and the following subdomains as well as the Licensing URLs below. An offline installer is also available if internet access is unavailable.
The server application requires an active internet connection and access to:
An active internet connection means continuous internet access while the instance is running. However, intermittent connection losses will not affect licensing. If the server has connection issues consult with a PlanetTogether engineer to determine any potential licensing problems.
The primary data import and export source for PlanetTogether is Microsoft SQL Server. Version 2008 and later are supported. A SQL Server installation is most likely required. Integrations to or from other data sources can be achieved through PlanetTogether integrations that use SQL Server as a staging database. Data can also be imported directly from Excel files. For Excel import, a data adapter that matches the Excel version is required.
PlanetTogether can also export to an xml formatted data file for custom export processes.
Integration services and methods vary, please consult with a PlanetTogether engineer to determine the ideal setup for your environment.
Fail-over and Recovery
To assist in the event of a server failure, a standby PlanetTogether instance can be prepared for fast recovery.
Backing Up PlanetTogether
- PlanetTogether automatically provides transactional data backups. These files reside on the PlanetTogether server.
- Transactional files should be backed up to a secondary location to be used for recovery in case of a server failure.
- A second PlanetTogether installation is required in case of a server failure. The second instance can be pre-installed with the same configuration as the primary instance. However, it cannot be active while the primary instance is active.
- For recovery, the latest transactional backup can be restored by taking the latest snapshot (scenario.dat file and/or transaction files) from backup and applying it to the secondary instance. The secondary instance can then be started. Once started, the instance will become active automatically if the primary instance is offline.
- Clients connect to the instance by server connection string. Either the connection string needs to be pointed to the new instance, or clients must use a new connection string to access the secondary instance.
PlanetTogether does not support load balancing. Only a single server instance is running at once. PlanetTogether is a high performance, memory-resident program capable of optimizing large amounts of data due to its in-memory objects. To allow for this capability, scheduling operations cannot be distributed among multiple services and data is not stored in a shared database or store. In most situations, the high performance of PlanetTogether alleviates the need for load balancing to achieve fast performance. If your application has a high volume of scheduled operations (more than 25,000 for example) then testing the application in a Proof-of-Concept configuration is recommended.
Most user actions are not affected by latency or slow connections. Under very poor connections, users may experience a slight delay between when attempting to perform an action and when the action begins. The following actions will be more heavily impacted by a slow connection:
- Client login. Slow connections may result in long login times for end-users. This action is the most heavily impacted. Depending on the connection limits, it may be preferred to stay logged-in to the system.
- Data refresh. Depending on the amount and frequency of data being brought into the system, import actions may take longer for users on a slower connection.
- Data export. This action is only affected by the server’s network performance. Slow connections will result in longer publish durations.
Unstable connections where network connection may be completely disrupted has varying effects. The server must have, at a minimum, a few minute connection each day to the internet for licensing communication. Client’s whose connection with the server is disrupted will not be able to perform actions. If the client’s connection is disrupted for a long duration (configurable but generally 1-3 minutes) then it will be disconnected from the server and will need to log into the system again when the network connection is restored.
Service & Support
For ease of service and support during integration, implementation, and support/maintenance activities, VPN remote access to PlanetTogether application server and SQL Server is required. This typically is configured the following way:
- Windows Remote Desktop access with Administrator privileges
- Windows user must have administrator privileges on the server
- SQL Server authentication login/user
- read/write/owner access to PlanetTogether Staging Databases
- Ability to execute stored procedures, update, select, drop, insert, etc…
- Read access to linked servers and other data sources containing scheduling data
- read/write/owner access to PlanetTogether Staging Databases