CFEngine

From PostgreSQL_wiki
(Redirected from Cfengine)
Jump to: navigation, search

The CFEngine Roadshow is a complete and comprehensive set of CFEngine3 example policies.
In the CFEngine Roadshow every host has a purpose in life, the role, independent from the platform and the environment it lives in. A role is a logical declaration of a use case. The entire process of self configuration as an autonomous voluntary is agent is carried out along the definition of the role. The role uses CFEngine's hard classes to connect to the implementing policies. The CFEngine Roadshow allows the agents to exchange messages that contain configuration data, delivered by Data.

Data has an important share in the configuration process because it provides the agent, through role_views, with all the external data it needs along the lines of its role. Data retrieves the information from a PostgreSQL backend. The Data database is specifically designed to provide those role_views to the agents.

Messaging and Data

Convergence is one of the key concepts of CFEngine and The CFEngine Roadshow is designed to convergently work towards the desired state.

ZMQ

The CFEngine Roadshow is able to apply a light weight broker less messaging system, ZeroMQ, because the information from the agent will eventually arrive. So far the Data use case only applies Asynchronous Request/Response.
Other agent in other roles are free to implement their own message exchange systems.

Data

The REQ message arrives at Data in a JSON format and Data stores the message in the feeds schema in the database, for processing, using the JSONB data type. JSON stands for JavaScript Object Notation, JSONB stands for JSON Binary.
Data runs a Python3 Object Oriented application. Data responds with a tailor made response with all the external data the host needs to configure itself.
Data delivers the data in a leveled structure:

  • host
  • domain
  • role
  • host_role
  • domain_role

Useful links


Terug naar: Voorpagina