仕様スキーマ
ReplicationSpec は、レプリケーションの望ましい状態を定義します。
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
フィールド タイプ必須または省略可 |
説明 |
---|---|
dbcluster
| |
object 省略可 | dbcluster は、このレプリケーションが属する DBCluster です。 |
dbcluster.name
| |
string 省略可 | 参照先の名前。詳細については、名前をご覧ください。 |
downstream
| |
object 省略可 | downstream には、ダウンストリーム データベースのレプリケーションの仕様を指定します。 |
downstream.control
| |
string 必須 | control には、このデータベースで実行するレプリケーション オペレーションを指定します。指定できる値は、setup、promote、rewind です。 |
downstream.host
| |
string 必須 | host は、このデータベースがレプリケーションにアクセスできるアップストリーム データベースの接続エンドポイントです。 |
downstream.password
| |
object 必須 | password は、アップストリーム データベースのレプリケーション ユーザー パスワードを保存する Secret の参照です。 |
downstream.password.name
| |
string 省略可 | name は、Secret リソースを参照する Namespace 内で一意です。 |
downstream.password.namespace
| |
string 省略可 | namespace は、Secret 名が一意である必要がある空間を定義します。 |
downstream.port
| |
integer 省略可 | port は、このデータベースがレプリケーションのためにアクセスできるアップストリーム データベースのポートです。デフォルトは 5432 です。 |
downstream.replicationslotname
| |
string 必須 | replicationslotname は、アップストリーム データベースに作成されたレプリケーション スロットの名前です。このデータベースがレプリケーションで使用します。 |
downstream.username
| |
string 必須 | username は、アップストリーム データベースで作成されたレプリケーション ユーザーの名前です。このデータベースがレプリケーションでアップストリームに接続するために使用します。 |
upstream
| |
object 省略可 | upstream には、レプリケーション アップストリーム データベースの仕様を指定します。 |
upstream.applicationName
| |
string 省略可 | applicationName は、同期レプリケーション接続の識別子です。synchronous が true に設定されている場合、この値は必須です。 |
upstream.logicalReplication
| |
object 省略可 | logicalReplication では、レプリケーション スロットの論理レプリケーション構成を指定します。空の場合、レプリケーション スロットは物理レプリケーション スロットとして構成されます。 |
upstream.logicalReplication.databaseName
| |
string 省略可 | databaseName は、このスロットに関連付けられているデータベースです。このデータベースからの変更のみがスロット経由でストリーミングされます。 |
upstream.logicalReplication.pluginName
| |
string 省略可 | pluginName は、このスロットに関連付けられているデコーディング プラグインです。詳細については、論理デコーディングの説明をご覧ください。 |
upstream.password
| |
object 必須 | password は、レプリケーション ユーザーのパスワードを保存するシークレットへの参照です。password を指定しないと、パスワードが生成され、ステータスに表示された Secret に保存されます。 |
upstream.password.name
| |
string 省略可 | name は、Secret リソースを参照する Namespace 内で一意です。 |
upstream.password.namespace
| |
string 省略可 | namespace は、Secret 名が一意である必要がある空間を定義します。 |
upstream.replicationslotname
| |
string 省略可 | replicationslotname は、レプリケーションに使用するレプリケーション スロットの名前です。指定しない場合、レプリケーション スロット名が生成され、ステータスに示されます。 |
upstream.synchronous
| |
string 省略可 |
synchronous では、レプリケーション スロットを同期レプリケーション用に構成する必要があるかどうかを指定します。true の場合、applicationName が同期スタンバイのリストに追加されます。デフォルトは false です。注: パフォーマンスに悪影響を及ぼす可能性があります。 |
upstream.username
| |
string 省略可 | username は、レプリケーションに使用するレプリケーション ユーザーの名前です。指定しない場合、ユーザー名が生成され、ステータスに示されます。 |
ステータス スキーマ
ReplicationStatus は、レプリケーションの観測された状態を定義します。
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
フィールド タイプ必須または省略可 |
説明 |
---|---|
conditions[]
| |
object 省略可 | conditions は、エンティティの現在の状態について利用可能な最新の観測値を表します。 |
conditions[].lastTransitionTime
| |
string 必須 | lastTransitionTime は、あるステータスから別のステータスに条件が最後に移行した時刻です。これは、基盤となる条件が変更されたときに発生します。基になる条件の変更時刻が不明な場合は、API フィールドの変更時刻を使用します。 |
conditions[].message
| |
string 必須 | message は、移行の詳細を示す人間が読めるメッセージです。空の文字列にすることもできます。 |
conditions[].observedGeneration
| |
integer 省略可 | observedGeneration は、条件が設定された .metadata.generation を表します。たとえば、.metadata.generation が 12 で、.status.conditions[x].observedGeneration が 9 の場合、その状態はインスタンスの現在の状態に対して古くなっています。 |
conditions[].reason
| |
string 必須 | reason には、条件の最後の遷移の理由を示すプログラマティック ID が含まれます。特定の条件タイプのプロデューサーは、このフィールドの想定される値と意味、および値が保証付き API と見なされるかどうかを定義できます。値は CamelCase 文字列にする必要があります。このフィールドは空にできません。 |
conditions[].status
| |
string 必須 | 条件のステータス(True、False、Unknown のいずれか)。 |
conditions[].type
| |
string 必須 | 条件のタイプ(CamelCase または foo.example.com/CamelCase 形式)。多くの .condition.type 値は、Available などリソース間で一貫しています。ただし、任意の条件が有用な場合があるため(.node.status.conditions を参照)、競合を回避する機能が重要です。一致する正規表現は、(dns1123SubdomainFmt/)?(qualifiedNameFmt) です。 |
criticalIncidents[]
| |
object 必須 | criticalIncidents は、アクティブなすべての重大インシデントのフラットなリストです。 |
criticalIncidents[].code
| |
string 必須 |
code は、この特定のエラーのエラーコードです。エラーコードは DBSE+numeric 文字列(DBSE1012 など)です。 |
criticalIncidents[].createTime
| |
string 必須 | createTime は、このインシデントが送信元で作成されたときのタイムスタンプです。 |
criticalIncidents[].message
| |
string 省略可 | message には、発生したインシデントまたはエラーの説明が含まれます。 |
criticalIncidents[].messageTemplateParams
| |
object 省略可 | messageTemplateParams には、ユーザー インターフェースでユーザー フレンドリーなデータドリブン バージョンの message を生成するために必要な Key-Value ペアが含まれます。 |
criticalIncidents[].resource
| |
object 必須 | resource には、インシデントを報告した Database Service コンポーネントに関する情報と、Kubernetes リソースに関する情報が含まれます。 |
criticalIncidents[].resource.component
| |
string 必須 | component は、インシデントを報告した Database Service サブシステムの内部識別子です。 |
criticalIncidents[].resource.location
| |
object 省略可 | ロケーション。 |
criticalIncidents[].resource.location.cluster
| |
string 省略可 | 影響を受けた Kubernetes リソースのクラスタの名前。 |
criticalIncidents[].resource.location.group
| |
string 省略可 | Kubernetes リソースのグループの名前。 |
criticalIncidents[].resource.location.kind
| |
string 省略可 | Kubernetes リソースの Kind。 |
criticalIncidents[].resource.location.name
| |
string 省略可 | 影響を受けた Kubernetes リソースの名前。 |
criticalIncidents[].resource.location.namespace
| |
string 省略可 | 影響を受けた Kubernetes リソースの Namespace。 |
criticalIncidents[].resource.location.version
| |
string 省略可 | Kubernetes リソースのバージョン。 |
criticalIncidents[].stackTrace[]
| |
object 省略可 | スタック トレースに含まれるメッセージの非構造化リスト。 |
criticalIncidents[].stackTrace[].component
| |
string 省略可 | このメッセージをログに記録した Database Service コンポーネントの名前。 |
criticalIncidents[].stackTrace.message
| |
string 省略可 | ログに記録されたメッセージ。 |
criticalIncidents[].transientUntil
| |
string 省略可 | transientUntil が指定されている場合、問題は指定された時刻まで一時的なものと見なす必要があります。 |
downstream
| |
object 省略可 | downstream には、レプリケーション ダウンストリーム データベースの観測された状態が含まれます。 |
downstream.physicalDownstream
| |
object 省略可 | |
downstream.physicalDownstream.setupStrategies
| |
object 省略可 | setupStrategies には、試行された各設定戦略の実行に関する情報が含まれています。仕様で定義されている戦略と同じ順序でこのリストに示されます。 |
downstream.physicalDownstream.setupStrategies.endedAt
| |
string 省略可 | endedAt は、この戦略の最新の試行が終了した時刻です。 |
downstream.physicalDownstream.setupStrategies.message
| |
string 省略可 | message は、設定の試行が現在の状態になった理由の説明です。 |
downstream.physicalDownstream.setupStrategies.retries
| |
integer 省略可 | retries は、この戦略が再試行された回数です。 |
downstream.physicalDownstream.setupStrategies.startedAt
| |
string 省略可 | startedAt は、この戦略の最新の試行が開始された時刻です。 |
downstream.physicalDownstream.setupStrategies.state
| |
string 必須 |
state は、この設定戦略の現在の状態です。値は次のいずれかです。InProgress : 戦略が現在実行されています。Success : 戦略が正常に完了したため、以降は設定戦略が試行されません。Error : 戦略は失敗しましたが、再試行されます。retries フィールドに、この戦略が再試行された回数が示されます。Fallback : 戦略は失敗し、再試行されません。代わりに、利用可能な次の戦略(存在する場合)にフォールバックします。Unknown |
downstream.physicalDownstream.setupStrategies.strategy
| |
string 必須 | strategy は、このステータスの対象である戦略タイプの名前です。 |
downstream.physicalDownstream.state
| |
object 省略可 | state は、ダウンストリーム データベース サーバーの pg_stat_wal_receiver テーブルに表示されるレプリケーションの状態です。 |
observedgeneration
| |
integer 省略可 | Internal: コントローラによって検出された世代。 |
reconciled
| |
boolean 省略可 | Internal: リソースがコントローラによって調整されたかどうか。 |
upstream
| |
object 省略可 | upstream には、レプリケーション アップストリーム データベースの観測された状態が含まれます。 |
upstream.host
| |
string 省略可 | host は、このデータベースの接続エンドポイントで、ダウンストリーム データベースがレプリケーションでアクセスすることができます。 |
upstream.password
| |
object 省略可 | password は、このデータベースのレプリケーション ユーザー パスワードを保存するシークレットの参照です。 |
upstream.password.name
| |
string 省略可 | name は、Secret リソースを参照する Namespace 内で一意です。 |
upstream.password.namespace
| |
string 省略可 | namespace は、Secret 名が一意である必要がある空間を定義します。 |
upstream.port
| |
integer 省略可 | port は、ダウンストリーム データベースがレプリケーションのためにアクセスできるこのデータベースのポートです。 |
upstream.replicationslotname
| |
string 省略可 | replicationslotname は、このデータベースに作成されたレプリケーション スロットの名前です。ダウンストリーム データベースは、このレプリケーション スロットをレプリケーションに使用できます。 |
upstream.username
| |
string 省略可 | username は、このデータベースのレプリケーション ユーザーの名前です。ダウンストリーム データベースは、このユーザーを使用してこのデータベースに接続し、レプリケーションを行うことができます。 |