IBM System i to Azure using Infinite i

Azure Virtual Machines
Azure SQL Database

The Infinite i suite is from Microsoft partner Infinite Corporation. The architecture described here uses it to migrate System i workloads to Azure. It converts RPG and COBOL source code to object code that runs natively on x86 virtual machines (VMs). Application screens and interactions work as before, thus minimizing user retraining. After migration, you maintain programs as usual by making changes to the source code.


This architecture uses Infinite i to migrate System i workloads to Azure.

Download a Visio file of this architecture.


  1. TN5250 web terminal emulation provides user access to Azure over an SSL/TLS encrypted connection.
  2. Azure ExpressRoute provides a dedicated high-speed connection between on-premises and Azure resources.
  3. Infinite i application servers run the migrated workloads. Each server runs in its own Microsoft Azure Virtual Machines VM. The architecture uses two or more VMs for high availability, and Azure Load Balancer controls inbound and outbound network traffic. Infinite i supports an active-passive configuration (one active VM, one standby VM).
  4. The compilers translate System i source code to 64-bit object code that runs on Azure x86 VMs.
  5. An Infinite i internal database emulates the behavior of a DB2/400 database, including features such as physical files, logical files, multi-member files, joins, triggers, referential integrity, commitment control, and journaling. When an application runs on Azure, it accesses data as it did in the AS/400 environment, with no code changes required. Infinite i provides internal database connectors (ODBC and JDBC) for connecting to physical and logical files in the internal database.
  6. Azure Files provides file shares to implement Infinite i files. Mounting a file share on the Azure VM gives programs direct access to the files. The file share also holds load modules and log files.
  7. Instead of the internal database that step 5 describes, you can migrate the DB2/400 database to a standard SQL database. The database options are: SQL Server, Azure SQL, Oracle, and MySQL. These options support the same features as the internal database. When Infinite i migrates the database, it creates a database schema that maps physical files to tables and logical files to views.
  8. Azure Site Recovery provides disaster recovery.


The architecture uses these components:

  • Azure Virtual Machines VMs are on-demand, scalable computing resources that give you the flexibility of virtualization but eliminate the maintenance demands of physical hardware. The operating system choices include Windows and Linux. The VMs are an on-demand and scalable resource.
  • Azure Virtual Machine Scale Sets is automated and load-balanced VM scaling that simplifies management of your applications and increases availability.
  • Azure Virtual Network is a secure private network in the cloud. It connects VMs to one another, to the internet, and to on-premises networks.
  • Azure Private Link carries private connections to Azure services.
  • Azure load balancing services scale VMs for high availability and high performance. This architecture uses Load Balancer, which provides low-latency balancing of traffic among VMs and across multi-tiered hybrid apps.
  • Azure Disk Storage is highly durable and high-performance block storage for Azure VMs. There are four disk storage options for the cloud: Ultra Disk SSD Managed Disks, Premium SSD Managed Disks, Standard SSD Managed Disks, and Standard HDD Managed Disks.
  • Azure Files offers simple, secure, and serverless enterprise-grade file shares in the cloud. The shares support access by the industry-standard Server Message Block (SMB) and Network File System (NFS) protocols. They can be mounted concurrently by cloud and on-premises deployments of Windows, Linux, and macOS.
  • Azure ExpressRoute carries private connections between on-premises infrastructure and Azure datacenters.
  • Azure SQL is a family of SQL cloud databases that provides a unified experience for your entire SQL portfolio, and a wide range of deployment options from edge to cloud.
  • Azure SQL Database, part of the Azure SQL family, is a fully managed platform as a service (PaaS) database engine. It handles most database management functions, such as upgrading, patching, backups, and monitoring, without your involvement. Azure SQL Database is always running on the latest stable version of the SQL Server database engine and patched OS, with 99.99 percent availability.

Scenario details

