Schéma de spécification
ReplicationSpec définit l'état souhaité de la réplication.
dbcluster:
name: string
downstream:
control: string
host: string
password:
name: string
namespace: string
port: integer
replicationSlotName: string
username: string
upstream:
applicationName: string
logicalReplication:
databaseName: string
pluginName: string
password:
name: string
namespace: string
replicationSlotName: string
synchronous: string
username: string
Champ TypeObligatoire ou facultatif |
Description |
|---|---|
dbcluster
| |
object(facultatif) | DBCluster est le DBCluster auquel appartient cette réplication. |
dbcluster.name
| |
string(facultatif) | Nom du référent. Pour en savoir plus, consultez la section Noms. |
downstream
| |
object(facultatif) | "Downstream" contient les spécifications de la base de données de réplication en aval. |
downstream.control
| |
stringObligatoire | "Control" spécifie l'opération de réplication à effectuer sur cette base de données. Les valeurs autorisées sont "setup", "promote" et "rewind". |
downstream.host
| |
stringObligatoire | "Host" est le point de terminaison de connexion de la base de données en amont auquel cette base de données peut accéder pour la réplication. |
downstream.password
| |
objectObligatoire | "Password" fait référence au secret stockant le mot de passe de l'utilisateur de réplication de la base de données en amont. |
downstream.password.name
| |
string(facultatif) | "name" est un nom unique (dans un espace de noms) servant à référencer une ressource de secret. |
downstream.password.namespace
| |
string(facultatif) | "namespace" définit l'espace dans lequel le nom du secret doit être unique. |
downstream.port
| |
integer(facultatif) | "Port" est le port de la base de données en amont auquel cette base de données peut accéder pour la réplication. La valeur par défaut est 5432. |
downstream.replicationslotname
| |
stringObligatoire | "ReplicationSlotName" est le nom de l'emplacement de réplication créé dans la base de données en amont. Il est utilisé par cette base de données pour la réplication. |
downstream.username
| |
stringObligatoire | "Username" est le nom de l'utilisateur de réplication créé sur la base de données en amont. Il est utilisé par cette base de données pour la connexion à la base de données en amont dans le cadre de la réplication. |
upstream
| |
object(facultatif) | "Upstream" contient les spécifications de la base de données de réplication en amont. |
upstream.applicationName
| |
string(facultatif) | "applicationName" est l'identifiant de la connexion de réplication synchrone. Cette valeur est obligatoire si "Synchronous" est défini sur "true". |
upstream.logicalReplication
| |
object(facultatif) | "LogicalReplication" spécifie la configuration de réplication logique pour l'emplacement de réplication. Si ce champ est vide, l'emplacement de réplication est configuré en tant qu'emplacement de réplication physique. |
upstream.logicalReplication.databaseName
| |
string(facultatif) | "DatabaseName" est le nom de la base de données associée à cet emplacement. Seules les modifications apportées à cette base de données sont diffusées via l'emplacement. |
upstream.logicalReplication.pluginName
| |
string(facultatif) | "PluginName" est le plug-in de décodage associé à cet emplacement. Pour en savoir plus, consultez Explication du décodage logique. |
upstream.password
| |
objectObligatoire | "Password" est la référence au secret stockant le mot de passe de l'utilisateur de réplication. Si aucun mot de passe n'est fourni, un mot de passe est généré et stocké dans un secret affiché dans "status". |
upstream.password.name
| |
string(facultatif) | "name" est un nom unique (dans un espace de noms) servant à référencer une ressource de secret. |
upstream.password.namespace
| |
string(facultatif) | "namespace" définit l'espace dans lequel le nom du secret doit être unique. |
upstream.replicationslotname
| |
string(facultatif) | "ReplicationSlotName" est le nom de l'emplacement de réplication à utiliser pour la réplication. Si ce nom n'est pas fourni, un nom d'emplacement de réplication est généré et affiché dans "status". |
upstream.synchronous
| |
string(facultatif) |
"Synchronous" indique si l'emplacement de réplication doit être configuré pour la réplication synchrone. Si la valeur est "true", "applicationName" est ajouté à la liste des instances de secours synchrones. La valeur par défaut est false.Remarque : Cela peut avoir un impact négatif sur les performances. |
upstream.username
| |
string(facultatif) | "Username" est le nom d'utilisateur de réplication à utiliser pour la réplication. S'il n'est pas fourni, un nom d'utilisateur est généré et affiché dans "status". |
Schéma d'état
"ReplicationStatus" définit l'état de réplication observé.
conditions:
- lastTransitionTime: string
message: string
observedGeneration: integer
reason: string
status: string
type: string
criticalIncidents:
- code: string
createTime: string
message: string
messageTemplateParams: object
resource:
component: string
location:
cluster: string
group: string
kind: string
name: string
namespace: string
version: string
stackTrace:
- component: string
message: string
transientUntil: string
downstream:
physicalDownstream:
setupStrategies:
endedAt: string
message: string
retries: integer
startedAt: string
state: string
strategy: string
state: string
observedGeneration: integer
reconciled: boolean
upstream:
host: string
password:
name: string
namespace: string
port: integer
replicationSlotName: string
username: string
Champ TypeObligatoire ou facultatif |
Description |
|---|---|
conditions[]
| |
object(facultatif) | "Conditions" représente les dernières observations disponibles pour l'état actuel de l'entité. |
conditions[].lastTransitionTime
| |
stringObligatoire | "lastTransitionTime" correspond à la dernière fois où la condition est passée d'un état à un autre, ce qui se produit lorsque la condition sous-jacente a changé. Si l'heure à laquelle la condition sous-jacente a changé est inconnue, utilisez l'heure à laquelle le champ d'API a changé. |
conditions[].message
| |
stringObligatoire | "message" est un message lisible par l'humain indiquant des détails sur la transition. Il peut s'agir d'une chaîne vide. |
conditions[].observedGeneration
| |
integer(facultatif) | "observedGeneration" représente le .metadata.generation sur lequel la condition a été définie. Par exemple, si la valeur .metadata.generation est définie sur 12, mais que la valeur .status.conditions[x].observedGeneration est définie sur 9, la condition est obsolète par rapport à l'état actuel de l'instance. |
conditions[].reason
| |
stringObligatoire | "reason" contient un identifiant programmatique indiquant la raison de la dernière transition de la condition. Les producteurs de types de conditions spécifiques peuvent définir des valeurs et des significations attendues pour ce champ, et indiquer si les valeurs sont considérées comme une API garantie. La valeur doit être une chaîne CamelCase. Ce champ ne doit pas être vide. |
conditions[].status
| |
stringObligatoire | état de la condition. Sa valeur peut être "True", "False" ou "Unknown". |
conditions[].type
| |
stringObligatoire | Type de condition au format CamelCase ou foo.example.com/CamelCase. De nombreuses valeurs .condition.type sont cohérentes entre les ressources, comme "Available". Étant donné que des conditions arbitraires peuvent être utiles (voir .node.status.conditions), il est important de pouvoir résoudre les conflits. L'expression régulière correspondante est (dns1123SubdomainFmt/)?(qualifiedNameFmt). |
criticalIncidents[]
| |
objectObligatoire | "CriticalIncidents" est une liste plate de tous les incidents critiques actifs. |
criticalIncidents[].code
| |
stringObligatoire |
"Code" correspond au code d'erreur de cette erreur spécifique. Les codes d'erreur sont des chaînes DBSE+numeric, comme DBSE1012.
|
criticalIncidents[].createTime
| |
stringObligatoire | "CreateTime" correspond au code temporel d'origine de la création de cet incident. |
criticalIncidents[].message
| |
string(facultatif) | "Message" décrit l'incident survenu ou l'erreur qui s'est produite. |
criticalIncidents[].messageTemplateParams
| |
object(facultatif) | MessageTemplateParams contient des paires clé/valeur nécessaires pour générer une version du message conviviale et axée sur les données dans l'interface utilisateur. |
criticalIncidents[].resource
| |
objectObligatoire | "Resource" contient des informations sur le composant Database Service qui a signalé l'incident, ainsi que des informations sur la ressource Kubernetes. |
criticalIncidents[].resource.component
| |
stringObligatoire | "Component" est un identifiant interne du sous-système du service de base de données qui a signalé l'incident. |
criticalIncidents[].resource.location
| |
object(facultatif) | Emplacement |
criticalIncidents[].resource.location.cluster
| |
string(facultatif) | Nom du cluster de la ressource Kubernetes concernée. |
criticalIncidents[].resource.location.group
| |
string(facultatif) | Nom du groupe de la ressource Kubernetes. |
criticalIncidents[].resource.location.kind
| |
string(facultatif) | Genre de la ressource Kubernetes. |
criticalIncidents[].resource.location.name
| |
string(facultatif) | Nom de la ressource Kubernetes concernée. |
criticalIncidents[].resource.location.namespace
| |
string(facultatif) | Espace de noms de la ressource Kubernetes concernée. |
criticalIncidents[].resource.location.version
| |
string(facultatif) | Version de la ressource Kubernetes. |
criticalIncidents[].stackTrace[]
| |
object(facultatif) | Liste non structurée des messages provenant de la trace de la pile. |
criticalIncidents[].stackTrace[].component
| |
string(facultatif) | Nom d'un composant Database Service ayant enregistré le message. |
criticalIncidents[].stackTrace.message
| |
string(facultatif) | Message consigné. |
criticalIncidents[].transientUntil
| |
string(facultatif) | Si la valeur "TransientUntil" est présente, cela indique que le problème doit être considéré comme temporaire jusqu'à l'heure spécifiée. |
downstream
| |
object(facultatif) | "Downstream" contient l'état observé pour la base de données de réplication en aval. |
downstream.physicalDownstream
| |
object(facultatif) | |
downstream.physicalDownstream.setupStrategies
| |
object(facultatif) | "SetupStrategies" contient des informations sur chaque tentative d'application de la stratégie de configuration. Ces informations sont présentées dans cette liste selon l'ordre dans lequel elles ont été définies dans les spécifications. |
downstream.physicalDownstream.setupStrategies.endedAt
| |
string(facultatif) | "EndedAt" correspond à l'heure à laquelle la dernière tentative d'application de cette stratégie s'est terminée. |
downstream.physicalDownstream.setupStrategies.message
| |
string(facultatif) | "Message" décrit pourquoi la tentative de configuration est dans l'état actuel. |
downstream.physicalDownstream.setupStrategies.retries
| |
integer(facultatif) | "Retries" indique le nombre de fois où cette stratégie a été réessayée. |
downstream.physicalDownstream.setupStrategies.startedAt
| |
string(facultatif) | "StartedAt" correspond à l'heure à laquelle la dernière tentative d'application de cette stratégie a commencé. |
downstream.physicalDownstream.setupStrategies.state
| |
stringObligatoire |
"State" décrit l'état actuel de cette stratégie de configuration. Ce champ accepte les valeurs suivantes :InProgress : la stratégie est en cours d'exécution.Success : la stratégie a été exécutée avec succès et aucune autre application de stratégie de configuration ne sera tentée.Error : la stratégie a échoué, mais une nouvelle tentative sera effectuée. Le champ "Retries" indique le nombre de fois où l'application de cette stratégie a été tentée.Fallback : l'application de la stratégie a échoué et il n'y aura pas d'autre tentative. À la place, nous passerons à la prochaine stratégie disponible, le cas échéant.Unknown |
downstream.physicalDownstream.setupStrategies.strategy
| |
stringObligatoire | "Strategy" est le nom du type de stratégie auquel cet état se rapporte. |
downstream.physicalDownstream.state
| |
object(facultatif) | "State" correspond à l'état de la réplication tel qu'il apparaît dans la table pg_stat_wal_receiver du serveur de base de données en aval. |
observedgeneration
| |
integer(facultatif) | Interne : génération observée par le contrôleur. |
reconciled
| |
boolean(facultatif) | Interne : indique si la ressource a été rapprochée par le contrôleur. |
upstream
| |
object(facultatif) | "Upstream" contient l'état observé de la base de données de réplication en amont. |
upstream.host
| |
string(facultatif) | "Host" est le point de terminaison de connexion de cette base de données auquel les bases de données en aval peuvent accéder pour la réplication. |
upstream.password
| |
object(facultatif) | "Password" fait référence au secret stockant le mot de passe de l'utilisateur de réplication de cette base de données. |
upstream.password.name
| |
string(facultatif) | "name" est un nom unique (dans un espace de noms) servant à référencer une ressource de secret. |
upstream.password.namespace
| |
string(facultatif) | "namespace" définit l'espace dans lequel le nom du secret doit être unique. |
upstream.port
| |
integer(facultatif) | "Port" est le port de cette base de données auquel les bases de données en aval peuvent accéder pour la réplication. |
upstream.replicationslotname
| |
string(facultatif) | "ReplicationSlotName" est le nom de l'emplacement de réplication créé sur cette base de données. Les bases de données en aval peuvent utiliser cet emplacement pour la réplication. |
upstream.username
| |
string(facultatif) | "Username" est le nom de l'utilisateur de réplication sur cette base de données. Les bases de données en aval peuvent se servir de cet utilisateur pour se connecter à cette base de données à des fins de réplication. |