Oracle Grid Plug and Play (GPnP): Understanding Automatic Cluster Discovery
When Oracle introduced Grid Plug and Play (GPnP) in Oracle 11g Release 2, one of its main goals was to simplify cluster management.
Before GPnP, adding a new RAC node required much more manual configuration. Administrators had to configure network settings, storage information, and cluster parameters before a node could join the cluster.
With GPnP, much of this information is automatically discovered.
Although many DBAs rarely interact directly with GPnP, it plays a critical role every time a RAC node starts. Understanding how it works helps explain why nodes can automatically discover the cluster and why certain startup failures occur.
In this article, we’ll explore the GPnP architecture, its components, configuration files, utilities, and troubleshooting techniques.
What is GPnP?
Grid Plug and Play (GPnP) is a Clusterware component that stores and distributes cluster configuration information to every node.
Its responsibilities include:
- Cluster discovery
- Network profile distribution
- ASM discovery
- Cluster profile management
- Node initialization
Think of GPnP as the “directory service” that helps new and existing nodes locate the information needed to join the cluster.
Why GPnP Was Introduced
Before Oracle 11gR2:
- More manual configuration
- Higher risk of inconsistent node settings
- More complex node additions
With GPnP:
- Automatic cluster discovery
- Centralized configuration
- Simplified node deployment
- Easier cluster expansion
GPnP Architecture
A simplified view:
Oracle Cluster
|
GPnP Profile
|
+----------------+----------------+
| |
Node1 Node2
| |
+----------------+----------------+
|
ASM Discovery
Every node reads the same GPnP profile.
What is the GPnP Profile?
The GPnP Profile is an XML configuration file.
It contains information such as:
- Cluster name
- ASM discovery string
- Network profile
- Node information
- Grid Infrastructure configuration
It does not store database data.
Instead, it tells Clusterware how to locate essential cluster resources.
GPnP Startup Sequence
During node startup:
Linux
↓
OHASD
↓
GPnP Profile
↓
Locate ASM
↓
Locate OCR
↓
Start CSSD
↓
Start CRSD
↓
Cluster Ready
Notice that GPnP is used before Oracle Clusterware is fully operational.
GPnP and ASM
One important role of GPnP is helping Oracle locate ASM.
Example:
GPnP
↓
ASM Discovery String
↓
ASM Instance
↓
Disk Groups
↓
OCR
↓
Voting Files
Without this information, Clusterware may not know where the OCR and Voting Disks are stored.
GPnP and New Nodes
Suppose a third node is added.
Node1
Node2
|
New Node
|
GPnP Profile
|
Automatic Discovery
Instead of manually configuring every parameter, the new node retrieves the required information from the GPnP profile.
This significantly reduces deployment time.
GPnP Profile Location
The GPnP profile is stored locally under the Grid Infrastructure home.
Typical location:
$GRID_HOME/gpnp
Example:
cd $GRID_HOME/gpnp
You may see directories similar to:
profiles seed wallets
These files are managed by Oracle and should not be edited manually.
GPnP Utilities
Oracle provides the gpnptool utility.
Display the GPnP profile:
gpnptool get
Display the profile in XML format:
gpnptool get -o-
This command is useful when troubleshooting GPnP-related issues.
Viewing Cluster Information
Cluster name:
olsnodes
Example:
racnode1 racnode2
Display node numbers:
olsnodes -n
Example:
racnode1 1 racnode2 2
Checking Cluster Configuration
Verify the Clusterware stack:
crsctl check cluster
Check resources:
crsctl stat res -t
Although these commands do not display GPnP information directly, they help confirm that GPnP initialization completed successfully.
GPnP and OCR
One common misunderstanding is that GPnP replaces the OCR.
It does not.
The startup process is:
GPnP
↓
Find ASM
↓
Locate OCR
↓
Read Cluster Configuration
↓
Start Resources
GPnP helps Oracle locate the OCR.
The OCR stores the cluster configuration.
GPnP and OLR
Relationship:
OLR
↓
OHAS
↓
GPnP
↓
ASM
↓
OCR
↓
CRSD
Every component depends on the previous one.
This explains why failures early in the startup sequence can prevent the cluster from starting.
Common GPnP Problems
GPnP Profile Corruption
Symptoms:
- Cluster startup failure
- ASM cannot be located
- OHAS startup errors
Verify GPnP:
gpnptool get
ASM Discovery Failure
Symptoms:
- Disk groups not found
- OCR unavailable
Verify ASM:
asmcmd lsdg
Incorrect ASM Discovery String
Symptoms:
- ASM starts but no disks are discovered.
Verify:
SHOW PARAMETER asm_diskstring;
Ensure it matches your storage configuration.
Node Cannot Join the Cluster
Possible causes:
- GPnP communication issue
- Network configuration problem
- Incorrect hostname
- DNS issue
- SSH configuration
Begin by checking Clusterware logs before modifying the configuration.
GPnP Logs
Useful log directory:
cd $GRID_HOME/log/<hostname>/gpnpd
Example log:
gpnpd.log
Search for:
- profile
- discovery
- wallet
- xml
- network
- error
These messages can help identify startup problems.
Useful GPnP Commands
Display profile:
gpnptool get
Display XML:
gpnptool get -o-
Check cluster:
crsctl check cluster
Display resources:
crsctl stat res -t
List nodes:
olsnodes
These commands provide a good starting point when investigating GPnP-related issues.
Best Practices
- Do not edit GPnP files manually.
- Keep node hostnames consistent with DNS.
- Use supported ASM discovery strings.
- Ensure all nodes have synchronized network configuration.
- Include GPnP log checks in your RAC troubleshooting procedures.
- Always use Oracle utilities (
srvctl,crsctl,addnode.sh, etc.) when modifying the cluster configuration.
Production Scenario
A customer recently added a third RAC node after expanding their environment.
The Grid Infrastructure installation completed successfully, but the node never joined the cluster.
The initial assumption was a Clusterware bug.
After reviewing the GPnP and CSS logs, we discovered that the new node had an incorrect private network configuration. The GPnP profile was correct, but the node could not communicate with the existing cluster over the private interconnect.
After correcting the network configuration and restarting the Grid Infrastructure stack, the node joined the cluster immediately.
The lesson was simple: GPnP can only distribute the correct configuration if the underlying network allows the node to reach the cluster.
DBA Tip
GPnP is one of those RAC components that most administrators never notice—until a node refuses to start.
When troubleshooting early startup failures, don’t jump straight to the OCR or the database. Follow the startup sequence:
- Is OHAS running?
- Can GPnP read the cluster profile?
- Can ASM be discovered?
- Can the OCR be accessed?
- Is CSSD online?
- Is CRSD starting?
Following the startup order helps isolate the failure much faster than checking components at random.
In Oracle RAC, every layer builds on the previous one. If GPnP cannot complete its work, the rest of the cluster has nothing to build upon.
Conclusion
Grid Plug and Play is a key part of Oracle Clusterware, even though it operates quietly in the background. It provides the information needed for node discovery, ASM initialization, and cluster startup, making RAC deployments easier to manage and expand.
By understanding how GPnP fits into the startup process and how it interacts with ASM, the OCR, and Clusterware, you’ll be better equipped to diagnose startup problems and maintain a healthy RAC environment.


