Aller au contenu

Référence de l'API

Référence complète de l’API etcd v3

Cette référence d’API est générée automatiquement à partir des fichiers nommés .proto.

service Auth (api/etcdserverpb/rpc.proto)
MéthodeType de requêteType de réponseDescription
AuthEnableAuthEnableRequestAuthEnableResponseAuthEnable active l’authentification.
AuthDisableAuthDisableRequestAuthDisableResponseAuthDisable désactive l’authentification.
AuthStatusAuthStatusRequestAuthStatusResponseAuthStatus affiche l’état de l’authentification.
AuthenticateAuthenticateRequestAuthenticateResponseAuthenticate traite une requête d’authentification.
UserAddAuthUserAddRequestAuthUserAddResponseUserAdd ajoute un nouvel utilisateur. Le nom d’utilisateur ne peut pas être vide.
UserGetAuthUserGetRequestAuthUserGetResponseUserGet obtient les informations détaillées d’un utilisateur.
UserListAuthUserListRequestAuthUserListResponseUserList obtient la liste de tous les utilisateurs.
UserDeleteAuthUserDeleteRequestAuthUserDeleteResponseUserDelete supprime un utilisateur spécifié.
UserChangePasswordAuthUserChangePasswordRequestAuthUserChangePasswordResponseUserChangePassword modifie le mot de passe d’un utilisateur spécifié.
UserGrantRoleAuthUserGrantRoleRequestAuthUserGrantRoleResponseUserGrant accorde un rôle à un utilisateur spécifié.
UserRevokeRoleAuthUserRevokeRoleRequestAuthUserRevokeRoleResponseUserRevokeRole retire un rôle à un utilisateur spécifié.
RoleAddAuthRoleAddRequestAuthRoleAddResponseRoleAdd ajoute un nouveau rôle. Le nom de rôle ne peut pas être vide.
RoleGetAuthRoleGetRequestAuthRoleGetResponseRoleGet obtient les informations détaillées sur un rôle.
RoleListAuthRoleListRequestAuthRoleListResponseRoleList obtient la liste de tous les rôles.
RoleDeleteAuthRoleDeleteRequestAuthRoleDeleteResponseRoleDelete supprime un rôle spécifié.
RoleGrantPermissionAuthRoleGrantPermissionRequestAuthRoleGrantPermissionResponseRoleGrantPermission accorde une permission sur une clé ou une plage spécifique à un rôle spécifié.
RoleRevokePermissionAuthRoleRevokePermissionRequestAuthRoleRevokePermissionResponseRoleRevokePermission retire une permission sur une clé ou une plage spécifique à un rôle spécifié.
service Cluster (api/etcdserverpb/rpc.proto)
MéthodeType de requêteType de réponseDescription
MemberAddMemberAddRequestMemberAddResponseMemberAdd ajoute un membre au cluster.
MemberRemoveMemberRemoveRequestMemberRemoveResponseMemberRemove supprime un membre existant du cluster.
MemberUpdateMemberUpdateRequestMemberUpdateResponseMemberUpdate met à jour la configuration du membre.
MemberListMemberListRequestMemberListResponseMemberList liste tous les membres du cluster.
MemberPromoteMemberPromoteRequestMemberPromoteResponseMemberPromote promeut un membre de type apprenant Raft (non votant) en membre votant Raft.
service KV (api/etcdserverpb/rpc.proto)
MéthodeType de requêteType de réponseDescription
RangeRangeRequestRangeResponseRange récupère les clés dans la plage depuis le magasin clé-valeur.
PutPutRequestPutResponsePut insère la clé donnée dans le magasin clé-valeur. Une requête Put incrémente la révision du magasin clé-valeur et génère un événement dans l’historique des événements.
DeleteRangeDeleteRangeRequestDeleteRangeResponseDeleteRange supprime la plage donnée depuis le magasin clé-valeur. Une requête de suppression incrémente la révision du magasin clé-valeur et génère un événement de suppression dans l’historique des événements pour chaque clé supprimée.
TxnTxnRequestTxnResponseTxn traite plusieurs requêtes dans une seule transaction. Une requête Txn incrémente la révision du magasin clé-valeur et génère des événements avec la même révision pour chaque requête terminée. Il est interdit de modifier la même clé plusieurs fois au sein d’une même transaction.
CompactCompactionRequestCompactionResponseCompact compresse l’historique des événements dans le magasin clé-valeur etcd. Le magasin clé-valeur doit être régulièrement compacté, sinon l’historique des événements continuera de croître indéfiniment.
service Lease (api/etcdserverpb/rpc.proto)
MéthodeType de requêteType de réponseDescription
LeaseGrantLeaseGrantRequestLeaseGrantResponseLeaseGrant crée un bail qui expire si le serveur ne reçoit pas de demande de maintien de vie dans un délai défini. Toutes les clés associées au bail expireront et seront supprimées si le bail expire. Chaque clé expirée génère un événement de suppression dans l’historique des événements.
LeaseRevokeLeaseRevokeRequestLeaseRevokeResponseLeaseRevoke révoque un bail. Toutes les clés associées au bail expireront et seront supprimées.
LeaseKeepAliveLeaseKeepAliveRequestLeaseKeepAliveResponseLeaseKeepAlive maintient le bail actif en transmettant en continu des demandes de maintien de vie du client vers le serveur et des réponses de maintien de vie du serveur vers le client.
LeaseTimeToLiveLeaseTimeToLiveRequestLeaseTimeToLiveResponseLeaseTimeToLive récupère les informations relatives au bail.
LeaseLeasesLeaseLeasesRequestLeaseLeasesResponseLeaseLeases liste tous les bails existants.
service Maintenance (api/etcdserverpb/rpc.proto)
MéthodeType de requêteType de réponseDescription
AlarmeAlarmRequestAlarmResponseAlarme active, désactive et interroge les alarmes relatives à l’intégrité du cluster.
StatutStatusRequestStatusResponseStatut obtient l’état du membre.
DéfragmentationDefragmentRequestDefragmentResponseDéfragmentation défragmente la base de données du membre backend afin de récupérer de l’espace de stockage.
HachageHashRequestHashResponseHachage calcule le hachage de l’espace de clés backend entier, y compris les clés, les bails et les autres compartiments dans le stockage. Conçu uniquement à des fins de test ! Ne pas compter sur cette fonctionnalité en production avec des transactions en cours, car l’opération Hachage ne détient pas de verrous MVCC. Utilisez plutôt l’API “HashKV” pour vérifier la cohérence du compartiment “key”.
HachageKVHashKVRequestHashKVResponseHachageKV calcule le hachage de toutes les clés MVCC jusqu’à une révision donnée. Il ne parcourt que le compartiment “key” dans le stockage backend.
InstantanéSnapshotRequestSnapshotResponseInstantané envoie un instantané de l’ensemble du backend depuis un membre vers un client via un flux.
Transfert du leaderMoveLeaderRequestMoveLeaderResponseTransfert du leader demande au nœud leader actuel de transférer son leadership au destinataire.
Mise à jour vers une version inférieureDowngradeRequestDowngradeResponseMise à jour vers une version inférieure demande une mise à jour vers une version inférieure, vérifie la faisabilité ou annule la mise à jour vers une version inférieure sur la version du cluster. Prise en charge depuis etcd 3.5.
service Watch (api/etcdserverpb/rpc.proto)
MéthodeType de requêteType de réponseDescription
SurveillanceWatchRequestWatchResponseLa surveillance observe les événements survenus ou survenant. Les entrées et sorties sont des flux ; le flux d’entrée sert à créer et annuler des observateurs, tandis que le flux de sortie envoie les événements. Une seule requête RPC de surveillance peut surveiller plusieurs plages de clés, en diffusant les événements de plusieurs surveillance simultanément. L’historique complet des événements peut être surveillé à partir de la dernière révision de compactage.
message AlarmMember (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
memberIDmemberID est l’identifiant du membre associé à l’alarme déclenchée.uint64
alarmalarm est le type d’alarme qui a été déclenchée.AlarmType
message AlarmRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
actionaction est le type de requête d’alarme à émettre. L’action peut être GET pour obtenir les états d’alarme, ACTIVATE pour activer une alarme, ou DEACTIVATE pour désactiver une alarme activée.AlarmAction
memberIDmemberID est l’identifiant du membre associé à l’alarme. Si memberID est 0, la requête d’alarme concerne tous les membres.uint64
alarmalarm est le type d’alarme à prendre en compte pour cette requête.AlarmType
message AlarmResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
alarmsalarms est une liste d’alertes associées à la requête d’alerte.(slice de) AlarmMember
message AuthDisableRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
message AuthDisableResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message AuthEnableRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
message AuthEnableResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message AuthRoleAddRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
namename est le nom du rôle à ajouter au système d’authentification.string
message AuthRoleAddResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message AuthRoleDeleteRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
rolechaîne de caractères
message AuthRoleDeleteResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message AuthRoleGetRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
rolechaîne de caractères
message AuthRoleGetResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
headerResponseHeader
perm(tranche de) authpb.Permission
message AuthRoleGrantPermissionRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
namename est le nom du rôle auquel la permission sera accordée.string
permperm est la permission à accorder au rôle.authpb.Permission
message AuthRoleGrantPermissionResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message AuthRoleListRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
message AuthRoleListResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
roles(tranche de) string
message AuthRoleRevokePermissionRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
rolestring
keybytes
range_endbytes
message AuthRoleRevokePermissionResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message AuthStatusRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
message AuthStatusResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
enabledbool
authRevisionauthRevision est la révision actuelle du magasin d’authentificationuint64
message AuthUserAddRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
namestring
passwordstring
optionsauthpb.UserAddOptions
hashedPasswordstring
message AuthUserAddResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message AuthUserChangePasswordRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
namename est le nom de l’utilisateur dont le mot de passe est modifié.string
passwordpassword est le nouveau mot de passe de l’utilisateur. Notez que ce champ sera supprimé au niveau de l’API.string
hashedPasswordhashedPassword est le nouveau mot de passe de l’utilisateur. Notez que ce champ sera initialisé au niveau de l’API.string
message AuthUserChangePasswordResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message AuthUserDeleteRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
namename est le nom de l’utilisateur à supprimer.string
message AuthUserDeleteResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message AuthUserGetRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
namestring
message AuthUserGetResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
roles(tranche de) string
message AuthUserGrantRoleRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
useruser est le nom de l’utilisateur auquel il faut attribuer un rôle donné.string
rolerole est le nom du rôle à attribuer à l’utilisateur.string
message AuthUserGrantRoleResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message AuthUserListRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
message AuthUserListResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
users(tranche de) string
message AuthUserRevokeRoleRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
namestring
rolestring
message AuthUserRevokeRoleResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message AuthenticateRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
namestring
passwordstring
message AuthenticateResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
tokenle jeton est un jeton autorisé pouvant être utilisé dans les RPC suivantsstring
message CompactionRequest (api/etcdserverpb/rpc.proto)

CompactionRequest compacte le magasin clé-valeur jusqu’à une révision donnée. Toutes les clés obsolètes dont la révision est inférieure à la révision de compactage seront supprimées.

ChampDescriptionType
(versionpb.etcd_version_msg)option
révisionrévision est la révision du magasin clé-valeur pour l’opération de compactage.int64
physiquephysique est défini afin que l’appel RPC attende que le compactage soit physiquement appliqué à la base de données locale, de sorte que les entrées compactées soient totalement supprimées de la base de données arrière.bool
message CompactionResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message Compare (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
resultresult est l’opération de comparaison logique pour cette comparaison.CompareResult
targettarget est le champ clé-valeur à inspecter pour la comparaison.CompareTarget
keykey est la clé concernée par l’opération de comparaison.bytes
target_uniononeof
versionversion est la version de la clé donnée.int64
create_revisioncreate_revision est la révision de création de la clé donnée.int64
mod_revisionmod_revision est la dernière révision de modification de la clé donnée.int64
valuevalue est la valeur de la clé donnée, en bytes.bytes
leaselease est l’identifiant du bail associé à la clé donnée.int64
range_endrange_end compare la cible donnée à toutes les clés de la plage [key, range_end). Voir RangeRequest pour plus de détails sur les plages de clés.bytes
message DefragmentRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
message DefragmentResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message DeleteRangeRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
keykey est la première clé à supprimer dans la plage.bytes
range_endrange_end est la clé suivant la dernière clé à supprimer dans la plage [key, range_end). Si range_end n’est pas fourni, la plage est définie comme ne contenant que la clé fournie. Si range_end est supérieure d’un bit à la clé fournie, la plage correspond à toutes les clés ayant le préfixe (la clé fournie). Si range_end est ‘\0’, la plage correspond à toutes les clés supérieures ou égales à la clé fournie.bytes
prev_kvSi prev_kv est défini, etcd récupère les paires clé-valeur précédentes avant leur suppression. Les paires clé-valeur précédentes seront renvoyées dans la réponse de suppression.bool
message DeleteRangeResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
deleteddeleted est le nombre de clés supprimées par la requête de suppression par plage.int64
prev_kvssi prev_kv est défini dans la requête, les paires clé-valeur précédentes seront renvoyées.(slice de) mvccpb.KeyValue
message DowngradeInfo (api/etcdserverpb/rpc.proto)
ChampDescriptionType
enabledenabled indique si le cluster est activé pour une mise à jour inverse.bool
targetVersiontargetVersion est la version cible de la mise à jour inverse.string
message DowngradeRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
actionaction est le type de demande de rétrogradation à émettre. L’action peut VALIDER la version cible, DOWNGRADE le cluster vers une version antérieure, ou CANCELLER le travail de rétrogradation en cours.DowngradeAction
versionversion est la version cible de la rétrogradation.string
message DowngradeResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
versionversion est la version actuelle du cluster.string
message DowngradeVersionTestRequest (api/etcdserverpb/rpc.proto)

DowngradeVersionTestRequest n’est utilisé que à des fins de test. La version indiquée dans cette requête sera lue comme la version des enregistrements WAL. Si la version cible du downgrade est inférieure à cette version, alors le downgrade (en ligne) ou la migration (hors ligne) n’est pas sécurisé, et ne doit donc pas être autorisé.

ChampDescriptionType
(versionpb.etcd_version_msg)option
verstring
message HashKVRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
révisionrévision est la révision du magasin clé-valeur pour l’opération de hachage.int64
message HashKVResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
hashhash est la valeur de hachage calculée à partir des clés MVCC du membre répondant jusqu’à une révision donnée.uint32
compact_revisioncompact_revision est la révision compactée du magasin clé-valeur au moment où le hachage commence.int64
hash_revisionhash_revision est la révision jusqu’à laquelle le hachage est calculé.int64
message HashRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
message HashResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
hashhash est la valeur de hachage calculée à partir du backend des données clé-valeur du membre répondant.uint32
message LeaseCheckpoint (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
IDID est l’identifiant du bail à sauvegarder.int64
remaining_TTLremaining_TTL est le temps restant avant l’expiration du bail.int64
message LeaseCheckpointRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
checkpoints(slice de) LeaseCheckpoint
message LeaseCheckpointResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message LeaseGrantRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
TTLTTL est le délai d’expiration conseillé en secondes. Un bail expiré retourne -1.int64
IDID est l’identifiant demandé pour le bail. Si ID est défini à 0, le concessionnaire choisit un identifiant.int64
message LeaseGrantResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
IDID est l’identifiant de bail pour le bail accordé.int64
TTLTTL est le délai de vie (time-to-live) choisi par le serveur, en secondes.int64
errorstring
message LeaseKeepAliveRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
IDID est l’identifiant du bail à maintenir actif.int64
message LeaseKeepAliveResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
IDID est l’identifiant du bail issu de la requête de maintien.int64
TTLTTL est le nouveau délai de validité du bail.int64
message LeaseLeasesRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
message LeaseLeasesResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
leases(tranche de) LeaseStatus
message LeaseRevokeRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
IDID est l’identifiant du bail à révoquer. Lorsque l’identifiant est révoqué, toutes les clés associées seront supprimées.int64
message LeaseRevokeResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message LeaseStatus (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
IDint64
message LeaseTimeToLiveRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
IDID est l’identifiant du bail.int64
keyskeys vaut true pour interroger toutes les clés associées à ce bail.bool
message LeaseTimeToLiveResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
IDID est l’identifiant du bail issu de la requête de renouvellement.int64
TTLTTL est le temps restant en secondes pour le bail ; le bail expirera en moins de TTL+1 secondes.int64
grantedTTLGrantedTTL est le délai initial accordé en secondes lors de la création ou du renouvellement du bail.int64
keyskeys est la liste des clés associées à ce bail.(slice de) bytes
message Member (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
IDID est l’identifiant du membre pour ce membre.uint64
namename est le nom lisible par l’humain du membre. Si le membre n’est pas démarré, le nom sera une chaîne vide.string
peerURLspeerURLs est la liste des URL que le membre expose au cluster pour la communication.(slice de) string
clientURLsclientURLs est la liste des URL que le membre expose aux clients pour la communication. Si le membre n’est pas démarré, clientURLs sera vide.(slice de) string
isLearnerisLearner indique si le membre est un membre apprenant Raft.bool
message MemberAddRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
peerURLspeerURLs est la liste des URL que le membre ajouté utilisera pour communiquer avec le cluster.(slice de) chaîne
isLearnerisLearner indique si le membre ajouté est un membre apprenant Raft.bool
message MemberAddResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
membermember contient les informations du membre ajouté.Member
membersmembers est la liste de tous les membres après l’ajout du nouveau membre.(slice de) Member
message MemberListRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
linearizablebool
message MemberListResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
membresmembres est une liste de tous les membres associés au cluster.(liste de) Membre
message MemberPromoteRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
IDID est l’identifiant du membre à promouvoir.uint64
message MemberPromoteResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
membresmembres est une liste de tous les membres après la promotion du membre.(liste de) Member
message MemberRemoveRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
IDID est l’identifiant du membre à supprimer.uint64
message MemberRemoveResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
membresmembres est une liste de tous les membres après suppression du membre.(liste de) Member
message MemberUpdateRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
IDID est l’identifiant du membre à mettre à jour.uint64
peerURLspeerURLs est la nouvelle liste d’URLs que le membre utilisera pour communiquer avec le cluster.(slice de) string
message MemberUpdateResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
membresmembres est une liste de tous les membres après mise à jour du membre.(liste de) Member
message MoveLeaderRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
targetIDtargetID est l’identifiant du nœud du nouveau leader.uint64
message MoveLeaderResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
message PutRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
keykey est la clé, sous forme d’octets, à insérer dans le magasin clé-valeur.bytes
valuevalue est la valeur, sous forme d’octets, à associer à la clé dans le magasin clé-valeur.bytes
leaselease est l’identifiant de bail à associer à la clé dans le magasin clé-valeur. Une valeur de bail égale à 0 indique l’absence de bail.int64
prev_kvSi prev_kv est défini, etcd récupère la paire clé-valeur précédente avant de la modifier. La paire clé-valeur précédente est renvoyée dans la réponse de mise à jour.bool
ignore_valueSi ignore_value est défini, etcd met à jour la clé en utilisant sa valeur actuelle. Retourne une erreur si la clé n’existe pas.bool
ignore_leaseSi ignore_lease est défini, etcd met à jour la clé en utilisant son bail actuel. Retourne une erreur si la clé n’existe pas.bool
message PutResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
prev_kvSi prev_kv est défini dans la requête, la paire clé-valeur précédente sera renvoyée.mvccpb.KeyValue
message RangeRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
keykey est la première clé de la plage. Si range_end n’est pas fourni, la requête ne recherche que key.bytes
range_endrange_end est la borne supérieure de la plage demandée [key, range_end). Si range_end est ‘\0’, la plage comprend toutes les clés >= key. Si range_end est key plus un (par exemple, “aa”+1 == “ab”, “a\xff”+1 == “b”), la requête retourne toutes les clés ayant key comme préfixe. Si key et range_end sont tous deux ‘\0’, la requête retourne toutes les clés.bytes
limitlimit est une limite sur le nombre de clés retournées par la requête. Si limit est défini à 0, il n’y a pas de limite.int64
revisionrevision est le point dans le temps du magasin clé-valeur à utiliser pour la plage. Si revision est inférieur ou égal à zéro, la plage porte sur le magasin clé-valeur le plus récent. Si la révision a été compactée, la réponse renvoie ErrCompacted.int64
sort_ordersort_order est l’ordre des résultats triés retournés.SortOrder
sort_targetsort_target est le champ clé-valeur à utiliser pour le tri.SortTarget
serializableserializable définit la requête de plage pour utiliser des lectures locales sérialisables. Les requêtes de plage sont linéarisables par défaut ; les requêtes linéarisables ont une latence plus élevée et un débit plus faible que les requêtes sérialisables, mais reflètent le consensus actuel du cluster. Pour de meilleures performances, au prix de lectures potentiellement obsolètes, une requête de plage sérialisable est servie localement sans nécessiter de consensus avec les autres nœuds du cluster.bool
keys_onlykeys_only, lorsqu’il est défini, retourne uniquement les clés et non les valeurs.bool
count_onlycount_only, lorsqu’il est défini, retourne uniquement le nombre de clés dans la plage.bool
min_mod_revisionmin_mod_revision est la borne inférieure des révisions de modification des clés retournées ; toutes les clés ayant une révision de modification inférieure sont filtrées.int64
max_mod_revisionmax_mod_revision est la borne supérieure des révisions de modification des clés retournées ; toutes les clés ayant une révision de modification supérieure sont filtrées.int64
min_create_revisionmin_create_revision est la borne inférieure des révisions de création des clés retournées ; toutes les clés ayant une révision de création inférieure sont filtrées.int64
max_create_revisionmax_create_revision est la borne supérieure des révisions de création des clés retournées ; toutes les clés ayant une révision de création supérieure sont filtrées.int64
message RangeResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
kvskvs est la liste des paires clé-valeur correspondant à la requête de plage. kvs est vide lorsque le comptage est demandé.(slice de) mvccpb.KeyValue
moremore indique s’il reste d’autres clés à renvoyer dans la plage demandée.bool
countcount est défini sur le nombre réel de clés présentes dans la plage lorsqu’une requête de comptage est effectuée. Contrairement à Kvs, il n’est pas affecté par les limites ni les filtres (par exemple, Min/Max, Création/Modification, Révisions) et reflète le comptage complet dans la plage spécifiée.int64
message RequestOp (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
requestrequest est une union de types de requête acceptés par une transaction.oneof
request_rangeRangeRequest
request_putPutRequest
request_delete_rangeDeleteRangeRequest
request_txnTxnRequest
message ResponseHeader (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
cluster_idcluster_id est l’identifiant du cluster qui a envoyé la réponse.uint64
member_idmember_id est l’identifiant du membre qui a envoyé la réponse.uint64
revisionrevision est la révision du magasin clé-valeur au moment où la requête a été appliquée, et elle est non définie (donc 0) en cas d’appels n’interagissant pas avec le magasin clé-valeur. Pour les réponses de progression de surveillance, le champ header.revision indique la progression. Tous les événements futurs reçus sur ce flux sont garantis d’avoir un numéro de révision strictement supérieur au numéro de révision header.revision.int64
raft_termraft_term est le terme Raft au moment où la requête a été appliquée.uint64
message ResponseOp (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
responseresponse est une union de types de réponse retournés par une transaction.oneof
response_rangeRangeResponse
response_putPutResponse
response_delete_rangeDeleteRangeResponse
response_txnTxnResponse
message SnapshotRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
message SnapshotResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerheader contient les informations actuelles du magasin clé-valeur. Le premier header dans le flux d’instantané indique le moment précis de l’instantané.ResponseHeader
remaining_bytesremaining_bytes est le nombre d’octets de données binaires à envoyer après ce messageuint64
blobblob contient le morceau suivant de l’instantané dans le flux d’instantané.bytes
versionversion locale du serveur qui a créé l’instantané. Dans un cluster avec des binaires de versions différentes, chaque cluster peut renvoyer un résultat différent. Indique quelle version du serveur etcd doit être utilisée pour restaurer l’instantané.string
message StatusRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
message StatusResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
versionversion est la version du protocole du cluster utilisée par le membre répondant.string
dbSizedbSize est la taille de la base de données du backend physiquement allouée, en octets, du membre répondant.int64
leaderleader est l’identifiant du membre que le membre répondant considère comme leader actuel.uint64
raftIndexraftIndex est l’index de validation Raft actuel du membre répondant.uint64
raftTermraftTerm est le terme Raft actuel du membre répondant.uint64
raftAppliedIndexraftAppliedIndex est l’index appliqué Raft actuel du membre répondant.uint64
errorserrors contient les informations et l’état d’alarme/santé.(slice de) string
dbSizeInUsedbSizeInUse est la taille de la base de données du backend logiquement utilisée, en octets, du membre répondant.int64
isLearnerisLearner indique si le membre est un membre apprenant Raft.bool
storageVersionstorageVersion est la version du fichier de base de données. Elle peut être mise à jour avec un délai par rapport à la version cible du cluster.string
dbSizeQuotadbSizeQuota est la limite de stockage etcd configurée en octets (valeur passée à l’instance etcd par le drapeau –quota-backend-bytes)int64
downgradeInfodowngradeInfo indique s’il existe un processus de rétrogradation.DowngradeInfo
message TxnRequest (api/etcdserverpb/rpc.proto)

Du papier Google PaxosDB : Notre implémentation repose sur une primitive puissante que nous appelons MultiOp. Toutes les autres opérations sur la base de données, à l’exception de l’itération, sont implémentées comme un appel unique à MultiOp. Un MultiOp est appliqué de manière atomique et se compose de trois composants : 1. Une liste de tests appelée garde. Chaque test dans la garde vérifie une entrée unique dans la base de données. Il peut vérifier l’absence ou la présence d’une valeur, ou comparer avec une valeur donnée. Deux tests différents dans la garde peuvent s’appliquer à la même ou à des entrées différentes dans la base de données. Tous les tests de la garde sont appliqués, et MultiOp retourne les résultats. Si tous les tests sont vrais, MultiOp exécute l’opération t op (voir l’élément 2 ci-dessous), sinon il exécute l’opération f op (voir l’élément 3 ci-dessous). 2. Une liste d’opérations sur la base de données appelée t op. Chaque opération de la liste est soit une opération d’insertion, de suppression ou de recherche, et s’applique à une seule entrée de la base de données. Deux opérations différentes de la liste peuvent s’appliquer à la même ou à des entrées différentes dans la base de données. Ces opérations sont exécutées si la garde évalue à vrai. 3. Une liste d’opérations sur la base de données appelée f op. Comme t op, mais exécutée si la garde évalue à faux.

ChampDescriptionType
(versionpb.etcd_version_msg)option
comparecompare est une liste de prédicats représentant une conjonction de termes. Si les comparaisons réussissent, les requêtes réussies seront traitées dans l’ordre, et la réponse contiendra leurs réponses respectives dans l’ordre. Si les comparaisons échouent, les requêtes échouées seront traitées dans l’ordre, et la réponse contiendra leurs réponses respectives dans l’ordre.(liste de) Compare
successsuccess est une liste de requêtes qui seront appliquées lorsque compare évalue à true.(liste de) RequestOp
failurefailure est une liste de requêtes qui seront appliquées lorsque compare évalue à false.(liste de) RequestOp
message TxnResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
succeededsucceeded est défini à true si la comparaison a été évaluée à true, ou à false sinon.bool
responsesresponses est une liste de réponses correspondant aux résultats de l’application de succès si succeeded est true, ou d’échec si succeeded est false.(slice de) ResponseOp
message WatchCancelRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
watch_idwatch_id est l’identifiant de l’observateur à annuler afin qu’aucun événement supplémentaire ne soit transmis.int64
message WatchCreateRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
keykey est la clé à enregistrer pour la surveillance.bytes
range_endrange_end est la fin de la plage [key, range_end) à surveiller. Si range_end n’est pas fourni, seule la clé spécifiée est surveillée. Si range_end est égal à ‘\0’, toutes les clés supérieures ou égales à la clé spécifiée sont surveillées. Si range_end est supérieure d’un bit à la clé donnée, toutes les clés ayant le préfixe (la clé donnée) sont surveillées.bytes
start_revisionstart_revision est une révision facultative à partir de laquelle commencer la surveillance (inclusivement). Aucune valeur de start_revision signifie « maintenant ».int64
progress_notifyprogress_notify est défini afin que le serveur etcd envoie périodiquement une réponse de surveillance sans événements à l’observateur si aucun événement récent n’a eu lieu. Cela est utile lorsque les clients souhaitent récupérer un observateur déconnecté à partir d’une révision connue récente. Le serveur etcd peut décider de la fréquence à laquelle il envoie les notifications en fonction de la charge actuelle.bool
filtersfilters filtre les événements côté serveur avant leur envoi à l’observateur.(slice de) FilterType
prev_kvSi prev_kv est défini, l’observateur créé reçoit la paire clé-valeur précédente avant l’événement. Si la paire clé-valeur précédente a déjà été compactée, rien n’est retourné.bool
watch_idSi watch_id est fourni et non nul, il sera attribué à cet observateur. Étant donné que la création d’un observateur dans etcd n’est pas une opération synchrone, cela permet d’assurer un ordre correct lors de la création de plusieurs observateurs sur le même flux. La création d’un observateur avec un ID déjà utilisé sur le flux provoque une erreur.int64
fragmentfragment permet de diviser de grandes révisions en plusieurs réponses de surveillance.bool
message WatchProgressRequest (api/etcdserverpb/rpc.proto)

Demande que le statut d’avancement du flux de surveillance soit envoyé dans le flux de réponse de surveillance dès que possible.

ChampDescriptionType
(versionpb.etcd_version_msg)option
message WatchRequest (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
request_unionrequest_union est une requête visant à créer un nouvel observateur ou à annuler un observateur existant.oneof
create_requestWatchCreateRequest
cancel_requestWatchCancelRequest
progress_requestWatchProgressRequest
message WatchResponse (api/etcdserverpb/rpc.proto)
ChampDescriptionType
(versionpb.etcd_version_msg)option
headerResponseHeader
watch_idwatch_id est l’identifiant de l’observateur correspondant à la réponse.int64
createdcreated est défini à true si la réponse correspond à une requête de création d’observateur. Le client doit enregistrer l’identifiant d’observateur et s’attendre à recevoir des événements pour l’observateur créé depuis le même flux. Tous les événements envoyés à l’observateur créé seront associés au même watch_id.bool
canceledcanceled est défini à true si la réponse correspond à une requête d’annulation d’observateur ou si la révision de départ a déjà été compactée. Aucun événement supplémentaire ne sera envoyé à l’observateur annulé.bool
compact_revisioncompact_revision est défini à l’index minimum si un observateur tente de surveiller à une révision compactée. Cela se produit lorsqu’un observateur est créé à une révision compactée ou lorsque l’observateur ne parvient pas à suivre l’évolution du magasin clé-valeur. Le client doit traiter l’observateur comme annulé et ne pas tenter de créer un nouvel observateur avec la même révision de départ.int64
cancel_reasoncancel_reason indique la raison de l’annulation de l’observateur.string
fragmentfragment est défini à true si une réponse de surveillance importante a été divisée en plusieurs réponses.bool
events(slice de) mvccpb.Event
message Event (api/mvccpb/kv.proto)
ChampDescriptionType
typetype est le type d’événement. Si type est un PUT, cela indique que de nouvelles données ont été stockées pour la clé. Si type est un DELETE, cela indique que la clé a été supprimée.EventType
kvkv contient le KeyValue associé à l’événement. Un événement PUT contient la paire clé-valeur actuelle. Un événement PUT avec kv.Version=1 indique la création d’une clé. Un événement DELETE/EXPIRE contient la clé supprimée, avec sa révision de modification définie à la révision de la suppression.KeyValue
prev_kvprev_kv contient la paire clé-valeur avant l’événement.KeyValue
message KeyValue (api/mvccpb/kv.proto)
ChampDescriptionType
keykey est la clé sous forme d’octets. Une clé vide n’est pas autorisée.octets
create_revisioncreate_revision est la révision de la dernière création sur cette clé.int64
mod_revisionmod_revision est la révision de la dernière modification sur cette clé.int64
versionversion est la version de la clé. Une suppression réinitialise la version à zéro, et toute modification de la clé augmente sa version.int64
valuevalue est la valeur stockée par la clé, sous forme d’octets.octets
leaselease est l’ID du bail associé à la clé. Lorsque le bail associé expire, la clé sera supprimée. Si lease vaut 0, aucun bail n’est associé à la clé.int64
message Lease (server/lease/leasepb/lease.proto)
ChampDescriptionType
IDint64
TTLint64
RemainingTTLint64
message LeaseInternalRequest (server/lease/leasepb/lease.proto)
ChampDescriptionType
LeaseTimeToLiveRequestetcdserverpb.LeaseTimeToLiveRequest
message LeaseInternalResponse (server/lease/leasepb/lease.proto)
ChampDescriptionType
LeaseTimeToLiveResponseetcdserverpb.LeaseTimeToLiveResponse
message Permission (api/authpb/auth.proto)

Les autorisations constituent une entité unique

ChampDescriptionType
permTypeType
keybytes
range_endbytes
message Role (api/authpb/auth.proto)

Le rôle est une entrée unique dans le bac authRoles

ChampDescriptionType
namebytes
keyPermission(tranche de) Permission
message User (api/authpb/auth.proto)

Utilisateur est une entrée unique dans le bucket authUsers

ChampDescriptionType
namebytes
passwordbytes
roles(tranche de) string
optionsUserAddOptions
message UserAddOptions (api/authpb/auth.proto)
ChampDescriptionType
no_passwordbool