You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 14 Next »

Centralised Node Management


  • New administration menu to manage nodes. The GUI will work differently based on the server role: 
    • standalone server: Can manage local nodes. 
    • poller: Just view nodes. 
    • Primary server: Can manage local and remote nodes. This means, the Primary server can replicate the information to the remote pollers.  

Managing remote nodes

There are several tools and processes to work with remotes: 

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 act=sync-all-nodes

Online 

cron job - 5 minutes

Will review and sync all the nodes
CLI Tool/usr/local/omk/bin/opha-cli act=sync-nodeOnlineWill sync just one node
CLI Tool/usr/local/omk/bin/opha-cli 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 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? 

  • sync-all-nodes: Is a more robust process. Will check what the remote nodes have and will review what needs to be updated based on the local database, with the Primary as a source of truth. That means, if the node does not exist in the poller, will create the node in the poller. If the node does not exist in the Primary, will be removed from the poller. If the information is not the same (based in the last updated field), will be updated in the poller. More robust, but less efficient. It has to do a remote call to get all nodes from the pollers, and check one by one all the nodes. Important notes: 
    • If the Primary cannot get the nodes from the poller, the synchronisation will not be done. 
    • If the nodes list in the Primary for one poller is 0, the remote nodes won't be removed. As it could mean that the nodes where not correctly synchronised in the beginning, or there was an issue trying to get the Primary nodes list.
  • sync-processed-nodes: This process will update all nodes in remote pollers based on the information updated by opnode_admin. This is a less robust process, as all the changes done outside opnode_admin won't be taken into account, but it is more effective, as it will sync just the data needed. 
  • opnode_admin: Will update the information to be processed in background - So, it is a non blocking operation. 
  • resync_nodes: In case it is necessary pull the nodes from the poller for some reason (Discovery failed to bring initial nodes, ex).


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. 


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


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

What happen when we discover a poller?

  • The first time we discover a poller, all the nodes are copied into the master. But once they have being copied, in the synchronisations the node configuration will be send from the master to the poller. 
  • The server will be set up as a poller, so we are not gonna be able to edit the nodes from the poller. 

What happen when we discover a mirror?

  • The first time we discover a mirror, it needs to be empty (Except for localhost). This is because, all nodes needs to be copied from the poller that is being mirroring. 
  • The nodes will be sent to the mirror, the mirror will start polling those devices, at the same time that the poller. 
  • But the data it won't be synchronised, unless the poller is disabled/down. 
  • The server will be set up as a mirror, so we are not gonna be able to edit the nodes from the mirror. 
  • Every time we made a change into the poller nodes from the master, they will be replicated into the mirror. 

What happen when we remove a poller?

We can update the role before remove 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 became the poller. 

What happen when we discover a mirror?

We can update the role before remove 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. 


  • No labels