Fault-tolerant and highly available configuration of distributed services

US11706296B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-11706296-B2
Application numberUS-202117222175-A
CountryUS
Kind codeB2
Filing dateApr 5, 2021
Priority dateOct 13, 2015
Publication dateJul 18, 2023
Grant dateJul 18, 2023

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

Official abstract text for this publication.

Fault-tolerant and highly available configuration of distributed services including a computer-implemented method for role-based configuration discovery comprising receiving a request comprising an identifier of a role; identifying a first key, in a replica of a distributed configuration store, comprising a first value that matches the role identifier; identifying one or more other key-value pairs associated in the replica with the first key; and returning a response to an entity that sent the request comprising the value of at least one key-value pair that is specific to the role the service has. Also disclosed are techniques for log forwarding.

First claim

Opening claim text (preview).

The invention claimed is: 1. A method for service lifecycle management, the method comprising: obtaining, at a first host of one or more hosts in a distributed computing environment, service-host binding information from a replica of a distributed configuration store, wherein the replica of the distributed configuration store represents a local copy of the service-host binding information; determining, at the first host, one or more services to watch based on the service-host binding information, a service of the one or more services being a single instance of a software product or software application installed on at least the first host or one of the one or more hosts in a distributed computing environment; setting a watch on the one or more services to watch; based on the watch, receiving a notification that a target state of a particular service of the one or more services to watch is modified, comprising updating target state information in the replica of the distributed configuration store using a consensus protocol that allows hosts to agree on an ordering for changes in the distributed configuration store; wherein the updated target state of the particular service represents a desired operational state for the particular service; determining, at the first host, a current state of the particular service of the one or more services to watch, wherein the current state represents an operational state for the particular service, and wherein the particular service is hosted at the first host; determining whether the current state of the particular service is inconsistent with the updated target state of the particular service of the one or more services to watch; in response to determining that the current state of the particular service is inconsistent with the updated target state of the particular service, the first host taking a corrective action to modify the particular service, which causes the current state of the particular service to be consistent with the updated target state of the particular service. 2. The method of claim 1 , wherein the one or more services to watch is determined based on an identifier of the first host. 3. The method of claim 1 , wherein the one or more services to watch is determined by enumerating one or more child keys of a predefined key that includes an identifier of the first host in a key name associated with the predefined key. 4. The method of claim 1 , wherein the watch comprises at least one of: a forward watch, a historical and forward watch, or a non-recursive watch. 5. The method of claim 1 , wherein the corrective action taken to modify the particular service by the first host is based on the updated target state of the particular service. 6. The method of claim 1 , further comprising: in response to determining that the current state of the particular service at the first host is not inconsistent with the updated target state for the particular service, continuing to watch the one or more services to watch. 7. One or more non-transitory computer-readable media storing one or more programs for execution by one or more processors, the one or more programs comprising instructions for: obtaining, at a first host, service-host binding information from a replica of a distributed configuration store; determining, at the first host, one or more services to watch based on the service-host binding information, a service of the one or more services being a single instance of a software product or software application installed on one or more hosts in a distributed computing environment; setting a watch on the one or more services to watch; receiving a notification that a target state of a particular service of the one or more services to watch is modified, comprising updating target state information in the replica of the distributed configuration store using a consensus protocol that allows hosts to agree on an ordering for changes in the distributed configuration store; wherein the target state of the particular service represents a desired operational state for the particular service; determining, at the first host, a current state of the particular service of the one or more services to watch, wherein the current state represents an operational state for the particular service, and wherein the particular service is hosted at the first host; determining whether the current state of the particular service is inconsistent with the target state of the particular service of the one or more services to watch; in response to determining that the current state of the particular service is inconsistent with the target state of the particular service, the first host taking a corrective action to modify the particular service, which causes the current state of the particular service to be consistent with the target state of the particular service. 8. The one or more non-transitory computer-readable media of claim 7 , wherein the one or more services to watch is determined based on an identifier of the first host. 9. The one or more non-transitory computer-readable media of claim 7 , wherein the one or more services to watch is determined by enumerating one or more child keys of a predefined key that includes an identifier of the first host in a key name associated with the predefined key. 10. The one or more non-transitory computer-readable media of claim 7 , wherein the watch comprises at least one of: a forward watch, a historical and forward watch, or a non-recursive watch. 11. The one or more non-transitory computer-readable media of claim 7 , wherein the corrective action taken to modify the particular service by the first host is based on the updated target state of the particular service. 12. The one or more non-transitory computer-readable media of claim 7 , further comprising instructions which, when executed by the one or more processors, cause: in response to determining that the current state of the particular service at the first host is not inconsistent with the updated target state for the particular service, continuing to watch the one or more services to watch. 13. A system, comprising: one or more processors; one or more storage media storing one or more programs for execution by the one or more processors, the one or more programs comprising instructions for: obtaining, at a first host of one or more hosts in a distributed computing environment, service-host binding information from a replica of a distributed configuration store, wherein the replica of the distributed configuration store represents a local copy of the service-host binding information; determining, at the first host, one or more services to watch based on the service-host binding information, a service of the one or more services being a single instance of a software product or software application installed on at least the first host or one of the one or more hosts in a distributed computing environment; setting a watch on the one or more services to watch; based on the watch, receiving a notification that a target state of a particular service of the one or more services to watch is modified, comprising updating target state information in the replica of the distributed configuration store using a consensus protocol that allows hosts to agree on an ordering for changes in the distributed configuration store; wherein the updated target state of the particular service represents a desired operational state for the particular service; determining, at the first host, a current state of the particular service of the one or more services to watch, wherein the current state represents an operational state for the particular

Assignees

Inventors

Classifications

  • Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes · CPC title

  • Arrangements for executing specific programs · CPC title

  • Configuring for program initiating, e.g. using registry, configuration files · CPC title

  • Distributed object oriented systems (remote method invocation [RMI] G06F9/548) · CPC title

  • Program initiating; Program switching, e.g. by interrupt · CPC title

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US11706296B2 cover?
Fault-tolerant and highly available configuration of distributed services including a computer-implemented method for role-based configuration discovery comprising receiving a request comprising an identifier of a role; identifying a first key, in a replica of a distributed configuration store, comprising a first value that matches the role identifier; identifying one or more other key-value pa…
Who is the assignee on this patent?
Palantir Technologies Inc
What technology area does this patent fall under?
Primary CPC classification H04L67/1095. Mapped technology areas include Electricity.
When was this patent published?
Publication date Tue Jul 18 2023 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 12 related publications on this page (citations in our corpus or others sharing the same primary CPC).