How to deploy Loftware in HA setup with SAP (ECC) in Azure
Published Mar 13 2024 07:30 AM 1,785 Views
Microsoft

Overview:

Loftware is a company that specializes in providing Enterprise Labelling and Artwork Management Solutions. Their software is designed to help businesses create, manage, and print labels and other packaging artwork across their supply chain. Loftware solutions are used by companies in various industries, including manufacturing, pharmaceuticals, food and beverage, logistics, and retail, to ensure compliance, efficiency, and accuracy in labelling processes.

 

Business use-case:

The Loftware labelling software seamlessly integrates with enterprise applications such as SAP and Oracle, offering essential support for supply chain labelling. With the browser-based interface of Loftware Spectrum labelling solution, users can effortlessly create, manage, and print labels, facilitating smooth implementation and scalability for labelling operations across multiple sites.

 

To ensure High Availability for Loftware application, implementing multiple spectrums with multiple application servers is crucial as it eradicates single points of failure. Consequently, in the event of a VM failure, the additional application servers stand ready to support the production environment. Automatic workload transfer from one server to another upon failure occurrence helps uphold business continuity and minimize unplanned downtime.

 

Software components

The following Software versions used for this blog.

Operating System: Oracle Linux Server

Version: Release 7.9

Application: Loftware Spectrum 4.6

 

Architectural Design

Figure 1: High Level Design-Architecture of Loftware Application.Figure 1: High Level Design-Architecture of Loftware Application.

 

Architectural Overview

The overarching architecture depicted in Figure 1 comprises:

  • Two or more Loftware Spectrum, with each Spectrum comprising two Azure Virtual Machines (VMs) distributed across zones using VMSS Flex. Each app instance hosting a Loftware Spectrum instance alongside its corresponding database. Each Spectrum can expand its scalability by incorporating additional virtual machines, utilizing VMSS Flex to distribute them across Fault Domains [it is not a tested as part of writing this blog].
  • Both Spectrum instances are connected to an SAP ECC via Application Gateway, enabling load balancing.

  • The databases operate in a High Availability (HA) setup, featuring a primary database and a secondary one for failover (HA Database).

  • To ensure readiness for disaster recovery, at least one of the Loftware Spectrums is replicated to a Disaster Recovery (DR) site using Azure Site Recovery (ASR).

  • For maintaining synchronization among the primary, HA, and DR databases, Oracle Data Guard is employed, ensuring data integrity across all environments through its functionalities and corresponding Standard Operating Procedures (SOP). Typically, setting up the DR node with Asynchronous replication method is recommended.

HA/DR strategy of Oracle DB

  • The database configuration entails having the primary and HA DB instances located in the primary site, while the DR DB instance resides in the DR site.

  • Synchronous database replication can be established among the primary, HA, and DR instances using Oracle Data Guard Max Availability mode with SYNC/AFFIRM configuration.

  • Two observer nodes in the primary site to continuously monitor the availability of databases and ensure continuous log shipping.

  • Automatic database failover between the primary and HA instances is configured using the DGMGRL utility.

 

Installation & Configuration Steps

  • Loftware Database Schema Installation.
  • Loftware Application Installation.
  • Loftware Application Configuration.
  • Data Transfer from primary spectrum to target spectrum.
  • Integration of SAP ECC to Loftware (Real Output/Logical Output Management System).
  • Application Gateway Configuration in Azure Portal

 

Installation of Loftware Database Schema

Step 1: Copy the LoftstoreLoad-linux.zip file from the installation package to a temporary folder on the client computer and extract the LoftstoreLoad-linux.zip and it will create data, export, load and setup folders.

jitendrasingh_0-1710075882808.png                        

 Step 2: Navigate to the setup folder and run configureDBLoad.sh and respond to the following prompts.

 

 

./configureDBLoad.sh

 

 

jitendrasingh_1-1710075933715.png

 Step 3: ls_Utils has been installed message at the end which indicates configureDBLoad is completed successfully.

jitendrasingh_2-1710075969918.png

 Step 4: Navigate to setup path and run ls_schemas.sh.

jitendrasingh_3-1710075986552.png

 Step 5: Once the deployment is completed then following prompt will appear as successfully installation of schema.

jitendrasingh_4-1710076011739.png

 

Loftware Application Installation

Step 1: Extract the SpectrumWeb.bin into application servers and run the installer as below:

 

 

./SpectrumWeb.bin -i console

 

 

jitendrasingh_5-1710076084785.png

Step 2: Under Choose Locale, enter the number of the language the installer should display.

 

 

 

Choose Locale...

----------------

                        1- Deutch

->2- English

                        3- Español

                        4- Français

                        5- Português (Brasil)

 

 

 

CHOOSE LOCALE BY NUMBER : 2

Step 3: Specify the Spectrum installation folder location.

jitendrasingh_6-1710076132924.png

Step 4: Select the Installation Type, select 1 to indicate that Spectrum is getting installed for the first time on an initial application server (App1) and 2 for additional application server installation (App 2).

jitendrasingh_7-1710076155767.png

Step 5: Select the Database Type.

jitendrasingh_8-1710076173588.png

Step 6: For Database Connection, enter the JDBC connection string in the appropriate format for your database type.

jitendrasingh_9-1710076192906.png

Step 7: For Database Connection, enter the database configuration RDS.

jitendrasingh_10-1710076212098.png

Step 8: Select custom database schema names if any.

jitendrasingh_11-1710076267889.png

Step 9: Enter the username and password that you set for the Spectrum database user during the Spectrum database installation, and then confirm the password.

