ItmWarehouse: Multi Warehouse Proxy Agent (WPA) Usage

ItmWarehouse: Multi Warehouse Proxy Agent (WPA) Usage
For environments with more than 3000 agents exporting data to the warehouse database, it is
recommended to use multiple WPAs. To reduce the number of servers running the ITM
components, the WPA can be run on the same machine as the RTEMS, and be configured to
service the agents connected to that RTEMS. This approach is used in large scale
environments.
Warehouse Proxy Configuration
A WPA uses a broker server to register its socket address. This broker is used by the TEMS
to propagate the address to all the agents. See my blog post on the GLB/LLB for an
explanation of this broker server.
In an ITM 6.X environment containing more than one WPA, each WPA should register with an
annotation representing one or more TEMS names. This means that a WPA serves all the
agents reporting to those TEMS. A WPA can declare the variable
KHD_WAREHOUSE_TEMS_LIST to contain a space or coma delimited list of TEMS names.
The agents reporting to those TEMS are served by this WPA.
Example:
Right click on the “Reconfigure” button on the WPA on the Manage Tivoli Enterprise
Monitoring Services panel. Choose the protocols you want to validate for this WPA.
The hostname given on the following panel represents the hostname of the HUB_TEMS :
You can edit the HD environment file to add the KHD_WAREHOUSE_TEMS_LIST variable or
you can click on the Edit Variable button as shown below:
Default Annotation
We also need to have at least one WPA registered with a default annotation: “Candle
Warehouse Proxy”.
To register a WPA with a default annotation, you must have :
at least one WPA with an empty variable KHD_WAREHOUSE_TEMS_LIST or
nonexistent variable.
at least one WPA with the string *ANY in the variable.
Graphic showing the KHD_WAREHOUSE_TEMS_LIST variable containing a *ANY keyword:
Fall Back option
The default annotation (or string *ANY in the variable KHD_WAREHOUSE_TEMS_LIST) is
also used when you need to indicate that a WPA may serve as a possible fall back agent.
For instance, if you have installed 3 WPA on 3 remote TEMS, and each WPA should serve all
the agents reporting to those TEMS, you can set the following configuration:
•
•
•
WPA1: KHD_WAREHOUSE_TEMS_LIST = RTEMS1, *ANY
WPA2: KHD_WAREHOUSE_TEMS_LIST = RTEMS2, *ANY
WPA3: KHD_WAREHOUSE_TEMS_LIST = RTEMS3, *ANY
Adding the “*ANY” string in the TEMS list for each WPA means that each WPA can serve as a
fall back WPA if one or more WPA stop working.
A TEMS name can only be specified in the list for one WPA. You should not specify the
same TEMS name in more than one WPA TEMS list. Trying to do load balancing by
specifying the same TEMS name in 2 different KHD_WAREHOUSE_TEMS_LIST variables is
not correct.
Note: once an historical export has been re-directed to a fall back WPA because its favorite
WPA is down, the historical exports continue to be sent to this backup WPA even if the
favorite WPA is back up. To re-establish the original configuration, you need to stop and
restart the fall back WPA.
Warehouse Proxy Registration
Registration in the GLB on the HUB TEMS
When a warehouse Proxy starts, it registers its socket address( protocol/network address
/port) to the Global Location Broker (on the HUB TEMS) with an annotation (character string).
This registration is reprocessed every 5 minutes if the registration fails. Once the registration
succeeds, the registration is reprocessed every 15 minutes to be sure that nothing has
changed. For instance if the HUB-TEMS has been recycled, the WPA is not registered
anymore in the Global Location Broker, and the re-process corrects this.
Registration in the LLB on the remote TEMS
On each remote TEMS , the WPA socket addresses are replicated to the Local Location
Broker (LLB) on the remote TEMS once an hour.
The first time an historical export happens, a look-up is done in the LLB to find the socket
address of a WPA this historical export is sent to. If the historical export does not find a WPA
address, an error message of type “ WPA unregistered “ is traced in the WPA log file.
Example:
Let’s imagine the following environment
•
•
•
1 HUB TEMS
3 remote TEMS
3 WPAs
Each WPA is installed on the same box where the remote TEMS is installed.
Only 2 WPA have their KHD_WAREHOUSE_TEMS_LIST set.
Not having a variable is equivalent to an empty variable.
•
•
•
WPA1: KHD_WAREHOUSE_TEMS_LIST = RTEMS1
WPA2: KHD_WAREHOUSE_TEMS_LIST = RTEMS2
WPA3: KHD_WAREHOUSE_TEMS_LIST =
We expect that the agents connected to the RTEMS1 to be served by the WPA1.
We expect that the agents connected to the RTEMS2 to be served by the WPA2.
We expect that the agents connected to the RTEMS3 are served by the WPA3. We also
expect that if WPA2 or WPA1 fail to serve, then the WPA3 is used as a fall back agent.
However if the WPA3 is not up, there is no fall back WPA.
The following table shows the registration in the HUB TEMS for each WPA configured with 2
protocols IP.SPIPE and IP.PIPE and the variable KHD_WAREHOUSE_TEMS_LIST set as
described above.
WPA
Protocols
Interfaces
Ports
WPA1
Ip.spipe
Ip.pipe
Ip.spipe
Ip.pipe
Ip.spipe
Ip.pipe
192.168.0.1
192.168.0.1
192.168.0.2
192.168.0.2
192.168.0.3
192.168.0.3
65100
63358
65100
63358
65100
63358
WPA2
WPA3
KHD_WAR
EHOUSE_
TEMS_LI
ST
RTEMS1
RTEMS2
Registration in GLB
RTEMS1 @Ip.spipe: 192.168.0.1[65100]
RTEMS1 @Ip.pipe: 192.168.0.1[63358]
RTEMS2 @Ip.spipe: 192.168.0.2[65100]
RTEMS2 @Ip.pipe: 192.168.0.2[63358]
[email protected]: 192.168.0.3[65100]
[email protected]: 192.168.0.3[63358]
The following tables represent the content of the Local Location Broker on each Remote
TEMS.
Registration in LLB remote TEMS1
RTEMS1 @Ip.spipe: WPA1 [65100]
RTEMS1 @Ip.pipe: WPA1 [63358]
“Candle_Warehouse_Proxy”@ Ip.spipe: WPA3 [65100]
“Candle_Warehouse_Proxy”@ Ip.pipe: WPA3 [63358]
Registration in LLB remote TEMS2
RTEMS2 @Ip.spipe: WPA2 [65100]
RTEMS2 @Ip.pipe: WPA2 [63358]
“Candle_Warehouse_Proxy”@ Ip.spipe: WPA3 [65100]
“Candle_Warehouse_Proxy”@ Ip.pipe: WPA3 [63358]
Registration in LLB remote TEMS3
“Candle_Warehouse_Proxy”@ Ip.spipe: WPA3 [65100]
“Candle_Warehouse_Proxy”@ Ip.pipe: WPA3 [63358]
The first time the historical data stored at the TEMS or at the TEMA needs to be exported, the
address of the WPA that is supposed to execute the insertion of these data in the Tivoli Data
Warehouse database needs to be found. The address is searched in the Local Location
Broker of the TEMS the agent is connected to or the TEMS the agent data has been stored.
The favorite WPA is the one that is registered with this same TEMS name. If there is no
Warehouse Proxy registered in the LLB with the TEMS name then the search looks for a WPA
with a default annotation “Candle Warehouse Proxy”: this is the fall back agent.
Once the address of the WPA has been found, the transfer of data happens and the data is
inserted in the Tivoli Warehouse Database.
The following graphics shows the historical data sent to their respective WPAs
If the WPA2 is stopped, the GLB on the HUB TEMS does not contain its address anymore.
WPA
Protocols
Interfaces
Ports
WPA1
Ip.spipe
Ip.pipe
Ip.spipe
Ip.pipe
192.168.0.1
192.168.0.1
192.168.0.3
192.168.0.3
65100
63358
65100
63358
WPA3
KHD_WAR
EHOUSE_
TEMS_LI
ST
RTEMS1
Registration in GLB
RTEMS1 @Ip.spipe: 192.168.0.1[65100]
RTEMS1 @Ip.pipe: 192.168.0.1[63358]
[email protected]: 192.168.0.3[65100
]
[email protected]: 192.168.0.3[63358]
The historical export fails as the WPA2 is not running anymore:
When the route to the WPA is broken, a new research is done through the LLB. Each address
is selected and the first one that works is kept.
Registration in LLB remote TEMS2
RTEMS2 @Ip.spipe: WPA2 [65100]
RTEMS2 @Ip.pipe: WPA2 [63358]
“Candle_Warehouse_Proxy”@ Ip.spipe: WPA3 [65100]
“Candle_Warehouse_Proxy”@ Ip.pipe: WPA3 [63358]
The third entry in the LLB is chosen and the data is sent to the WPA3
When the GLB entries are replicated to the LLB of the Remote TEMS2, the entries looks like
this:
Registration in LLB remote TEMS2
“Candle_Warehouse_Proxy”@ Ip.spipe: WPA3 [65100]
“Candle_Warehouse_Proxy”@ Ip.pipe: WPA3 [63358]
In summary, use KHD_WAREHOUSE_TEMS_LIST for each WPA to define which RTEMS it
supports. It is recommended that the WPA run on the RTEMS it supports. And make sure
that at least one WPA uses the *ANY keyword in the KHD_WAREHOUSE_TEMS_LIST. The
*ANY keyword can also be used to allow the WPAs to backup one another.