etcd: Index | Files | Directories

package api

import ""

Package api manages the capabilities and features that are exposed to clients by the etcd cluster.


Package Files

capability.go cluster.go doc.go

func EnableCapability Uses

func EnableCapability(c Capability)

func IsCapabilityEnabled Uses

func IsCapabilityEnabled(c Capability) bool

func UpdateCapability Uses

func UpdateCapability(lg *zap.Logger, v *semver.Version)

UpdateCapability updates the enabledMap when the cluster version increases.

type Capability Uses

type Capability string
const (
    AuthCapability  Capability = "auth"
    V3rpcCapability Capability = "v3rpc"

type Cluster Uses

type Cluster interface {
    // ID returns the cluster ID
    ID() types.ID
    // ClientURLs returns an aggregate set of all URLs on which this
    // cluster is listening for client requests
    ClientURLs() []string
    // Members returns a slice of members sorted by their ID
    Members() []*membership.Member
    // Member retrieves a particular member based on ID, or nil if the
    // member does not exist in the cluster
    Member(id types.ID) *membership.Member
    // Version is the cluster-wide minimum major.minor version.
    Version() *semver.Version

Cluster is an interface representing a collection of members in one etcd cluster.


etcdhttpPackage etcdhttp implements HTTP transportation layer for etcdserver.
membershipPackage membership describes individual etcd members and clusters of members.
membership/membershippbPackage membershippb is a generated protocol buffer package.
rafthttpPackage rafthttp implements HTTP transportation layer for etcd/raft pkg.
snapPackage snap handles Raft nodes' states with snapshots.
snap/snappbPackage snappb is a generated protocol buffer package.
v2authPackage v2auth implements etcd authentication.
v2discoveryPackage v2discovery provides an implementation of the cluster discovery that is used by etcd with v2 client.
v2errorPackage v2error describes errors in etcd project.
v2httpPackage v2http provides etcd client and server implementations.
v2http/httptypesPackage httptypes defines how etcd's HTTP API entities are serialized to and deserialized from JSON.
v2statsPackage v2stats defines a standard interface for etcd cluster statistics.
v2storePackage v2store defines etcd's in-memory key/value store in v2 API.
v2v3Package v2v3 provides a ServerV2 implementation backed by clientv3.Client.
v3alarmPackage v3alarm manages health status alarms in etcd.
v3clientPackage v3client provides clientv3 interfaces from an etcdserver.
v3compactorPackage v3compactor implements automated policies for compacting etcd's mvcc storage.
v3electionPackage v3election provides a v3 election service from an etcdserver.
v3election/v3electionpbPackage v3electionpb is a generated protocol buffer package.
v3election/v3electionpb/gwPackage v3electionpb is a reverse proxy.
v3lockPackage v3lock provides a v3 locking service from an etcdserver.
v3lock/v3lockpbPackage v3lockpb is a generated protocol buffer package.
v3lock/v3lockpb/gwPackage v3lockpb is a reverse proxy.
v3rpcPackage v3rpc implements etcd v3 RPC system based on gRPC.
v3rpc/rpctypesPackage rpctypes has types and values shared by the etcd server and client for v3 RPC interaction.

Package api imports 6 packages (graph). Updated 2020-10-01. Refresh now. Tools for package owners.