Saturday, August 27, 2022

ZDM Configuration

1) ZDM Svr Details 

-- Requires one Server per tenancy
-- Provision a New Server 
-- Create the pub and pvt keys for login
        -- Create home and base directories.
The home directory is where the Zero Downtime Migration software will be installed.
The base directory is where all of the ZDMconfiguration files, logs, and other artifacts are stored.
-- Install the ZDM software 
-- if ZDM is already installed , stop current version & continue new version in a separate directory
-- This is required to prevent the MySQL port (8897) conflict between the old and current versions
-- Download the Zero Downtime Migration software kit from 
              ZDM Software Download

2) Establish the connectivity 

-- Setup the firewall rules for port 22 (ingress & egress) on ZDM,Target and Source DB
        -- Edit host file on zdm host/source db & target db to have each others entry
-- Configure ssh 
from ZDM server -- password less login to source opc user
from ZDM server -- password less login to target opc user

3)Check connection to DB Port

        -- Setup up firewall rules between source and target DB for port 1521

4)Ensure that Obj storage buckets are created and connections workconnectivity check

        -- Curl version on source need to be updated when OS is 5.11

5) Ensure to stop any RMAN backup jobs and other jobs that clear archive logs.

6) Parameter checks

SQL> show parameter log_arch
SQL> show parameter fal
SQL> show parameter spfile
SQL> show parameter pfile
Verify sys password on source
Verify TDE 

7) ZDM Response File creation. 

vi /home/zdmuser/zdm_inst1/inst1.rsp
        change parameters 
TGT_DB_UNIQUE_NAME= -- > chg accordingly
TGT_DATADG=+DATAC1  -- > verify
TGT_REDODG=+RECOC1  -- > verify
TGT_RECODG=+RECOC1  -- > verify
HOST= https://<swiftobjectstorage-url>/v1/<namespace>
OPC_CONTAINER= <bucketname> ---> chg accordingly
SKIP_FALLBACK=TRUE
SKIP_SRC_SERVICE_RETENTION=TRUE
SRC_RMAN_CHANNELS=x ( you can update the no.of channels based on CPUs and Load on server)
TGT_RMAN_CHANNELS=x ( you can update the no.of channels based on CPUs and Load on server)

9 Data Migration -- Run in Eval and Final Modes

Eval Mode 
<zdm_home>/bin/zdmcli migrate database -sourcedb <DBNAME> -sourcenode <Node1> -srcauth zdmauth -srcarg1  user:opc -srcarg2 identity_file:<ssh key location> -srcarg3 sudo_location:/usr/bin/sudo -targetnode <TargetN1> -backupuser <oss user> -rsp <responsefilepath> -tgtauth zdmauth -tgtarg1 user:opc -tgtarg2 identity_file:<ssh key location> -tgtarg3 sudo_location:/usr/bin/sudo -ignore ALL -eval
to resume a job:  <ZDM_HOME>/bin/zdmcli resume job  -jobid <no#>
to stop a job:    <ZDM_HOME>/bin/zdmcli abort job  -jobid <no#>  

Final Mode
<zdm_home>/bin/zdmcli migrate database -sourcedb <DBNAME> -sourcenode <Node1> -srcauth zdmauth -srcarg1 user:opc -srcarg2 identity_file:<ssh key location> -srcarg3 sudo_location:/usr/bin/sudo -targetnode <TargetN1> -backupuser <oss user> -rsp <responsefilepath> -tgtauth zdmauth -tgtarg1 user:opc -tgtarg2 identity_file:<ssh key location> -tgtarg3 sudo_location:/usr/bin/sudo -ignore ALL

35 GB ZDM took -- 2 hrs

10 Verify 

   -- Check the gap of the archive log shipped and archived
   -- Switch the logs from primary and verify that they are getting synced at target.

ZDM Commands 

To check the exact build info   : <ZDM_HOME>/bin/zdmcli -build
To check the version : <ZDM_HOME>/bin/zdmcli -v
To start ZDM service : <ZDM_HOME>/bin/zdmservice start
To check status of a particular job             : <ZDM_HOME>/bin/zdmcli query job  -jobid <no#>
To resume particular job    : <ZDM_HOME>/bin/zdmcli resume job  -jobid <no#>
To stop a particular job    : <ZDM_HOME>/bin/zdmcli abort job  -jobid <no#>

