System configuration case study of large deployment

Requirements

Large enterprise environment

  • Company

    • approximately 5 500 devices

    • approximately 250 000 entities in LDAP divided over more than 10 LDAP user domains

  • Print volume

    • 400 million printed pages per year with average of 4,2 pages per job = ~ 100 million jobs / year

    • 100 million jobs / 251 working days / 10 working hours / 60 minutes / 60 seconds = ~ 11 jobs / sec

    • scanning features used without OCR

Business requirements

  • Highly Available solution

  • Store reporting data for last 5 years

YSoft SafeQ Architecture

To achieve the above, Y Soft have implemented the following design:

  • 2 Management servers

    • Management with embedded PostgreSQL deployed on both servers

    • PostgreSQL server configured in SSMD (see section Single Server Multiple Database deployment in PostgreSQL cluster)

    • Primary and DWH (datamart) databases are split for ease of maintenance including backup and recovery of databases

    • One PostgreSQL takes role of primary database, second PostgreSQL takes role of standby database, there is streaming replication from master to standby

    • Management Server virtual machine specs

      • 16 GB RAM

      • 8 CPU units

  • 21 Site Servers

    • Grouped in three Site Server Clusters (SPOC Group) of 10, 6, 5 nodes

    • Site Server specs

      • 8 GB RAM

      • 4 CPU units

  • Print volume

    • Mostly server side spooling, CBPR only on few devices

    • ~ 50 GB of disk space used by primary PostgreSQL database

  • Data retention in DWH

    • Keep 5 years of reporting data in DWH

    • Time span requires ~500 GB of disk space used by DWH PostgreSQL database


images/download/attachments/192170656/deployment_diagram.png


Optimized Configuration

Optimization of Management server

Increasing Java memory to 2 GB is recommended for installations over ~100 000 users.

Management | JVM tweaks

Default Value

Optimized Value

Maximum Java heap memory (Xmx)

1024

2048


The recommended solution for large scale reporting is Data Mart Mode and using the including Power BI reporting templates for data visualization. Using Web Reports and Management reports are not recommended for large installations with high print volume.

Management | System | Configuration

Default Value

Optimized Value

enableManagementReport

TRUE

FALSE

web-stats-enable

TRUE

FALSE

enableCMLDataMart

FALSE

TRUE


Optional
change to increase reporting data retention from 36 month default to 60 months.

Management | System | Configuration

Default Value

Optimized Value

maximumCMLDataMartMonths

36

60


Increase LDAP timeout for initial connection and network communication.

Management | System | Ldap Integration

Default Value

Optimized Value

Timeout (milliseconds)

5000

180000


Increase Management database timeout when data is archived and processed for reporting in DWH database.

Management | C:\SafeQ6\Management\conf

Default Value

Optimized Value

databaseWarehouse.connections.queryTimeout (seconds)

1800

18000


Optimization of Site Servers

Increasing Java memory to 2 GB is recommended for installations with a high print volume.

Spooler Controller | JVM tweaks

Default Value

Optimized Value

Maximum Java heap memory (Xmx)

1024

2048


To maximize throughput of Site Servers without adding additional CPUs it is recommended to disable job analysis and rendering. Job preview and metadata (color, duplex printing, number of copies, ...) will not be available on terminals.

Management | System Configuration

Default Value

Optimized Value

jobAnalysisResolution

LOW_RESOLUTION_RENDERING

NO_RENDERING

previewResolution

LOW_RESOLUTION_RENDERING

NO_RENDERING


Optional
configuration if print job volume is expected to be over 20 jobs / sec.

Management | System Configuration

Default Value

Optimized Value

maxParallelJobProcessing

30

500

terminalServerHandlingThreads

10

40

YmqRunOnceWorkerThreadPoolSize

200

800


Optional
configuration to save disk space on site servers by reducing retention time for job storage on site server. This is not needed if majority of print is done via CBPR.

Management | System Configuration

Default Value

Optimized Value

maxSpoolerJobTime

7d 0h

1d

maxSpoolerJobTimeCheckInterval

180

60

maxSpoolerJobTimePrinted

7d 0h

8h


Optional
configuration to improve Site Server throughput by reducing file system writes. If Spooler Controller services are restarted then transient unprocessed accounting data may be lost..

Management | System Configuration

Default Value

Optimized Value

cacheReplicationBufferPersistent

TRUE

FALSE