Difference between revisions of "Data"

From PostgreSQL_wiki
Jump to: navigation, search
(Queries)
(Queries)
Line 56: Line 56:
 
{| class="wikitable"
 
{| class="wikitable"
 
!style="text-align:left;"|View Name
 
!style="text-align:left;"|View Name
!style="text-align:left;"|Result Set
+
!style="text-align:left;"|Sorted Result Set
 
!style="text-align:left;"|Select
 
!style="text-align:left;"|Select
 
|-
 
|-
 
|Nagios View
 
|Nagios View
|uqhost, domain, service
+
|domain, uqhost, service
 
|host, domain, role
 
|host, domain, role
 
|-
 
|-

Revision as of 15:59, 28 December 2015

Data is under development, so subject to change (quite much hopefully).
Nodes interact with Data according to a protocol. We suggest we comply with the AMQP standard. https://www.amqp.org

The Universal Truth

All nodes voluntarly sharing their information give Data the opportunity to construct a Universe of information. Data on its turn provides specific information of interest to specific nodes from this Universe to these specific nodes.

Guiding principles

  • Precedence Analysis
  • Desired state is assumend
  • Data holds the Universal Truth

Data presents nodes on request with node taylored views on the Universal Truth, thus supplying the nodes with the the information they require. This is the normal situation in which Data provides updates on the views. Data may respond that it needs additional information. Nodes may find Data needs to be updated with information they hold.

Conceptual Communications Model

Node message (Req) Data Response (Rep) Node Action
Request View ---> Reply with view data ---> Process view info
Reply with Request for Information ---> Prepare Information Feed
Request for Information Feed ---> Reply with hash of Information received ---> Store received Hash
Request Information Feed ---> Reply with hash of Information received ---> Store received updated Hash

Feeds

Nodes send out feeds on request. This request is triggered by a Data response to an information request. The node assumes the requested information to be available from Data, but Data can decide to ask for more information before being able to supply the requested information.

Schemas

Views

Data presents information from The Universal Truth through views.

CMDB

Icinga

Nagios

Nagios only needs little information about the nodes in the Universe.

  • Hostname, sys.uqhost
  • Domain, sys.domain
  • Service, delivered by the host

We feed back information on Services to Nagios. Each Service has a couple of parameters and an array of hosts fulfilling the service.

{ "services": [  { "ssh": [  { "check_command": "" 
    { "hosts": [ { "host": "<fqdn>" }, { "host": "<fqdn>" } ]
    }
  }]
}

Hostgroups are implied by their domain and role, so each host belongs to the domain group and the groups of its role.

Queries

View Name Sorted Result Set Select
Nagios View domain, uqhost, service host, domain, role
Reply with Request for Information ---> Prepare Information Feed
Request for Information Feed ---> Reply with hash of Information received ---> Store received Hash
Request Information Feed ---> Reply with hash of Information received ---> Store received updated Hash

Return to: Cfengine