mirror of https://github.com/status-im/consul.git
Website: very minor tweaks to docs/internals/anti-entropy.html.
This commit is contained in:
parent
d90a466f45
commit
efb374e080
|
@ -57,17 +57,20 @@ consolidated and consistent view of the cluster.
|
|||
<a name="anti-entropy"></a>
|
||||
### Anti-Entropy
|
||||
|
||||
Consul has a clear separation between the global service catalog and the agent
|
||||
local state as discussed above. Reconciling these two is done using an
|
||||
anti-entropy mechanism.
|
||||
Entropy is the tendency of systems to become increasingly disordered. Consul's
|
||||
anti-entropy mechanisms are designed to counter this tendency, to keep the
|
||||
state of the cluster ordered even through failures of its components.
|
||||
|
||||
Anti-entropy is a syncronization of the local agent state and the catalog. For
|
||||
example, when a user registers a new service or check with the agent, the agent
|
||||
in turn notifies the catalog that this new check exists. Similarly, when a check
|
||||
is deleted from the agent, it is consequently removed from the catalog as well.
|
||||
Consul has a clear separation between the global service catalog and the agent
|
||||
local state as discussed above. The anti-entropy mechanism reconciles these two
|
||||
views of the world: anti-entropy is a syncronization of the local agent state and
|
||||
the catalog. For example, when a user registers a new service or check with the
|
||||
agent, the agent in turn notifies the catalog that this new check exists.
|
||||
Similarly, when a check is deleted from the agent, it is consequently removed from
|
||||
the catalog as well.
|
||||
|
||||
Anti-entropy is also used to update availability information. As agents run
|
||||
their health checks, their status may change, in which case their new status
|
||||
their health checks, their status may change in which case their new status
|
||||
is synced to the catalog. Using this information, the catalog can respond
|
||||
intelligently to queries about its nodes and services based on their
|
||||
availability.
|
||||
|
@ -76,7 +79,7 @@ During this synchronization, the catalog is also checked for correctness. If
|
|||
any services or checks exist in the catalog that the agent is not aware of, they
|
||||
will be automatically removed to make the catalog reflect the proper set of
|
||||
services and health information for that agent. Consul treats the state of the
|
||||
agent as authoritative, meaning if there are any differences between the agent
|
||||
agent as authoritative; if there are any differences between the agent
|
||||
and catalog view, the agent local view will always be used.
|
||||
|
||||
### Periodic Synchronization
|
||||
|
@ -87,9 +90,9 @@ status to the catalog. This ensures that the catalog closely matches the agent's
|
|||
true state. This also allows Consul to re-populate the service catalog even in
|
||||
the case of complete data loss.
|
||||
|
||||
The amount of time between periodic anti-entropy runs will vary based on cluster
|
||||
size to avoid saturation. The table below describes the periodic sync times and
|
||||
how they change as the Consul cluster grows.
|
||||
To avoid saturation, the amount of time between periodic anti-entropy runs will
|
||||
vary based on cluster size. The table below defines the relationship between
|
||||
cluster size and sync interval:
|
||||
|
||||
<table class="table table-bordered table-striped">
|
||||
<tr>
|
||||
|
|
Loading…
Reference in New Issue