jitendrasingh_12-1710076287850.png

Step 10: Enter the username and password that you set for the DaVinci database user during the Spectrum database installation, and then confirm the password.

jitendrasingh_13-1710076310815.png

Step 11: Proceed with the default recommended values of the port numbers for your configuration.

jitendrasingh_14-1710076338115.png

Step 12: Select whether the JMS integrations are secure.

jitendrasingh_15-1710076357561.png

Step 13: Modify the number of minutes for a session timeout, the Tomcat Java memory settings for your configuration, the service name (name), HTTP port (port), HTTPS port (SSL), and the port number for the Tomcat shutdown command (shutdown), as needed.

jitendrasingh_16-1710076375901.png

Step 14: Review the Pre-Installation Summary, and then press Enter when ready to continue. The installation process will begin.

jitendrasingh_17-1710076402626.png                      

Step 15: When complete, Installation Complete is displayed. Spectrum has been successfully installed.

 jitendrasingh_18-1710076427170.png

 

Loftware Application Configuration

 Step 1: Apply license for the Loftware application spectrum (Download the license from Vendor Support Portal)

Step 2: Enable HTTPS setting for the Loftware application servers.

Step 3: Configure Single-Sign-On (SSO) for Loftware application servers.

  • Configuration LDAP connection in Loftware
  • Update systemmanagement properties

 Step 4: Restart the spectrum after the configuration.

 

Data Transfer from Primary Spectrum to Target Spectrum

 Step 1: Change file transfer.properties and edit transfer.data.dir to the export file path which gets created and make the .ltt export file.

 Step 2: Export the data from one spectrum which is already live for the customer.

 

 

 

./transfer.sh -action="export" -type="all" -folderName="/<Folder_Name>" -recursive

 

 

 

Step 3: Exporting of data will be completed with return code 0

Step 4: Copy export file from source to target and change the name of the export file in transfer.properties in target spectrum.

Step 5: Take the backup of the spectrum folder.

Step 6: Import the file into target spectrum.

  

Integration ECC to Loftware (Real Output/Logical Output Management System)

Step 1: Login to ECC and goto SPAD.

Step 2: Create the spool server in SPAD.

Step 3: Create the real output management system.

Step 4: Create the logical output management system. 

Step 5: Create test printer with the spool and logical output management system.

 

Application Gateway Configuration in Azure Portal

Health Probe:

Updated the Interval, Timeout and Unhealthy threshold parameter values as per Microsoft recommendation to optimize Failover/Failback.

 

Backend Pool Setting

Updated the optimized values of Drain timeout and Request time-out based on client environment.

 

Testing Scenarios

 Switch over time need to be estimated based client environment and the testing performed.

 Scenario 1: Manual Stop loftware services on Application 1 and communication will happen through Application 2

Loftware services were manually stopped in Application 1 & loftware services were already in running state from Application 2.

Application/Friendly URLs were accessible, and authentication was successful, and Labels were triggered using YLB1 and YLB2 in ECC. Label print functionality has worked as expected.

Stopping the Service

Trigger Print from ECC

Label Printed from 2nd Application Server

 

Scenario 2: Manual Stop loftware services on Application 2 and communication will happen through Application 1

Loftware services were manually stopped in Application 2 & loftware services were already in running state from Application 1.

Application/Friendly URLs were accessible, and authentication was successful, and Labels were triggered using YLB1 and YLB2 in ECC. Label print functionality has worked as expected.

Stopping the Service

Trigger Print from ECC

Label Printed from 1st Application Server

 

Scenario 3: Reboot Application server 1 and communication will happen through Application 2

Loftware application server 1 were manually rebooted abruptly & loftware services were already in running state from Application 2.

Application/Friendly URLs were accessible, and authentication was successful, and Labels were triggered using YLB1 and YLB2 in ECC. Label print functionality has worked as expected.

Reboot the Server

Trigger Print from ECC 

Label Printed from 2nd Application Server

 

Scenario 4: Reboot Application server 2 and communication will happen through Application 1

Loftware application server 2 were manually rebooted abruptly & loftware services were already in running state from Application 1.

Application/Friendly URLs were accessible, and authentication was successful, and Labels were triggered using YLB1 and YLB2 in ECC. Label print functionality has worked as expected.

Reboot the Server

Trigger Print from ECC

Label Printed from 1st Application Server

 

Scenario 5: Manual Stop loftware services on both node of one spectrum and switch the LOMS to another spectrum (Spectrum Level Switch)

Once of loftware spectrum is completely down. Change the logical output management system (LOMS) in ECC from one spectrum application gateway to another spectrum application gateway. Labels were triggered using YLB1 and YLB2 in ECC. Label print functionality has worked as expected.

 

Changing the LOMS from One Spectrum to Another

Trigger Print from ECC

Label Printed from other spectrum

 

Summary:

The blog outlines deploying Loftware in a high-availability setup on Azure. It covers installation, configuration, data transfer, and testing. The goal is seamless label management, leveraging Azure’s features. Co-authored by experts, it’s a valuable resource for enhancing SAP ECC systems with Loftware on Azure.

 

Reference:

Barcode Label Software and Artwork Management Solutions | Loftware

Azure Files premium tier gets zone redundant storage | Azure Blog | Microsoft Azure

What is Azure Load Balancer? - Azure Load Balancer | Microsoft Learn

What is Azure Application Gateway | Microsoft Learn

Version history
Last update:
‎Mar 12 2024 02:26 PM
Updated by: