Learn About Deploying PeopleSoft on Oracle Cloud Infrastructure

If you want to provision PeopleSoft on Oracle Cloud Infrastructure or migrate PeopleSoft environments from your data center to Oracle Cloud Infrastructure, you can plan a multihost, secure, high-availability topology.

Architecture

Learn about the key concepts that you can use to plan these deployment options for PeopleSoft:

  • Architecture to deploy PeopleSoft in a single availability domain while ensuring high availability. Use this architecture when you want to ensure that your application is available even when an application instance goes down. The other available application instances in the availability domain continue to process the requests.

  • Architecture to deploy PeopleSoft in multiple availability domains while ensuring high availability. Use this architecture when you want to ensure that your application is available even when one availability domain goes down. You can still access the application instances in another availability domain.

  • Architecture to deploy PeopleSoft while ensuring high availability and disaster recovery. Use this architecture when you want to set up a disaster recovery site for your application in a different region.

The architecture is valid for PeopleSoft deployments done manually or by using PeopleSoft automation tools on Oracle Cloud Infrastructure.

All the architecture diagrams are recommended with the consideration that you don’t want to access your database and application hosts over the internet.

Architecture for Deploying PeopleSoft in a Single Availability Domain

This architecture shows the deployment of a PeopleSoft application in a single availability domain while ensuring high availability.

The architecture consists of a VCN with the bastion, load balancer, application, and database hosts placed in separate subnets of the VCN in a single availability domain. The bastion host is deployed in a public subnet, and all other instances are deployed in private subnets. You can place the different instances in public or private subnets based on your business requirements. You can access the instances in private subnets over port 22 through the bastion host or the DRG if you have set up an IPSec VPN tunnel between your data center and Oracle Cloud Infrastructure DRG.

In this architecture, redundant instances are deployed in the application tier and database tier to ensure high availability within the availability domain. This ensures that your application is available even when an application instance goes down. The other available application instances in the availability domain continue to process the requests. All application instances in the availability domain are active. The load balancer instances receive requests and sends it to the application servers. This high availability of an application within an availability domain can be achieved by placing application instances in separate fault domains. Fault domains enable you to distribute your instances so that they are not on the same physical hardware within a single availability domain. As a result, a hardware failure or hardware maintenance that affects one fault domain does not affect instances in other fault domains.

Instances in the private subnet require outbound connection to the Internet to download patches as well as to apply operating system and application updates. For this purpose, use a Network Address Translation (NAT) gateway in your VCN. With a NAT gateway, the hosts in private subnet can initiate connections to the Internet and receive responses, but won’t receive inbound connections initiated from the Internet.

Oracle recommends that the database and the applications deployed on Oracle Cloud Infrastructure should have a robust backup of recovery strategy. It is recommended to store backup of databases and application instances in the Oracle Cloud Infrastructure Object Storage. The databases and application instances in private subnets can be backed up to Oracle Cloud Infrastructure Object Storage by using a service gateway. A service gateway provides access to Oracle Cloud Infrastructure Object Storage without traversing the Internet.

The automatic and on-demand database backups to Oracle Cloud Infrastructure Object Storage can be configured using the Oracle Cloud Infrastructure console. This requires connectivity to Oracle Cloud Infrastructure Object Storage using a Swift endpoint. All database backups on Oracle Cloud Infrastructure Object Storage are encrypted with the same master key used for Transparent Data Encryption (TDE) wallet encryption. The automatic database backup service uses weekly incremental backup strategy to backup databases with a 30-day retention policy. It is also possible to perform an on-demand full backup of databases for ad-hoc requirements.

The backup of application can be configured by using the policy-based backup feature of Oracle Cloud Infrastructure Block Volumes. Oracle Cloud Infrastructure Block Volumes provides you with the capability to perform volume backups automatically based on a schedule and retain them based on the selected backup policy. This allows you to adhere to your data compliance and regulatory requirements. There are three predefined backup policies: Bronze, Silver, and Gold. Each backup policy has a predefined backup frequency and retention period.


Description of peoplesoft_single_availability_domain_ha_topology.png follows
Description of the illustration peoplesoft_single_availability_domain_ha_topology.png
This architecture is divided into these tiers:
  • Bastion host: The bastion host is an optional component that you can use as a jump server to access the instances in the private subnet.

  • Load Balancer tier: This tier contains the Oracle Cloud Infrastructure Load Balancing instances that load balances the traffic to PeopleSoft web servers. The load balancer receives requests from users, and then routes these requests to the application tier.

  • Application tier: This tier contains redundant instances of the PeopleSoft application servers, PeopleSoft web servers, ElasticSearch servers, and PeopleSoft Process Scheduler to provide high availability. Set up redundant instances of all servers in the application tier to ensure that you can continue accessing the application even if an instance goes down.

  • PeopleTools client: Use the PeopleTools client to perform administration activities, such as development, migration, and upgrade.

  • Database tier: This tier contains Oracle Cloud Infrastructure database system instances. For high availability requirements, Oracle recommends that you use two-node Oracle Real Application Clusters (Oracle RAC) database systems or an Oracle Database Exadata Cloud Service system of Oracle Cloud Infrastructure.

Architecture for Deploying PeopleSoft in Multiple Availability Domains

This architecture shows the deployment of PeopleSoft application servers in multiple availability domains. It shows a VCN with the bastion, load balancer, application, and database hosts placed in separate subnets across two availability domains.

