$ lsnrctl status MGMTLSNR
...
..
.
Listening Endpoints Summaryā¦
(DESCRIPTION=(ADDRESS=(PROTOCOL=ipc)(KEY=MGMTLSNR)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.1.1.11)(PORT=1526)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=169.254.105.132)(PORT=1526)))
..
.
Service "_mgmtdb" has 1 instance(s).
Instance "-MGMTDB", status READY, has 1 handler(s) for this serviceā¦
Service "gimr_dscrep_10" has 1 instance(s).
Instance "-MGMTDB", status READY, has 1 handler(s) for this serviceā¦
The command completed successfully
MGMTDB is DISABLED
$ srvctl status mgmtdb
Database is disabled
Instance -MGMTDB is running on node racnode1
strace log
Log shows private IP access issue.
66684 [00007f94efff1687] getsockname(50, {sa_family=AF_INET, sin_port=htons(48322), sin_addr=inet_addr("169.254.105.132")}, [16]) = 0
66684 [00007f94efff1657] getpeername(50, {sa_family=AF_INET, sin_port=htons(61021), sin_addr=inet_addr("169.254.105.132")}, [16]) = 0
66684 [00007f94f2603aeb] recvfrom(50, 0x1a63888, 10240, 0, NULL, NULL) = -1 EAGAIN (Resource temporarily unavailable)
66684 [00007f94f2603aeb] recvfrom(50, 0x1a63888, 10240, 0, NULL, NULL) = -1 EAGAIN (Resource temporarily unavailable)
66684 [00007f94f2603aeb] recvfrom(50, 0x1a63888, 10240, 0, NULL, NULL) = -1 EAGAIN (Resource temporarily unavailable)
66684 [00007f94f2603aeb] recvfrom(50, 0x1a63888, 10240, 0, NULL, NULL) = -1 EAGAIN (Resource temporarily unavailable)
66684 [00007f94f2603aeb] recvfrom(50, 0x1a63888, 10240, 0, NULL, NULL) = -1 EAGAIN (Resource temporarily unavailable)
LOCAL_LISTENER
local_listener shows without private IP.
SQL> show parameter local_listener
NAME TYPE VALUE
------------------- ------ -------------------------------
local_listener string (ADDRESS=(PROTOCOL=TCP)(HOST=
10.1.1.11)(PORT=1526))
CAUSES
local_listener includes private IP only, but private HAIP is missing.
SOLUTION
ENABLE MGMTDB
$ srvctl enable mgmtdb
$ srvctl status mgmtdb
Database is enabled
Instance -MGMTDB is running on node racnode1
Add private HAIP into local_listener
SQL> alter system set local_listener='(ADDRESS=(PROTOCOL=TCP)(HOST=10.1.1.11)(PORT=1526))','(ADDRESS=(PROTOCOL=TCP)(HOST=169.254.105.132)(PORT=1526))' scope=both;
System altered.
SQL> show parameter local_listener
NAME TYPE VALUE
------------- ------- ------------------------------
local_listener string (ADDRESS=(PROTOCOL=TCP)(HOST=10.1.1.11)
(PORT=1526)), (ADDRESS=(PROTOCOL=TCP)
(HOST=169.254.105.132)(PORT=1526))
Run oclumon command again successfully.
$ oclumon manage -repos checkretentiontime 259200
The Cluster Health Monitor repository can support the desired retention for 2 hosts