GSM endpoint not found in GSM.ora

Welcome to GDS/GSM(12c) post and first from www.oracle-ckpt.com, This blog post explains you what are the implications when the basic settings are not used prior to managing the GSM or GDS. As we know the repository of the GDS will be located in the catalog database and it can be created in any region. In order to manage Global data service(GDS) we have dedicated utility i.e. “GDSCTL”,  In order to view/add/manage we must have connection established like below.

[oracle@ORA-C2 admin]$ gdsctl
GDSCTL: Version 12.1.0.2.0 - Production on Sun Apr 17 22:56:39 NZST 2016
Copyright (c) 2011, 2014, Oracle. All rights reserved.
Welcome to GDSCTL, type "help" for information.
Current GSM is set to GSMORA
GDSCTL>connect gsmadm/oracle@grep
Catalog connection is established
GDSCTL>

Now our connection was established after connecting to the catalog database and connected to the default GSM i.e GSMORA let’s assume we are well and good to check the status of the databases and services registered to the GSM,

GDSCTL>databases
GSM-45054: GSM error
NET-40002: GSM endpoint not found in GSM.ora
GDSCTL>services
GDSCTL>

When we check for the list of the databases attached to the GSM, we see error that endpoint not found in “GSM.ora”.

What is gsm.ora? 

gsm.ora file is consists of the endpoint information(/u01/app/oracle/product/12.1.0/gsmhome_1/network/admin/gsm.ora) in order to communicate with the catalog database and fetch the information and also same time associated with the message file under “$GSM_HOME/network/mesg/*“,  Let’s see what are the contents of the GSM.ora file

[oracle@ORA-C2 ~]$ cat /u01/app/oracle/product/12.1.0/gsmhome_1/network/admin/gsm.ora
# gsm.ora Network Configuration File: /u01/app/oracle/product/12.1.0/gsmhome_1/network/admin/gsm.ora
# Generated by Oracle configuration tools.
SQLNET.WALLET_OVERRIDE = TRUE
WALLET_LOCATION =
 (SOURCE =
 (METHOD = FILE)
 (METHOD_DATA =
 (DIRECTORY = /u01/app/oracle/product/12.1.0/gsmhome_1/network/admin/gsmwallet)
 )
 )
SOUTHGSM =
 (configuration =
 (listener =
 (ADDRESS = (HOST = ORA-C2.localdomain)(PORT = 1555)(PROTOCOL = tcp))
 )
 (cloud = oradbcloud)
 )
[oracle@ORA-C2 ~]$

SQL> select name from dba_services;
NAME
----------------------------------------------------------------
SYS$BACKGROUND
SYS$USERS
GDS$CATALOG.oradbcloud
GREPXDB
GREP

SQL>

I hope now got the clue? no problem still if not…   when any command executes from gdsctl and it have to communicate with catalog repository database using the endpoint/protocol address mentioned above. Now may be question is we have already connected to gdsctl using the gsamadm but why again to the above service? well.. here is answer gdsctl connect established to create the catalog, create or add the GSM but it will not set the GSM which one you prefer to connect, as you know we can have more than one GSM. 🙂 Once we set the GSM we can now access the services and the databases attached to the GSM/GDS  and see below.
GDSCTL>set gsm -gsm southgsm
GDSCTL>

Now we set our GSM “SOUTHGSM” and we can now okay to check the services, databases, pools, regions so on…

GDSCTL>databases
Database: "canada" Registered: Y State: Ok ONS: N. Role: PRIMARY Instances: 1 Region: europe
 Service: "psfin_nvision" Globally started: Y Started: N
 Scan: N Enabled: Y Preferred: Y
 Registered instances:
 psfin%1
Database: "india" Registered: Y State: Ok ONS: N. Role: PH_STNDBY Instances: 1 Region: apac
 Service: "psfin_nvision" Globally started: Y Started: Y
 Scan: N Enabled: Y Preferred: Y
 Registered instances:
 psfin%11
GDSCTL>services
Service "psfin_nvision.psfin.oradbcloud" has 1 instance(s). Affinity: ANYWHERE
 Instance "psfin%11", name: "ORC1", db: "VADS0011", region: "apac", status: ready.
GDSCTL>

Okay we are done, Now you might realized it is so simple? yes but sometimes simple things may puzzle you 🙂 That’s all.