Enterprise Edition Web Client Deployment for Scalability

About this task

The Docker Enterprise Edition Web Client’s installer has default configuration selections that are optimized for Linux machines of 32 GB RAM. In a production environment, it is recommended to choose the target Linux server with 64-GB RAM. Also, before starting the installer you must perform following task.

Procedure

  1. Access the plantapps-web-docker.j2 file located in the installer folder path: \uc-ansible-installer\roles\installer\templates\
  2. Locate and replace the below lines of code...
    JAVA_OPTIONS_1024=-XX:MaxRAM=1024m -XX:MaxHeapSize=720m -XX:+UnlockExperimentalVMOptions -XX:CompressedClassSpaceSize=120m
    JAVA_OPTIONS_512=-XX:MaxRAM=512m -XX:MaxHeapSize=320m -XX:+UnlockExperimentalVMOptions -XX:CompressedClassSpaceSize=120m
    JAVA_OPTIONS_350=-XX:MaxRAM=350m -XX:MaxHeapSize=180m -XX:+UnlockExperimentalVMOptions -XX:CompressedClassSpaceSize=120m
    DEPLOY_RESOURCES_LIMITS_MEMORY_500=750M
    DEPLOY_RESOURCES_LIMITS_MEMORY_1000=1250M
    ...with the following lines of code:
    JAVA_OPTIONS_1024=-XX:MaxRAM=1024m -XX:MaxHeapSize=720m -XX:+UnlockExperimentalVMOptions -XX:CompressedClassSpaceSize=120m
    JAVA_OPTIONS_512=-XX:MaxRAM=512m -XX:MaxHeapSize=320m -XX:+UnlockExperimentalVMOptions -XX:CompressedClassSpaceSize=120m
    JAVA_OPTIONS_350=-XX:MaxRAM=350m -XX:MaxHeapSize=180m -XX:+UnlockExperimentalVMOptions -XX:CompressedClassSpaceSize=120m
    DEPLOY_RESOURCES_LIMITS_MEMORY_500=750M
    DEPLOY_RESOURCES_LIMITS_MEMORY_1000=1250M
    JAVA_OPTIONS_1600=-XX:MaxRAM=1400m -XX:MaxHeapSize=1256m -XX:+UnlockExperimentalVMOptions -XX:CompressedClassSpaceSize=120m
    DEPLOY_RESOURCES_LIMITS_MEMORY_1600=1600M
  3. Save and close the file.
  4. Access each of the following files located in the following folder: \uc-ansible-installer\roles\installer\templates\
    • activitiesappservice-yml.j2
    • downtime-app-service-yml.j2
    • pa-mymachinesservice-yml.j2
    • alarm-app-service-yml.j2
    • wastemanagementappservice-yml.j2
    • productionschedulerappservice-yml.j2
    • operatorappservice-yml.j2
    • erptransformationservice-yml.j2
    • erpimportservice-yml.j2
    • erpschedulerservice-yml.j2
    • mesdataservice-yml.j2
  5. In each file, perform the following:
    1. Search for $JAVA_OPTIONS_350 and replace it with $JAVA_OPTIONS_1600
    2. Search for $DEPLOY_RESOURCES_LIMITS_MEMORY_500 and replace it with $DEPLOY_RESOURCES_LIMITS_MEMORY_1600
  6. After replacing the above values in each file, save and close the file. Repeat until you finish updating all the files mentioned in Step-4.
  7. Follow Install Enterprise Edition Web Client version of Enterprise Edition Web Client.
    You can now use Enterprise Edition Web Client on a machine with a 64GB RAM.

Post-Installation Repair or Upgrade for Scalability

About this task

For some reasons, if you have performed the installation with the default settings, that is, without making any changes to the plantapps-web-docker.j2 file as stated above and realized that the default installation is not supporting your scalability requirements , you can make the following changes to repair the installation to meet your scalability requirements to utilize RAM size of 64 GB.

Procedure

  1. Navigate to the plantapps-web-docker folder located in the Enterprise Edition Web Client installation path: /<installation_path>/PlantApplicationsDocker/plantapps-web-docker
  2. Open the .env file in a text editor. Locate and replace the below lines of code...
    JAVA_OPTIONS_1024=-XX:MaxRAM=1024m -XX:MaxHeapSize=720m -XX:+UnlockExperimentalVMOptions -XX:CompressedClassSpaceSize=120m
    JAVA_OPTIONS_512=-XX:MaxRAM=512m -XX:MaxHeapSize=320m -XX:+UnlockExperimentalVMOptions -XX:CompressedClassSpaceSize=120m
    JAVA_OPTIONS_350=-XX:MaxRAM=350m -XX:MaxHeapSize=180m -XX:+UnlockExperimentalVMOptions -XX:CompressedClassSpaceSize=120m
    DEPLOY_RESOURCES_LIMITS_MEMORY_500=750M
    DEPLOY_RESOURCES_LIMITS_MEMORY_1000=1250M
    ...with the following lines of code:
    JAVA_OPTIONS_1024=-XX:MaxRAM=1024m -XX:MaxHeapSize=720m -XX:+UnlockExperimentalVMOptions -XX:CompressedClassSpaceSize=120m
    JAVA_OPTIONS_512=-XX:MaxRAM=512m -XX:MaxHeapSize=320m -XX:+UnlockExperimentalVMOptions -XX:CompressedClassSpaceSize=120m
    JAVA_OPTIONS_350=-XX:MaxRAM=350m -XX:MaxHeapSize=180m -XX:+UnlockExperimentalVMOptions -XX:CompressedClassSpaceSize=120m
    DEPLOY_RESOURCES_LIMITS_MEMORY_500=750M
    DEPLOY_RESOURCES_LIMITS_MEMORY_1000=1250M
    JAVA_OPTIONS_1600=-XX:MaxRAM=1400m -XX:MaxHeapSize=1256m -XX:+UnlockExperimentalVMOptions -XX:CompressedClassSpaceSize=120m
    DEPLOY_RESOURCES_LIMITS_MEMORY_1600=1600M
    Note: Ensure that the spaces left in the original content/lines are not changed.
  3. Save and close the file.
  4. Access each of the following files located in the following folder: /<installation_path>/PlantApplicationsDocker/plantapps-web-docker
    • activitiesappservice-yml.j2
    • downtime-app-service-yml.j2
    • pa-mymachinesservice-yml.j2
    • alarm-app-service-yml.j2
    • wastemanagementappservice-yml.j2
    • productionschedulerappservice-yml.j2
    • operatorappservice-yml.j2
    • erptransformationservice-yml.j2
    • erpimportservice-yml.j2
    • erpschedulerservice-yml.j2
    • mesdataservice-yml.j2
  5. In each file, perform the following:
    1. Search for $JAVA_OPTIONS_350 and replace it with $JAVA_OPTIONS_1600
    2. Search for $DEPLOY_RESOURCES_LIMITS_MEMORY_500 and replace it with $DEPLOY_RESOURCES_LIMITS_MEMORY_1600
  6. After replacing the above values in each file, save and close the file. Repeat until you finish updating all the files mentioned in Step-4.
  7. From the same folder location, run the following commands:
    1. $sudo chmod +x PA_Services_Deploy_Lix.sh
    2. $sudo .\PA_Services_Deploy_Lix.sh
      Note:
      • If your application is not running, you might encounter errors that you can ignore.
      • The above command with deploy the Enterprise Edition Web Client's services stack which will take few minutes.
    The Enterprise Edition Web Client instance will be now running with the optimally utilized system memory and will support your scalability requirements.