In the architecture diagram, the bastion host is deployed in a public subnet, and all other instances are deployed in private subnets. You can place the instances in public or private subnets based on your business requirements. You can access the instances in private subnets over port 22 through the bastion host or the DRG if you have set up an IPSec VPN tunnel between your data center and Oracle Cloud Infrastructure DRG. All instances are active in the two availability domains. The only passive components in the architecture are the database hosts in Availability Domain 2.

The bastion hosts in Availability Domain 1 and Availability Domain 2 are active and can serve SSH requests to instances in both availability domains at all times. The on-premises DNS or external DNS service receives request for PeopleSoft application. These requests are round-robin load balanced to one of the load balancers in Availability Domain 1 or 2. The load balancer then routes the request to one of the underlying PeopleSoft web server in Availability Domain 1 or 2. The PeopleSoft web server then routes the request to one of the PeopleSoft application servers, and finally the application server forward requests to the active database instances in Availability Domain 1 for processing.

If Availability Domain 1 is not available, you must manually remove the entry of Availability Domain 1 load balancer from the DNS service and switch over the database to the database instances in Availability Domain 2. Requests received from DNS service are now routed to the load balancer in Availability Domain 2, and then finally to the database in Availability Domain 2 for processing.


Description of peoplesoft_multiple_availability_domain_ha_topology.png follows
Description of the illustration peoplesoft_multiple_availability_domain_ha_topology.png
  • Bastion host: A bastion host is an optional component that you can provision in each availability domain to act as a jump host to access application and database instances. Bastion hosts in both Availability Domain 1 and Availability Domain 2 are in the active state.

  • Load balancer instances: Oracle Cloud Infrastructure Load Balancing instances distribute traffic across the application servers in both of the availability domains. Load balancer instances in both Availability Domain 1 and 2 are active. Requests received at the PeopleSoft URL are round-robin load balanced to a load balancer in Availability Domain 1 or 2 by an on-premises or an external DNS service.

  • Application tier: Both Availability Domain 1 and Availability Domain 2 contain redundant instances of PeopleSoft application server, PeopleSoft web server, ElasticSearch servers, and PeopleSoft Process Scheduler. All instances in the application tier across the two availability domains are in the active state.

  • PeopleTools client: Use PeopleTools client to perform administration activities, such as development, migration, and upgrade.

  • Database tier: Se up highly-available database instances in both availability domains. Availability Domain 1 hosts the primary database instances. Availability Domain 2 hosts the standby database instances. In each availability domain, at least two database instances are set up to ensure high availability. If a database instance is not available in Availability Domain 1, then the second database instance in Availability Domain 1 continues processing requests.

    Use Oracle Active Data Guard in synchronous mode to replicate the database across availability domains in a region.

Before You Begin

Before you begin setting up Oracle Cloud Infrastructure components using Terraform, ensure that you’re using a Windows, Linux, or UNIX-like local host with access to the Internet. This system can either be an on-premise system, or it can be in the cloud. For convenience, we’ll refer to this as your local system or your local host.

You should also have access to an Oracle Cloud Infrastructure tenancy.

The steps to set up and use Terraform are different on different operating systems. On a Linux or UNIX-like system, you’ll need the following tools and utilities:

  • Git to clone the Terraform provider package and the Terraform modules from the repository. This is optional. You could use a web browser instead, to download the packages.

  • ssh-keygen to generate an SSH key pair.

  • OpenSSL to generate an API signing key pair.

  • A web browser to access the Oracle Cloud Infrastructure Console.

On a Windows system, you’ll need:

  • Git Bash to clone the Terraform provider package and the Terraform modules from the repository. You could use a web browser instead, to download the packages. However, you’ll need Git Bash to generate an API signing key pair as well as an SSH key for the application instances, using OpenSSL or ssh-keygen.

  • PuTTY to generate an SSH key pair and to connect to your bastion hosts using that SSH key.

  • A web browser to access the Oracle Cloud Infrastructure Console.

About Required Services and Roles

This solution requires the following services and roles:

  • Oracle Cloud Infrastructure

Ensure that you minimally have the following policies for your user’s group and compartment:

ALLOW GROUP <YOUR.GROUP> TO MANAGE instance-family IN COMPARTMENT <YOUR.COMPARTMENT>
ALLOW GROUP <YOUR.GROUP> TO MANAGE virtual-network-family IN COMPARTMENT <YOUR.COMPARTMENT>
ALLOW GROUP <YOUR.GROUP> TO MANAGE database-family IN COMPARTMENT <YOUR.COMPARTMENT>
ALLOW GROUP <YOUR.GROUP> TO MANAGE object-family IN COMPARTMENT <YOUR.COMPARTMENT>
ALLOW GROUP <YOUR.GROUP> TO MANAGE volume-family IN COMPARTMENT <YOUR.COMPARTMENT>
ALLOW GROUP <YOUR.GROUP> TO MANAGE load-balancers IN COMPARTMENT <YOUR.COMPARTMENT>
ALLOW GROUP <YOUR.GROUP> TO READ compartments IN COMPARTMENT <YOUR.COMPARTMENT>
Allow GROUP <YOUR.GROUP> to MANAGE file-family in compartment <YOUR.COMPARTMENT>
Allow GROUP <YOUR.GROUP> to READ all-resources in tenancy

See Learn how to get Oracle Cloud services for Oracle Solutions.