Home » Oracle Exadata Patching (KVM Guests)

5- Patch Exadata KVM Guest Servers (VM Servers)

This is part 5/5 of Exadata Patch series, this section outlines the patching workflow for virtualized DB servers running on Exadata, including all necessary steps: Precheck, Backup, CRS Shutdown, Patch Apply, and Post-Patch Validation. The process is managed using patchmgr and dcli, ensuring a centralized and repeatable approach.

We have RAC include 4 servers, base on that I will apply the patch on VM1 & VM2 from VM3

Step 1: Precheck Phase

Ensure you can connect passwordlessly between peer VMs to facilitate patching:

From VM_3:

Setup Passwordless


cat /u01/stage/XXX_list_Grpb_1_2
EXA1-XXX-DBP1
EXA1-XXX-DBP2

dcli -g /u01/stage/XXX_list_Grpb_1_2 -l root -k -s '-o StrictHostKeyChecking=no'
dcli -g /u01/stage/XXX_list_Grpb_1_2 -l root hostname

Comment: Passwordless SSH is crucial for dcli and patchmgr to function across nodes.

Run precheck:


cd /u01/stage/Exadata_24.1.2.0.0/dbserver_patch_240719

./patchmgr --dbnodes /u01/stage/XXX_list_Grpb_1_2 \
  --precheck \
  --repo /u01/stage/Exadata_24.1.2.0.0/p36684576_241000_Linux-x86-64.zip \
  --target_version 24.1.2.0.0.240711 \
  --log_dir auto

Note: Add –skip_gi_db_validation if Grid Infrastructure (GI) is not fully installed.

Step 2: Backup (Optional but Recommended)


cd /u01/stage/Exadata_24.1.2.0.0/dbserver_patch_240719

./patchmgr --dbnodes /u01/stage/XXX_list_Grpb_1_2 \
  --backup --rolling \
  --repo /u01/stage/Exadata_24.1.2.0.0/p36684576_241000_Linux-x86-64.zip \
  --target_version 24.1.2.0.0.240711

Comment: Add –allow_active_network_mounts if your environment uses NFS mounts.

Step 3: Stop CRS and Agents

Disable and stop Clusterware:


dcli -g /u01/stage/XXX_list_Grpb_1_2 -l root "/u01/app/19.0.0.0/grid/bin/crsctl disable crs"
dcli -g /u01/stage/XXX_list_Grpb_1_2 -l root "/u01/app/19.0.0.0/grid/bin/crsctl stop crs"
Validate CRS is down:

dcli -g /u01/stage/XXX_list_Grpb_1_2 -l root "ps -ef | grep grid | grep -v grep"
dcli -g /u01/stage/XXX_list_Grpb_1_2 -l root "ps -ef | grep pmon | grep -v grep"
Stop Enterprise Manager agents:

dcli -g /u01/stage/HYP_list_Grpb_1_2 -l oracle /u01/app/oracle/agent/agent_13.5.0.0.0/bin/emctl stop agent

Step 4: Apply the Patch

Use screen to safely run the patch session:

screen -S patch_Grpb_1_2
./patchmgr --dbnodes /u01/stage/XXX_list_Grpb_1_2 \
  --upgrade --repo /u01/stage/Exadata_24.1.2.0.0/p36684576_241000_Linux-x86-64.zip \
  --target_version 24.1.2.0.0.240711 [--rolling (no need for rolling here)]

Optional cleanup:
./patchmgr –dbnodes /u01/stage/HYP_list_Grpb_3_4 –precheck -cleanup –log_dir auto

Step 5: Enable CRS and Agents

Start CRS:

dcli -g /u01/stage/XXX_list_Grpb_1_2 -l root /u01/app/19.0.0.0/grid/bin/crsctl enable crs
dcli -g /u01/stage/XXX_list_Grpb_1_2 -l root /u01/app/19.0.0.0/grid/bin/crsctl start crs
Restart EM agents:

dcli -g /u01/stage/XXX_list_Grpb_3_4 -l oracle /u01/app/oracle/agent/agent_13.5.0.0.0/bin/emctl start agent

Once patching is successful on VM1 and VM2, flip the workflow and apply the patch from VM_1 to VM3 and VM4.

🔖 Next: Part 1/5 – Oracle Exadata Patching (Oracle Homes)

🔖 Next: Part 2/5 – Oracle Exadata Patching (RoCE Switches)

🔖 Next: Part 3/5 – Oracle Exadata Patching (Cell Storage)

🔖 Next: Part 4/5 – Oracle Exadata Patching (KVM Host)

🔖 Next: Part 5/5 – Oracle Exadata Patching (KVM Guest)

Tags:

Rate this post

Share this post:

You May Also Like

DB_NT_Tuning
Data Guard

Understanding Oracle SDU, TCP Socket Buffer Sizes, and Linux Network Queue Parameters for Database Performance

Modern database performance is shaped not only by CPU and storage, but also by how efficiently data moves. Parameters in DB, Linux and network device are playing a critical role in determining throughput, latency, and overall connection stability, when these layers are properly aligned, huge result can achieve. This article explores which and how these parameters can be tune.

Read More »

Comments

Get the latest Oracle Database and Exadata tips delivered to your inbox

2 Responses

    1. Nice catch, Yes, you are correct rolling is not necessary in step 4, I have 4 nodes in my cluster but the node list in my command has two nodes only “/u01/stage/XXX_list_Grpb_1_2”

Leave a Reply

Discover more from DBA exadata

Subscribe now to keep reading and get access to the full archive.

Continue reading