To Install zdm :
zdminstall.sh setup oraclehome=<zdmhomepath> oraclebase=<zdmbasepath>/zdmbase_21_3 ziploc=<ZDM KIT HOME>/zdm_home.zip -zdm

To run in eval mode :
 <zdm_home>/bin/zdmcli migrate database -sourcedb <DBNAME> -sourcenode <Node1> -srcauth zdmauth -srcarg1 user:opc -srcarg2 identity_file:<ssh key location> -srcarg3 sudo_location:/usr/bin/sudo -targetnode <TargetN1> -backupuser <oss user> -rsp <responsefilepath> -tgtauth zdmauth -tgtarg1 user:opc -tgtarg2 identity_file:<ssh key location> -tgtarg3 sudo_location:/usr/bin/sudo -ignore ALL -eval

To run in final mode :
 <zdm_home>/bin/zdmcli migrate database -sourcedb <DBNAME> -sourcenode <Node1> -srcauth zdmauth -srcarg1 user:opc -srcarg2 identity_file:<ssh key location> -srcarg3 sudo_location:/usr/bin/sudo -targetnode <TargetN1> -backupuser <oss user> -rsp <responsefilepath> -tgtauth zdmauth -tgtarg1 user:opc -tgtarg2 identity_file:<ssh key location> -tgtarg3 sudo_location:/usr/bin/sudo -ignore ALL

ZDM Phases

ZDM_GET_SRC_INFO
ZDM_GET_TGT_INFO

ZDM_PRECHECKS_SRC
ZDM_PRECHECKS_TGT
ZDM_SETUP_SRC
ZDM_SETUP_TGT
ZDM_PREUSERACTIONS
ZDM_PREUSERACTIONS_TGT
ZDM_OBC_INST_SRC
ZDM_OBC_INST_TGT
ZDM_VALIDATE_SRC
ZDM_VALIDATE_TGT
ZDM_BACKUP_FULL_SRC
ZDM_BACKUP_INCREMENTAL_SRC
ZDM_DISCOVER_SRC
ZDM_COPYFILES
ZDM_PREPARE_TGT
ZDM_SETUP_TDE_TGT
ZDM_CLONE_TGT
ZDM_FINALIZE_TGT
ZDM_CONFIGURE_DG_SRC
ZDM_SWITCHOVER_SRC
ZDM_SWITCHOVER_TGT
ZDM_POST_DATABASE_OPEN_TGT
ZDM_DATAPATCH_TGT
ZDM_POST_MIGRATE_TGT
ZDM_POSTUSERACTIONS
ZDM_POSTUSERACTIONS_TGT
ZDM_CLEANUP_SRC
ZDM_CLEANUP_TGT

Friday, August 26, 2022

ERP Architecture - Discovery Process

A thought process seeded into my head by a senior colleague of mine who has actually been a very good mentor for me. The idea is basically to collect as much information about the Customers Application Farm to remove a dependency on a personnal.
To start with, am jotting down the very basic requirements by taking into consideration the ERP architecture for Oracle EnterpriseOne (a.k.a JD Edwards) . 

Type Info
Server Manager  
Deployment Server Instances/Pathcodes
OS Version - CPU/Mmmry/HDD
Database Server Type of DB
Database Version
RAC/Single Node
OS Version - CPU/Mmry/HDD
Data Size and Growth per year
DB Objects
Number of DB Servers / Pathcodes per Server
OS Version - CPU/Mmmry/HDD
Enterprise Server Number of Servers / Pathcode
OS Version - CPU/Mmry/HDD
HTML/JAS Server
BSSV  Server
AIS Server
RTE Server
OVR
ADF
JDE Orchestrator 
Number of Servers / Pathcode
OS Version - CPU/Mmry/HDD
Weblogic Version
LoadBalancers  Type of LB
Listener Port
Oracle EnterpriseOne  Application  Version
Tools Version
Tools Bitness (32/64)
Standard and Custom Environments and assosiated Pathcodes
Concurrent User Information
Count of Prod Packages per week
Activity Rules
Customizations and Custom OCM/objects
Batch Server No: of  UBEs per day
Batch Queue Information
ESU/ASU/Planner/Updates
21CFR
LDAP/SSO
3rd Party Integrations Vertex
DSI
Other Apps
DR and Replication Details DataGuard/MIMCS/Always ON

ZDM Configuration

1) ZDM Svr Details  -- Requires one Server per tenancy -- Provision a New Server  -- Create the pub and pvt keys for login         -...