A plug to an external service that maintains leases on CAs.
A lease protects a binding between a CA identifier and a location. This binding ensures that CAs are unique across the data center, and therefore, they will properly serialize state changes, and provide a consistent view to the external world.
If the node owning the lease crashes, the lease eventually expires. At that point a different, randomly picked, node can create a new lease and restart the CA safely.
- Source:
Extends
Methods
getLeaseTimeout() → {number}
- Source:
Gets the duration of a lease in seconds.
Returns:
The lease timeout in seconds.
- Type
- number
grabLease(id, cb0)
- Source:
Grabs a lease that guarantees exclusive ownership of a CA by this node.
The type of remoteNodeType
is {remoteNode:string}|null
.
Parameters:
Name | Type | Description |
---|---|---|
id |
string | An identifier for the CA. |
cb0 |
cbType | A callback with optional
(error) argument containing the current owner in a
|
renewLeases(ids, cb0)
- Source:
Renews a list of leases currently owned by this node.
Parameters:
Name | Type | Description |
---|---|---|
ids |
Array.<string> | A list of identifiers for local CAs. |
cb0 |
function | A callback of
type |