First, the public IP addresses given by Oracle Cloud Infrastructure (OCI) console map to the individual RAC node IP addresses.
Second, the default RAC listener configuration only has the non-TLS TCP/1521 port listening on the RAC node IP address. I need to add the TLS TCP/2484 port to the RAC node IP address as well.
Before applying the change, the client would return the following error:
ORA-12541: Cannot connect. No listener at host 132.226.96.94 port 2484
$ tail -12 /u01/app/19.0.0.0/grid/network/admin/listener.ora
#LISTENER=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER))))
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.120)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCPS)(HOST = 10.0.0.120)(PORT = 2484))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.0.0.15)(PORT = 1521))
(ADDRESS = (PROTOCOL = TCPS)(HOST = 10.0.0.15)(PORT = 2484))
(SECURITY=(WALLET_LOCATION=/opt/oracle/dcs/commonstore/tcps_wallet))
)
)
$ srvctl stop listener
$ srvctl start listener
$ lsnrctl status|egrep "Endpoint|HOST="
Listening Endpoints Summary...
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.0.0.120)(PORT=1521))(SECURITY=(WALLET_LOCATION=/opt/oracle/dcs/commonstore/tcps_wallet)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=10.0.0.120)(PORT=2484))(SECURITY=(WALLET_LOCATION=/opt/oracle/dcs/commonstore/tcps_wallet)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=10.0.0.15)(PORT=1521))(SECURITY=(WALLET_LOCATION=/opt/oracle/dcs/commonstore/tcps_wallet)))
(DESCRIPTION=(ADDRESS=(PROTOCOL=tcps)(HOST=10.0.0.15)(PORT=2484))(SECURITY=(WALLET_LOCATION=/opt/oracle/dcs/commonstore/tcps_wallet)))
$ netstat -ltn | grep 2484
tcp 0 0 10.0.0.62:2484 0.0.0.0:* LISTEN
tcp 0 0 10.0.0.182:2484 0.0.0.0:* LISTEN
tcp 0 0 10.0.0.45:2484 0.0.0.0:* LISTEN
tcp 0 0 10.0.0.120:2484 0.0.0.0:* LISTEN
tcp 0 0 10.0.0.15:2484 0.0.0.0:* LISTEN
$ cat tnsnames.ora
DEVDB_SSL=
(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCPS)(HOST=devdb-scan.mysubnet.odswest.oraclevcn.com)(PORT=2484))
(SECURITY=
(WALLET_LOCATION=C:\Oracle\client_wallet)
(SSL_SERVER_DN_MATCH=TRUE)
(SSL_SERVER_CERT_DN="CN=devdb-scan.mysubnet.odswest.oraclevcn.com")
)
(CONNECT_DATA=
(SERVER=DEDICATED)
(SERVICE_NAME=devdb.mysubnet.odswest.oraclevcn.com)
)
)
$ sqlplus system/'<db_password>@DEVDB_SSL
SQL> select instance_name from v$instance;
INSTANCE_NAME
----------------
devdb1
Blessings!

No comments:
Post a Comment