You can easily migrate your System i and AS/400 workloads to Azure. The migrated workloads will match or improve performance and availability, at lower cost and with opportunities to modernize.

To migrate your applications, you compile them with the Infinite i suite. After deployment on Infinite i on Azure, the applications run as they did on the System i platform. The Infinite i runtime environment provides everything you need to run jobs and execute control language commands in a Linux environment.

There are compilers and translators for these technologies: RPG, RPG/ILE, RPG/Free, COBOL, Control Language Programs (CLP), and Data Description Specifications (DDS).

The Infinite i suite is from Microsoft partner Infinite Corporation. The architecture described here uses it to migrate System i workloads to Azure. It converts RPG and COBOL source code to object code that runs natively on x86 virtual machines (VMs). Application screens and interactions work as before, thus minimizing user retraining. After migration, you maintain programs as usual by making changes to the source code.

The benefits of the Infinite i environment include:

  • Easy migration of System i workloads to Azure.
  • Conversion of tape archives for backup and regulatory compliance.
  • Application screens work as before. You have the option of updating the screens to web-based user interfaces.
  • The Infinite internal database that holds your data emulates DB2/400. You have the option of migrating to a standard SQL database instead, with minor code changes or none at all.
  • Your savings on licensing and maintenance significantly reduces your total cost of ownership.
  • On Azure you have faster and lower-cost options for disaster recovery than you have on System i.

Potential use cases

Use this architecture to easily migrate IBM System i and AS/400 workloads to Azure, and to modernize them and reduce costs.


The following considerations apply to this solution.


The architecture accommodates redundancy and disaster recovery for high availability:

  • Azure Site Recovery disaster recovery service protects against major outages by minimizing downtime and data loss, resulting in low impact recoveries from major failures. The service is dependable, cost-effective, and easy to deploy.
  • For more information on various availability options, see Availability options for Azure Virtual Machines.

Take these steps to improve availability:

  • Use Azure Availability Zones to protect against infrastructure disruptions by eliminating all single points of failure. The SLA for VMs is for 99.99% uptime.
  • Use an availability set, which is a grouping of VMs, for redundancy and availability. See Availability sets overview for more information.
  • For increased availability, use Virtual Machine Scale Sets to set up a group of load-balanced VMs that make up an Azure Virtual Machine Scale Set.
  • Azure load balancing services provide scaling for high availability and high performance.


  • The Infinite i deployment methodology calls for converting and testing workloads before migrating them to the Azure platform.
  • When you move workloads to Azure, you can use Azure services such as Availability Zones, scale sets, and Azure Site Recovery.
  • Azure DevOps can help manage the migration.
  • Consider using Azure Resource Manager templates (ARM templates) for scripted deployment, and for monitoring and alerting capabilities.


  • Azure services, including VMs, scale to meet desired performance.
  • The Infinite i migration design process considers the performance characteristics of the workloads running on System i, and selects the right configuration of Azure services for the desired performance on Azure.
  • Infinite i can take advantage of Azure scale sets to add capacity as needed.
  • The architecture is designed to accommodate parallel processing of independent transactions.
  • For this architecture, Premium SSDs or Ultra Disk SSDs are usually a good choice.


  • Infinite i migrates the System i user-based access roles to Azure.
  • The Infinite i runtime environment provides the same level of security on Azure as the System i environment provided.
  • Azure security best practices can further protect the overall application environment.

Cost optimization

The Infinite i solution keeps costs at a minimum to lower your total cost of ownership:

  • The migration to Azure eliminates IBM licensing and maintenance costs.
  • Linux has lower implementation costs than IBM platforms.
  • The autoscale feature of PaaS services does scaling-on-demand to minimize costs.

To estimate the cost of implementing this solution, use the Pricing calculator.

Here are pricing considerations for specific components:


This article is maintained by Microsoft. It was originally written by the following contributors.

Principal author:

To see non-public LinkedIn profiles, sign in to LinkedIn.

Next steps