Centralised Node Management

This new feature will allow us to manage all remote nodes from the main server. 

The only thing you need to do is to access to the new System Configuration admin menu: 

http://server/en/omk/admin


Technical details 


Managing remote nodes

There are several tools and processes to work with remote nodes: 

ToolAccessWorking modeNotes

Admin GUI

OnlineWill sync the nodes online
CLI Tool 

/usr/local/omk/bin/opnode_admin

BackgroundSee the documentation here
CLI Tool /usr/local/omk/bin/opha-cli.pl act=sync-all-nodes

Online 

cron job - 5 minutes

Will review and sync all the nodes
CLI Tool/usr/local/omk/bin/opha-cli.pl act=sync-nodeOnlineWill sync just one node
CLI Tool/usr/local/omk/bin/opha-cli.pl act=sync-processed-nodes

Background

cron job - 5 minutes

Will sync the nodes processed by opnode_admin
CLI Tool /usr/local/omk/bin/opha-cli.pl act=resync_nodes peer=server-nameOnline

Will remove the nodes from the poller in the Primary

will pull the nodes from the poller

Why different processes? 


Redundant Node Polling

With this new feature, opHA can set up a mirror server for a poller. The mirror server will be polling the same devices than the poller. 

Here you can find a more detailed information with the roles and functionality of each one. 

Architecture Schema



When poller 1 is offline, the Primary will collect all the data from the Mirror 1 automatically. 


It is a requirement that the devices collected from the poller are the same than the mirror. 

Discoveries

What happens when we discover a poller?

What happens when we discover a mirror?

Deletion

What happens when we remove a poller?

We should update the role before removing the poller. If not, we are not going to be able to manage the nodes. We can do this manually by setting opha_role in conf/opCommon.json and restarting the server. 

The mirror will become the poller. 

What happens when we discover a mirror?

We can update the role before removing the poller. If not, we are not going to be able to manage the nodes. We can do this manually by setting opha_role in conf/opCommon.json and restarting the server. 

Pulling Data

What happens when you pull from a poller?

If the poller is active and responsive, we will bring the data from the poller, except for the nodes. This is made in the Sync all Nodes operation. 

What happens when you pull from a mirror?

If the poller is active, we will only bring the registry and the selftest data. 

Data Verification

We can use the following command to review the data and where it is coming from:

/usr/local/omk/bin/opha-cli.pl act=data_verify debug=9 

As an output example:

ACTIVE ENABLED STATUS NODES INVENTORY EVENTS LATEST_DATA STATUS 
=============================================================== 
Poller: poller-nine 0d28dcf0-8fe2-49d9-a26f-6ccf3f2875c0 
	1	ok	[ 519 ] 	[ 20442 ] 	[ 694 ] 	[ 3956 ] 	[ 2059 ] 

Poller: fulla a515c63a-0d11-4bcb-a402-39a4600aebb9 
	1	ok	[ 99 ] 	[ 2827 ] 	[ 2827 ] 	[  ] 	[  ] 

Poller: uburnto 8bf31ddc-8f32-4fdf-8173-8ce989e2e210 
1	1	ok	[ 7 ] 	[ 230 ] 	[ 10 ] 	[ 40 ] 	[ 101 ] 
[Tue May 11 19:40:09 2021] [info] Returning: se7en
Mirror: se7en 1487b8fb-f1f9-41e9-995b-29e925724ff3 
0	1	ok	[  ] 	[  ] 	[  ] 	[  ] 	[  ] 

Also, a new GUI menu has been introduced to show the same data: 

Data verification GUI:


How to know if the data is correct? 

opHA Configuration 

We will see a warning when just one of the properties, opha_hostname and opha_url_base, are set. Both can be unset, or with values, to have a proper configuration.