APIリファレンス

AffinityConfiguration

AffinityConfigurationには、ポッドのアフィニティルールを作成するために必要な情報が含まれています

Name

Description

Type

`enablePodAntiAffinity `

ポッドの非アフィニティをアクティブにします。このフィールドが明示的にfalseに設定されていない限り、演算子はポッドの非アフィニティを定義します

*bool

`topologyKey `

非アフィニティ構成に使用するTopologyKey。詳細については、k8sの文書を参照してください-必須

string

`nodeSelector `

NodeSelectorは、ポッドを実行できるノードを定義するために使用されるキーと値のペアのマップです。詳細: <a href="https://kubernetes.io/docs/concepts/configuration/assign-pod-node/">https</a> ://kubernetes.io/docs/concepts/configuration/assign-pod-node/

map[string]string

`tolerations `

許容値は、汚染されたノードで実行できるようにオーダーに、すべてのポッドに設定する必要がある許容値のリストです。詳細: <a href="https://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/">https</a> ://kubernetes.io/docs/concepts/scheduling-eviction/taint-and-toleration/

[]corev1.Toleration

`podAntiAffinityType `

PodAntiAffinityTypeを使用すると、クラスターインスタンス間のポッドの非アフィニティをスケジューリング時に強力な要件と見なす必要があるかどうかをユーザが決定できます。許可される値は「preferred」(空の場合のデフォルト)または「required」です。 「必須」に設定すると、既存のノードがすべて必要なポッドの非アフィニティルールにマッチしない場合、新しいkubernetesノードが追加されるまでインスタンスが保留状態になる可能性があります。詳細: <a href="https://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity">https</a> ://kubernetes.io/docs/concepts/scheduling-eviction/assign-pod-node/#inter-pod-affinity-and-anti-affinity

string

additionalPodAntiAffinity

AdditionalPodAntiAffinityは、EnablePodAntiAffinityがtrue(デフォルト)に設定されている場合に演算子によって生成されたものに追加されるポッドの非アフィニティー用語を指定するか、falseに設定された場合に排他的に使用されます。

*corev1.PodAntiAffinity

`additionalPodAffinity `

AdditionalPodAffinityでは、すべてのクラスターのポッドに渡されるポッドアフィニティ用語を指定できます。

*corev1.PodAffinity

AzureCredentials

AzureCredentialsは、ファイルをAzure Blob Storageにアップロードするために使用される資格情報の種類です。接続文字列には、必要なすべての情報が含まれています。接続文字列が指定されていない場合、ストレージアカウント名前と次のいずれか(1つのみ)が必要です。

  • storageKey-storageSasToken

Name

Description

Type

connectionString

使用する接続文字列

[*SecretKeySelector](#SecretKeySelector)

`storageAccount `

データをアップロードするストレージアカウント

[*SecretKeySelector](#SecretKeySelector)

`storageKey `

ストレージアカウント名前と組み合わせて使用されるストレージアカウントキー

[*SecretKeySelector](#SecretKeySelector)

`storageSasToken `

ストレージアカウント名前と組み合わせて使用される共有アクセス署名

[*SecretKeySelector](#SecretKeySelector)

バックアップ

バックアップは、バックアップAPIのスキーマです

Name

Description

Type

metadata

NA

[metav1.ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#objectmeta-v1-meta)

`spec `

バックアップの望ましい動作の仕様。詳細: <a href="https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https</a> ://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status

[BackupSpec](#BackupSpec)

`status `

バックアップの最新の状態。このデータは最新ではない可能性があります。システムによって設定されます。読み取り専用。詳細: <a href="https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https</a> ://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status

[BackupStatus](#BackupStatus)

BackupConfiguration

BackupConfigurationは、クラスターのバックアップの取得方法を定義します。現在、サポートされている唯一のバックアップメソッドはbarmanObjectStoreです。詳細と例については、文書の「バックアップ リカバリー」セクションを参照してください

Name

Description

Type

barmanObjectStore

barman-cloudツールスイートの構成

[*BarmanObjectStoreConfiguration](#BarmanObjectStoreConfiguration)

`retentionPolicy `

RetentionPolicyは、バックアップおよびWAL(つまり「60d」)に使用される保持ポリシーです。保持ポリシーは`XXu`のフォームで表されます。XX`は正の整数で、`u`は`[dwm]-日、週、月です。

string

BackupList

BackupListにはバックアップのリストが含まれます

Name

Description

Type

metadata

標準リストメタデータ。詳細: <a href="https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds">https</a> ://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

[metav1.ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#listmeta-v1-meta)

`items `

バックアップのリスト-必須

[[]Backup](#Backup)

BackupSource

BackupSourceには、復元元のバックアップと、それを正しく復元するために必要な情報が含まれています。

Name

Description

Type

endpointCA

EndpointCAは、barmanエンドポイントのCAバンドルを保存します。証明書発行者とbarman-cloud-wal-archiveのエラーを回避するために、自己署名証明書を使用する場合に役立ちます。

[*SecretKeySelector](#SecretKeySelector)

BackupSpec

BackupSpecは、バックアップの望ましい状態を定義します

Name

Description

Type

cluster

バックアップするクラスター

[LocalObjectReference](#LocalObjectReference)

BackupStatus

BackupStatusは、観測されたバックアップの状態を定義します

Name

Description

Type

`s3Credentials `

S3にデータをアップロードするために使用される資格情報

[*S3Credentials](#S3Credentials)

`azureCredentials `

Azure Blob Storageにデータをアップロードするために使用される資格情報

[*AzureCredentials](#AzureCredentials)

googleCredentials

Google Cloud Storageにデータをアップロードするために使用する資格情報

[*GoogleCredentials](#GoogleCredentials)

`endpointCA `

EndpointCAは、barmanエンドポイントのCAバンドルを保存します。証明書発行者とbarman-cloud-wal-archiveのエラーを回避するために、自己署名証明書を使用する場合に役立ちます。

[*SecretKeySelector](#SecretKeySelector)

`endpointURL `

データをクラウドにアップロードするために使用されるエンドポイント。自動エンドポイント検出をオーバーライドします

string

`destinationPath `

バックアップを保存するパス(s3:// bucket / パス/ to / folder)このパスは、異なる宛先フォルダーで、WALとデータに使用されます-必須

string

`serverName `

S3上のサーバー名前。このパラメータを省略するとクラスター名前が使用されます

string

`encryption `

S3 APIに必要な暗号化メソッド

string

`backupId `

BarmanバックアップのID

string

`phase `

最後のバックアップステータス

BackupPhase

`startedAt `

バックアップが開始されたとき

[*metav1.Time](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#time-v1-meta)

`stoppedAt `

バックアップが終了したとき

[*metav1.Time](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#time-v1-meta)

`beginWal `

開始WAL

string

`endWal `

エンディングWAL

string

`beginLSN `

開始xlog

string

`endLSN `

終わりのxlog

string

`error `

検出されたエラー

string

`commandOutput `

未使用。古いバージョンとの互換性のために保持されます。

string

`commandError `

エラーの場合のバックアップコマンド出力

string

`instanceID `

バックアップの取得元のインスタンスを識別する情報

[*InstanceID](#InstanceID)

BarmanObjectStoreConfiguration

BarmanObjectStoreConfigurationには、S3互換オブジェクトストレージに対してBarmanを使用したバックアップ構成が含まれています

Name

Description

Type

`s3Credentials `

S3にデータをアップロードするために使用する資格情報

[*S3Credentials](#S3Credentials)

`azureCredentials `

Azure Blob Storageにデータをアップロードするために使用する資格情報

[*AzureCredentials](#AzureCredentials)

googleCredentials

Google Cloud Storageにデータをアップロードするために使用する資格情報

[*GoogleCredentials](#GoogleCredentials)

`endpointURL `

データをクラウドにアップロードするために使用されるエンドポイント。自動エンドポイント検出をオーバーライドします

string

`endpointCA `

EndpointCAは、barmanエンドポイントのCAバンドルを保存します。証明書発行者とbarman-cloud-wal-archiveのエラーを回避するために自己署名証明書を使用する場合に役立ちます

[*SecretKeySelector](#SecretKeySelector)

`destinationPath `

バックアップを保存するパス(s3:// bucket / パス/ to / folder)このパスは、異なる宛先フォルダーで、WALとデータに使用されます-必須

string

`serverName `

S3上のサーバー名前。このパラメータを省略するとクラスター名前が使用されます

string

`wal `

WALストリームのバックアップの構成。定義されていない場合、WALファイルは圧縮されずに保存され、バケットのデフォルトポリシーに従って、オブジェクトストアで暗号化されていない場合があります。

[*WalBackupConfiguration](#WalBackupConfiguration)

`data `

データファイルのバックアップに使用される構成定義されていない場合、ベースバックアップファイルは圧縮されずに格納され、バケットのデフォルトポリシーに従って、オブジェクトストアに暗号化されない場合があります。

[*DataBackupConfiguration](#DataBackupConfiguration)

`tags `

タグは、Barmanの--tagsオプションに渡されるキーと値のペアのリストです。

map[string]string

`historyTags `

HistoryTagsは、 Barmanの--history-tagsオプションに渡されるキーと値のペアのリストです。

map[string]string

BootstrapConfiguration

BootstrapConfigurationには、 PostgreSQLクラスターの作成方法に関する情報が含まれています。サポートされている方法の中では、1つのブートストラップメソッドのみを定義できます。指定されていない場合、 initdb はブートストラップメソッドとして使用されます。詳細については、文書のブートストラップページを参照してください。

Name

Description

Type

`initdb `

initdb経由でクラスターをブートストラップします

[*BootstrapInitDB](#BootstrapInitDB)

`recovery `

バックアップからクラスターをブートストラップします

[*BootstrapRecovery](#BootstrapRecovery)

pg_basebackup

互換性のある別のPostgreSQLインスタンスの物理的バックアップを取るクラスターをブートストラップします

[*BootstrapPgBaseBackup](#BootstrapPgBaseBackup)

BootstrapInitDB

BootstrapInitDBは、initdbを使用する場合のブートストラッププロセスの構成です。詳細については、文書のブートストラップページを参照してください。

Name

Description

Type

`database `

アプリケーションが使用するデータベースの名前。デフォルト:app。 -必須

string

`owner `

アプリケーションで使用されるインスタンス内のデータベースの所有者の名前。デフォルトは`database`キーの値です。 -必須

string

`secret `

ユーザデータベースの所有者の初期資格情報を含むシークレットの名前。空の場合、新しいシークレットが最初から作成されます

[*LocalObjectReference](#LocalObjectReference)

`options `

クラスターの作成時にinitdbに渡す必要があるオプションのリスト。非推奨:これにより、矛盾した構成が発生する可能性があります。代わりに明示的に提供されたパラメーターを使用してください。定義されている場合、明示的な値は無視されます。

[]string

`dataChecksums `

-k`オプションをinitdbに渡して、データページのチェックサムを有効にするかどうか(デフォルト:`false)

*bool

`encoding `

initdbのオプション`--encoding`として渡される値(デフォルト:UTF8)

string

`localeCollate `

initdbのオプション`--lc-collate`として渡される値(デフォルト:C)

string

`localeCType `

initdbのオプション`--lc-ctype`として渡される値(デフォルト:C)

string

`walSegmentSize `

initdbの`--wal-segsize`オプションに渡されるメガバイト(1〜1024)の値(デフォルト:空、 PostgreSQLのデフォルト:16MB)

int

`postInitSQL `

クラスタの作成直後にスーパーユーザとして実行されるSQLクエリのリスト-細心の注意を払って使用する(デフォルトでは空)

[]string

postInitApplicationSQL

作成直後にアプリケーションデータベースでスーパーユーザとして実行されるSQLクエリのリスト-細心の注意を払って使用する(デフォルトでは空)

[]string

`postInitTemplateSQL `

クラスターの作成後に`template1`でスーパーユーザとして実行されるSQLクエリのリスト-細心の注意を払って使用する(デフォルトでは空)

[]string

BootstrapPgBaseBackup

BootstrapPgBaseBackupには、既存のPostgreSQLクラスターの物理的バックアップを取るために必要な構成が含まれています

Name

Description

Type

source

物理的バックアップを取る必要があるサーバーの名前-必須

string

BootstrapRecovery

BootstrapRecoveryには、指定された名前でバックアップを復元するために必要な構成が含まれており、スーパーユーザ用に選択したパスワードでパスワードを変更した後、復元されたプライマリからすべてのインスタンスを複製する完全なクラスターをブートストラップするためにそれを使用します。詳細については、文書のブートストラップページを参照してください。

Name

Description

Type

`backup `

復元する必要があるバックアップ

[*BackupSource](#BackupSource)

`source `

バックアップを復元する外部クラスター。これは、バックアップが保存されるフォルダーの名前としても使用されるため、ソースクラスターの名前に設定する必要があります

string

recoveryTarget

デフォルトでは、リカバリプロセスはアーカイブ内の利用可能なすべてのWALファイルを適用します(完全リカバリ)。ただし、 PostgreSQLで期待されるようにリカバリオブジェクトを指定することで、一貫性のある状態に到達するか、ポイントインタイム(PITR)に回復する(タイムスタンプ、トランザクションID、LSNなど) 。)。詳細: <a href="https://www.postgresql.org/docs/current/runtime-config-wal.html#RUNTIME-CONFIG-WAL-RECOVERY-TARGET">https</a> ://www.postgresql.org/docs/current/runtime-config-wal.html#RUNTIME-CONFIG-WAL-RECOVERY-TARGET

[*RecoveryTarget](#RecoveryTarget)

証明書の構成

CertificatesConfigurationには、サーバ証明書をハンドルするために必要な構成が含まれています。

Name

Description

Type

`serverCASecret `

サーバーCA証明書を含むシークレット。定義されていない場合、自己署名CAを使用して新しいシークレットが作成され、TLS証明書ServerTLSSecretの生成に使用されます。<br /> <br />次を含む:<br /> <br />-ca.crt:CAクライアント接続文字列で`sslrootcert`として使用されるサーバー証明書を検証するために使用する必要があります。<br />-ca.key:サーバーSSL証明書の生成に使用されるキー。

string

`serverTLSSecret `

クライアントがpostgresに安全に接続できるように、`ssl_cert_file`および`ssl_key_file`として設定されるサーバーTLS証明書とキーを含むkubernetes.io/tlsタイプの秘密。定義されていない場合、ServerCASecretは`ca.key`も提供する必要があり、提供されたCAを使用して新しいシークレットが作成されます。

string

replicationTLSSecret

`streaming_replica`ユーザとして認証するクライアント証明書を含むkubernetes.io/tlsタイプの秘密。定義されていない場合、ClientCASecretは`ca.key`も提供する必要があり、提供されたCAを使用して新しいシークレットが作成されます。

string

`clientCASecret `

クライアントCA証明書を含むシークレット。定義されていない場合、自己署名CAで新しいシークレットが作成され、すべてのクライアント証明書の生成に使用されます。<br /> <br />次を含む:<br /> <br />-ca.crt:CAすべてのインスタンスの`ssl_ca_file`として使用されるクライアント証明書の検証に使用する必要があります。<br />-ca.key:クライアント証明書の生成に使用されるキー。ReplicationTLSSecretが提供されている場合、これは省略可能

string

`serverAltDNSNames `

必要に応じて、生成されたサーバーTLS証明書に追加されるサーバーの代替DNS名のリスト。

[]string

証明書ステータス

CertificatesStatusには、構成証明書と関連する有効期限が含まれます。

Name

Description

Type

expirations

すべての証明書の有効期限。

map[string]string

クラスター

ClusterはPostgreSQL APIのスキーマです

Name

Description

Type

metadata

NA

[metav1.ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#objectmeta-v1-meta)

`spec `

クラスターの望ましい動作の仕様。詳細:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status

[ClusterSpec](#ClusterSpec)

`status `

クラスターの最近観察されたステータス。このデータは最新ではない可能性があります。システムによって設定されます。読み取り専用。詳細: <a href="https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https</a> ://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status

[ClusterStatus](#ClusterStatus)

ClusterCondition

ClusterConditionは、特定の時点でのクラスターオブジェクトの状態を記述します

Name

Description

Type

`type `

条件のタイプ。

ClusterConditionType

`status `

条件のステータス。True、False、Unknownのいずれか。

ConditionStatus

lastTransitionTime

条件がある状態から別の状態に最後に遷移した時間。

[*metav1.Time](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#time-v1-meta)

`reason `

条件の最後の遷移の理由。

string

`message `

トランジションに関する詳細を示す人間が読めるメッセージ。

string

ClusterList

ClusterListにはクラスターのリストが含まれます

Name

Description

Type

metadata

標準リストメタデータ。詳細: <a href="https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds">https</a> ://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

[metav1.ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#listmeta-v1-meta)

`items `

クラスターのリスト-必須

[[]Cluster](#Cluster)

ClusterSpec

ClusterSpecは、クラスターの望ましい状態を定義します

Name

Description

Type

`description `

このPostgreSQLクラスターの説明

string

`inheritedMetadata `

クラスターに関連するすべてのオブジェクトに継承されるメタデータ

[*EmbeddedObjectMetadata](#EmbeddedObjectMetadata)

`imageName `

コンテナイメージの名前。タグ(<image>:<tag>)と確定的で反復可能なデプロイメントのダイジェスト(<image>:<tag>@sha256:<digestValue>)の両方をサポートします

string

`imagePullPolicy `

イメージプルポリシー。 Always、Never、または`IfNotPresent`のいずれか。定義されていない場合、デフォルトは`IfNotPresent`になります。更新できません。詳細: <a href="https://kubernetes.io/docs/concepts/containers/images#updating-images">https</a> ://kubernetes.io/docs/concepts/containers/images#updating-images

corev1.PullPolicy

`postgresUID `

イメージ内の`postgres`ユーザのUID、デフォルトは`26`

int64

`postgresGID `

イメージ内の`postgres`ユーザのGID、デフォルトは`26`

int64

`instances `

クラスターに必要なインスタンスの数-必須

int

`minSyncReplicas `

プライマリとの同期レプリケーションに必要なインスタンスの最小数。未定義または0の場合、スタンバイが利用できないときに書き込みを完了できます。

int

`maxSyncReplicas `

同期レプリケーションクォーラムの目標値。準備完了スタンバイの数がこれより少ない場合は、減らすことができます。未定義または0は、同期レプリケーションを無効にします。

int

`postgresql `

PostgreSQLサーバーの構成

[PostgresConfiguration](#PostgresConfiguration)

`bootstrap `

このクラスターをブートストラップする手順

[*BootstrapConfiguration](#BootstrapConfiguration)

`replica `

レプリカクラスタ構成

[*ReplicaClusterConfiguration](#ReplicaClusterConfiguration)

`superuserSecret `

スーパーユーザのパスワードを含むシークレット。定義されていない場合、ランダムに生成されたパスワードで新しいシークレットが作成されます

[*LocalObjectReference](#LocalObjectReference)

enableSuperuserAccess

このオプションを有効にすると、演算子は`SuperuserSecret`を使用して`postgres`ユーザパスワードを更新します(シークレットが存在しない場合、演算子は自動的にパスワードを作成します)。このオプションを無効にすると、演算子は`SuperuserSecret`コンテンツを無視し、自動作成時に削除し、`NULL`に設定して`postgres`ユーザのパスワードをブランクにします。デフォルトで有効。

*bool

`certificates `

CAおよび関連証明書の構成

[*CertificatesConfiguration](#CertificatesConfiguration)

`imagePullSecrets `

画像のプルに使用されるプルシークレットのリスト

[[]LocalObjectReference](#LocalObjectReference)

`storage `

インスタンスのストレージの構成

[StorageConfiguration](#StorageConfiguration)

`startDelay `

PostgreSQLインスタンスが正常にスタートするために許可される秒単位の時間(デフォルト30)

int32

`stopDelay `

PostgreSQLインスタンスが正常にシャットダウンできる秒数(デフォルトは30)

int32

`switchoverDelay `

スイッチオーバー中にプライマリPostgreSQLインスタンスが正常にシャットダウンするのに許可される秒単位の時間。デフォルトより大きいは40000000で、1年は秒単位で、無限の遅延をシミュレートするのに十分な大きさです

int32

`affinity `

ポッドのアフィニティ/アンチアフィニティルール

[AffinityConfiguration](#AffinityConfiguration)

`resources `

生成されたすべてのポッドのリソース要件。詳細については、https://kubernetes.io/docs/concepts/configuration/manage-resources-containers/を参照してください。

[corev1.ResourceRequirements](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#resourcerequirements-v1-core)

primaryUpdateStrategy

すべてのレプリカが正常に更新された後、ローリング更新プロシージャ中にプライマリーサーバをアップグレードするために従う戦略:自動化(unsupervised-デフォルト)またはマニュアル(supervised)が可能

PrimaryUpdateStrategy

`primaryUpdateMethod `

すべてのレプリカが正常に更新された後、ローリング更新プロシージャ中にプライマリーサーバをアップグレードする方法:スイッチオーバー(switchover- デフォルト)またはインプレース(restart)で可能

PrimaryUpdateMethod

`backup `

バックアップに使用される構成

[*BackupConfiguration](#BackupConfiguration)

nodeMaintenanceWindow

Kubernetesノードのメンテナンスウィンドウを定義する

[*NodeMaintenanceWindow](#NodeMaintenanceWindow)

`monitoring `

このクラスターのモニタリングインフラストラクチャの構成

[*MonitoringConfiguration](#MonitoringConfiguration)

`externalClusters `

構成で使用される外部クラスターのリスト

[[]ExternalCluster](#ExternalCluster)

`logLevel `

インスタンスのログレベル、次の値のいずれか:エラー、ワーニング、情報(デフォルト)、デバッグ、トレース

string

ClusterStatus

ClusterStatusは、クラスターの観測状態を定義します

Name

Description

Type

`instances `

クラスター内のインスタンスの総数

int

`readyInstances `

クラスター内の準備完了インスタンスの総数

int

`instancesStatus `

インスタンスのステータス

map[utils.PodStatus][]string

`latestGeneratedNode `

生成された最新のノードのID(ノード名前の衝突を避けるために使用)

int

`currentPrimary `

現在のプライマリインスタンス

string

`targetPrimary `

ターゲットプライマリインスタンス。これは、スイッチオーバーまたはフェイルオーバー中の以前のインスタンスとは異なります。

string

`pvcCount `

このクラスターによって作成されたPVCの数

int32

`jobCount `

このクラスターによって作成されたジョブの数

int32

`danglingPVC `

このクラスターによって作成され、まだ使用可能なポッドに接続されていないすべてのPVCのリスト

[]string

`resizingPVC `

ResizingPVC状態のすべてのPVCのリスト。

[]string

`initializingPVC `

このクラスターによって初期化されているすべてのPVCのリスト

[]string

`healthyPVC `

ぶら下がりも初期化もされていないすべてのPVCのリスト

[]string

`writeService `

現在の書き込みポッド

string

`readService `

読み取りポッドの現在のリスト

string

`phase `

クラスターの現在のフェーズ

string

`phaseReason `

現在のフェーズの理由

string

`secretsResourceVersion `

演算子によって管理される秘密のリソースバージョンのリスト。ここでのすべての変更は、秘密データをリフレッシュするインスタンスマネージャの利益のために行われます

[SecretsResourceVersion](#SecretsResourceVersion)

`configMapResourceVersion `

演算子が管理するconfigmapのリソースバージョンのリスト。ここでのすべての変更は、configmapデータをリフレッシュするインスタンスマネージャの利益のために行われます。

[ConfigMapResourceVersion](#ConfigMapResourceVersion)

`certificates `

デフォルトで初期化されたCAおよび関連証明書の構成。

[CertificatesStatus](#CertificatesStatus)

`firstRecoverabilityPoint `

RFC3339フォーマットの日付として保存された最初の回復可能ポイント

string

`cloudNativePGCommitHash `

この演算子が実行しているコミットハッシュ番号

string

`currentPrimaryTimestamp `

プライマリへの最後の実際のプロモーションが発生したときのタイムスタンプ

string

`targetPrimaryTimestamp `

新しいプライマリの最後のリクエストが発生したときのタイムスタンプ

string

`poolerIntegrations `

クラスターを参照するプーラーが必要とする統合

[*PoolerIntegrations](#PoolerIntegrations)

cloudNativePGOperatorHash

演算子のバイナリのハッシュ

string

`onlineUpdateEnabled `

OnlineUpdateEnabledは、クラスター内でオンラインアップグレードが有効になっているかどうかを示します

bool

`azurePVCUpdateEnabled `

AzurePVCUpdateEnabledは、このクラスターでPVCオンラインアップグレードが有効になっているかどうかを示します

bool

`conditions `

クラスターオブジェクトの条件

[[]ClusterCondition](#ClusterCondition)

ConfigMapKeySelector

ConfigMapKeySelectorには、ConfigMapのキーを見つけるのに十分な情報が含まれています

Name

Description

Type

key

選択するキー-必須

string

ConfigMapResourceVersion

ConfigMapResourceVersionは、演算子が管理するシークレットのリソースバージョンです

Name

Description

Type

metrics

メトリックスを渡すために使用されるすべての構成マップのバージョンを含むマップ。マップキーは構成マップ名、マップ値はバージョン

map[string]string

DataBackupConfiguration

DataBackupConfigurationは、データディレクトリのバックアップの構成です。

Name

Description

Type

`compression `

オブジェクトストアにストリーミングしながら、バックアップファイル(テーブルスペースごとのtarファイル)を圧縮します。使用可能オプションは、空の文字列(圧縮なし、デフォルト)、gzip、`bzip2`または`snappy`です。

CompressionType

`encryption `

ファイルの暗号化を強制するとき(バケットがそのためにまだ構成されていない場合)。許可されるオプションは空の文字列(バケットポリシー、デフォルトを使用)、`AES256`および`aws:kms`です。

EncryptionType

immediateCheckpoint

PostgreSQLサーバーの`checkpoint_completion_target`設定に従って、バックアップ初期チェックポイントのI / Oワークロードを制限するかどうかを制御します。 trueに設定すると、即時チェックポイントが使用されます。つまり、 PostgreSQLはチェックポイントをできるだけ早く完了します。デフォルトでは`false`です。

bool

`jobs `

バックアップのアップロードに使用される並列ジョブの数、デフォルトは2

*int32

EmbeddedObjectMetadata

EmbeddedObjectMetadataには、クラスターに関連するすべてのリソースに継承されるメタデータが含まれます

Name

Description

Type

`labels `

NA

map[string]string

annotations

NA

map[string]string

ExternalCluster

ExternalClusterは、構成の他のセクションで使用される外部クラスターへの接続パラメーターを表します

Name

Description

Type

`name `

サーバー名前、必須-必須

string

connectionParameters

dbname、 ホスト 、usernameなどの接続パラメータのリスト

map[string]string

`sslCert `

このインスタンスへの接続に使用されるSSL証明書へのリファレンス

[*corev1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#secretkeyselector-v1-core)

`sslKey `

このインスタンスへの接続に使用されるSSLプライベートキーへのリファレンス

[*corev1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#secretkeyselector-v1-core)

`sslRootCert `

このインスタンスへの接続に使用されるSSL CA公開キーへのリファレンス

[*corev1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#secretkeyselector-v1-core)

`password `

サーバーへの接続に使用されるパスワードへのリファレンス

[*corev1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#secretkeyselector-v1-core)

`barmanObjectStore `

barman-cloudツールスイートの構成

[*BarmanObjectStoreConfiguration](#BarmanObjectStoreConfiguration)

GoogleCredentials

GoogleCredentialsは、Google Cloud Storageの資格情報のタイプです。 GKE環境内で実行する場合でも、これを指定ニーズがあります。

Name

Description

Type

`gkeEnvironment `

trueに設定すると、GKE環境内で実行されていると想定されます。デフォルトはfalseです。 -必須

bool

applicationCredentials

資格情報を持つGoogle Cloud Storage JSONファイルを含むシークレット

[*SecretKeySelector](#SecretKeySelector)

InstanceID

InstanceIDには、インスタンスを識別する情報が含まれます

Name

Description

Type

`podName `

ポッド名前

string

ContainerID

コンテナID

string

LDAPBindAsAuth

LDAPBindAsAuthは、LDAPのバインド認証を使用するために必要なフィールドを提供します

Name

Description

Type

prefix

バインド認証オプションのプレフィックス

string

suffix

バインド認証オプションのサフィックス

string

LDAPBindSearchAuth

LDAPBindSearchAuthは、バインド+検索LDAP認証プロセスを使用するために必要なフィールドを提供します

Name

Description

Type

`baseDN `

ユーザ検索を開始するルートDN

string

`bindDN `

ディレクトリにバインドするユーザのDN

string

`bindPassword `

ユーザがディレクトリにバインドするためのパスワードの秘密

[*corev1.SecretKeySelector](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#secretkeyselector-v1-core)

searchAttribute

ユーザー名とマッチする属性

string

`searchFilter `

検索+バインド認証を行うときに使用する検索フィルター

string

LDAPConfig

LDAPConfigには、LDAP認証に必要なパラメーターが含まれています

Name

Description

Type

`server `

LDAPホスト名またはIPアドレス

string

`port `

LDAPサーバーのポート

int

`scheme `

使用するLDAPスキーマ、可能なオプションは`ldap`および`ldaps`

LDAPScheme

`tls `

LDAP over TLSを有効にするには1に設定します

bool

`bindAsAuth `

認証設定としてバインド

[*LDAPBindAsAuth](#LDAPBindAsAuth)

bindSearchAuth

バインド+検索認証の構成

[*LDAPBindSearchAuth](#LDAPBindSearchAuth)

LocalObjectReference

LocalObjectReferenceには、同じ名前空間内で既知のタイプのローカルオブジェクトを見つけるのに十分な情報が含まれています

Name

Description

Type

name

指示対象の名前。 -必須

string

MonitoringConfiguration

MonitoringConfigurationは、特定のクラスターのすべてのモニタリング構成を含むタイプです

Name

Description

Type

`disableDefaultQueries `

デフォルトのクエリを挿入するかどうか。デフォルトのクエリをクラスターに注入したくない場合は、`true`に設定します。デフォルト:false。

*bool

customQueriesConfigMap

カスタムクエリを含む構成マップのリスト

[[]ConfigMapKeySelector](#ConfigMapKeySelector)

`customQueriesSecret `

カスタムクエリを含むシークレットのリスト

[[]SecretKeySelector](#SecretKeySelector)

`enablePodMonitor `

`PodMonitor`を有効または無効にします

bool

NodeMaintenanceWindow

NodeMaintenanceWindowには、基になるノードのアップグレード処理中に演算子が使用する情報が含まれています。

このオプションは、選択したストレージにより、ポッドがノード間で自由に移動できない場合にのみ役立ちます。

Name

Description

Type

inProgress

進行中のノードメンテナンスアクティビティはありますか? -必須

bool

`reusePVC `

既存のPVCを再使用する(ノードが再び起動するのを待つ)または使用しない(別の場所で再作成する-instances> 1の場合)-必須

*bool

PgBouncerIntegrationStatus

PgBouncerIntegrationStatusは、クラスターを参照するpgbouncerプーラーに必要な統合をカプセル化します

Name

Description

Type

secrets

NA

[]string

PgBouncerSecrets

PgBouncerSecretsには、pgbouncerによって使用されるシークレットのバージョンが含まれています

Name

Description

Type

authQuery

認証クエリーシークレットバージョン

[SecretVersion](#SecretVersion)

PgBouncerSpec

PgBouncerSpecは、PgBouncerの構成方法を定義します

Name

Description

Type

`poolMode `

プールモード-必須

PgBouncerPoolMode

authQuerySecret

認証クエリーに使用する必要があるユーザの資格情報。指定する場合は、AuthQuery(「SELECT usename、passwd FROM pg_shadow WHERE usename = $ 1」)も指定する必要があり、自動CNPGクラスター統合はトリガーされません。

[*LocalObjectReference](#LocalObjectReference)

`authQuery `

特定のユーザのパスワードのハッシュをダウンロードするために使用されるクエリー。デフォルト:「SELECT usename、passwd FROM user_search($ 1)」。指定されている場合は、AuthQuerySecretも指定する必要があり、自動CNPGクラスター統合はトリガーされません。

string

`parameters `

PgBouncerに渡される追加パラメータ-設定可能なオプションのリストについてはCNPGの文書を確認してください

map[string]string

`paused `

`true`に設定すると、PgBouncerはPostgreSQLサーバーから切断し、まずすべてのクエリが完了するまで待機し、この値が`false`(デフォルト)に設定されるまですべての新しいクライアント接続を一時停止します。内部的に、演算子はPgBouncerの`PAUSE`および`RESUME`コマンドを呼び出します。

*bool

PodMeta

PodMetaは、metav1.ObjectMetaに似た構造ですが、まだユーザに適したCRDを作成するためにcontroller-genによって解析可能です。 PodTemplateSpecのコメントには、コアデータ型を使用しない理由が説明されています。

Name

Description

Type

`labels `

オブジェクトの整理と分類(スコープと選択)に使用できる文字列キーと値のマップ。レプリケーションコントローラーおよびサービスのセレクターとマッチする場合があります。詳細:http: <a href="http://kubernetes.io/docs/user-guide/labels">//kubernetes.io/docs/user-guide/labels</a>

map[string]string

annotations

注釈は、任意のメタデータを保存および取得するために外部ツールで設定できるリソースとともに保存される非構造化キー値マップです。これらはクエリ可能ではなく、オブジェクトを変更ときに保存する必要があります。詳細:http: <a href="http://kubernetes.io/docs/user-guide/annotations">//kubernetes.io/docs/user-guide/annotations</a>

map[string]string

PodTemplateSpec

PodTemplateSpecは、ユーザがポッド生成用のテンプレートを設定できる構造です。

残念ながら、生成されたCRDにはメタデータセクションのフィールドがないため、corev1.PodTemplateSpecタイプを使用できません。

参照:https://github.com/kubernetes-sigs/controller-tools/issues/385 https://github.com/kubernetes-sigs/controller-tools/issues/448 https://github.com/prometheus- operator / prometheus-operator / issues / 3041

Name

Description

Type

metadata

標準オブジェクトのメタデータ。詳細: <a href="https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata">https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md# メタデータ</a>

[PodMeta](#PodMeta)

`spec `

ポッドの望ましい動作の仕様。詳細:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status

corev1.PodSpec

プーラー

プーラーは、プーラーAPIのスキーマです

Name

Description

Type

metadata

NA

[metav1.ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#objectmeta-v1-meta)

`spec `

NA

[PoolerSpec](#PoolerSpec)

`status `

NA

[PoolerStatus](#PoolerStatus)

PoolerIntegrations

PoolerIntegrationsは、クラスターを参照するプーラーに必要な統合をカプセル化します

Name

Description

Type

pgBouncerIntegration

NA

[PgBouncerIntegrationStatus](#PgBouncerIntegrationStatus)

PoolerList

PoolerListには、Poolerのリストが含まれています

Name

Description

Type

metadata

NA

[metav1.ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#listmeta-v1-meta)

`items `

-必須

[[]Pooler](#Pooler)

PoolerSecrets

PoolerSecretsには、使用されるすべてのシークレットのバージョンが含まれます

Name

Description

Type

`serverTLS `

サーバーTLSシークレットバージョン

[SecretVersion](#SecretVersion)

`serverCA `

サーバーCAシークレットバージョン

[SecretVersion](#SecretVersion)

`clientCA `

クライアントCAシークレットバージョン

[SecretVersion](#SecretVersion)

pgBouncerSecrets

PgBouncerが使用するシークレットのバージョン

[*PgBouncerSecrets](#PgBouncerSecrets)

PoolerSpec

PoolerSpecは、プーラーの望ましい状態を定義します

Name

Description

Type

`cluster `

これは、プーラーが動作するクラスターリファレンスです。プーラー名前は、同じ名前空間内のどのクラスター名前とも決してマッチしてはなりません。 -必須

[LocalObjectReference](#LocalObjectReference)

`type `

どのインスタンスにトラフィックを転送する必要がありますか? -必須

PoolerType

instances

必要なレプリカの数-必須

int32

`template `

作成するポッドのテンプレート

[*PodTemplateSpec](#PodTemplateSpec)

pgbouncer

PgBouncer設定-必須

[*PgBouncerSpec](#PgBouncerSpec)

PoolerStatus

PoolerStatusは、プーラーの監視状態を定義します

Name

Description

Type

`secrets `

構成オブジェクトのリソースバージョン

[*PoolerSecrets](#PoolerSecrets)

instances

スケジュールしようとしているポッドの数

int32

PostgresConfiguration

PostgresConfigurationはPostgreSQLの構成を定義します

Name

Description

Type

`parameters `

PostgreSQL設定オプション(postgresql.conf)

map[string]string

`pg_hba `

PostgreSQLホストベース認証ルール(pg_hba.confファイルに追加される行)

[]string

`promotionTimeout `

インスタンスをプライマリに昇格させるときに待機する最大秒数を指定します。デフォルトより大きいは40000000で、1年は秒単位で、無限のタイムアウトをシミュレートするのに十分な大きさです

int32

shared_preload_libraries

デフォルトのライブラリに追加する共有プリロードライブラリのリスト

[]string

`ldap `

LDAP構成を指定するオプション

[*LDAPConfig](#LDAPConfig)

RecoveryTarget

RecoveryTargetを使用すると、リカバリプロセスが停止する瞬間を構成できます。 TargetTLIを除くすべてのターゲットオプションは相互に排他的です。

Name

Description

Type

`targetTLI `

ターゲットタイムライン(「最新」または正の整数)

string

`targetXID `

ターゲットトランザクションID

string

`targetName `

ターゲット名前(`pg_create_restore_point`で以前に作成される)

string

`targetLSN `

ターゲットLSN(ログシークエンス番号)

string

`targetTime `

PostgreSQLで許可されている明確な表現形式でのターゲット時間

string

targetImmediate

一貫した状態に達するとすぐにリカバリを終了します

*bool

`exclusive `

ターゲットを排他的に設定します(デフォルトはtrue)

*bool

ReplicaClusterConfiguration

ReplicaClusterConfigurationは、レプリカクラスターの構成をカプセル化します

Name

Description

Type

enabled

レプリカモードが有効な場合、このクラスターは既存のクラスターのレプリカになります。レプリカクラスタは、リカバリオブジェクトストアから、またはpg_basebackupを介したストリーミングを介して作成できます。詳細については、文書の複製ページを参照してください。 -必須

bool

`source `

レプリケーションのオリジン- 必須

string

RollingUpdateStatus

RollingUpdateStatusには、更新中のインスタンスに関する情報が含まれます

Name

Description

Type

imageName

ポッドに入れたイメージ-必須

string

startedAt

更新が開始されたとき

[metav1.Time](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#time-v1-meta)

S3Credentials

S3Credentialsは、S3にファイルをアップロードするために使用される資格情報のタイプです。次の2つの方法で提供できます。

  • 明示的にaccessKeyIdとsecretAccessKeyを渡す

  • inheritFromIAMRoleをtrueに設定して、ポッド環境からロールを継承する

Name

Description

Type

`accessKeyId `

アクセスキーIDへのリファレンス

[*SecretKeySelector](#SecretKeySelector)

`secretAccessKey `

シークレットアクセスキーへのリファレンス

[*SecretKeySelector](#SecretKeySelector)

`sessionToken `

セッションキーへの参照

[*SecretKeySelector](#SecretKeySelector)

inheritFromIAMRole

キーを明示的に提供せずに、ロールベースの認証を使用します。 -必須

bool

ScheduledBackup

ScheduledBackupは、scheduledbackups APIのスキーマです

Name

Description

Type

metadata

NA

[metav1.ObjectMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#objectmeta-v1-meta)

`spec `

ScheduledBackupの望ましい動作の仕様。詳細:https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status

[ScheduledBackupSpec](#ScheduledBackupSpec)

`status `

ScheduledBackupの最新の監視ステータス。このデータは最新ではない可能性があります。システムによって設定されます。読み取り専用。詳細: <a href="https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status">https</a> ://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#spec-and-status

[ScheduledBackupStatus](#ScheduledBackupStatus)

ScheduledBackupList

ScheduledBackupListには、ScheduledBackupのリストが含まれています

Name

Description

Type

metadata

標準リストメタデータ。詳細: <a href="https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds">https</a> ://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

[metav1.ListMeta](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#listmeta-v1-meta)

`items `

クラスターのリスト-必須

[[]ScheduledBackup](#ScheduledBackup)

ScheduledBackupSpec

ScheduledBackupSpecは、ScheduledBackupの望ましい状態を定義します

Name

Description

Type

`suspend `

このバックアップが中断されているかどうか

*bool

`immediate `

最初のバックアップを作成後すぐにスタートする必要があるかどうか

*bool

`schedule `

スケジュールはKubernetes CronJobsで使用されているのと同じフォーマットに従います<a href="https://pkg.go.dev/github.com/robfig/cron#hdr-CRON_Expression_Format">。https:</a> //pkg.go.dev/github.com/robfig/cron#hdr-CRON_Expression_Formatを参照してください-必須

string

`cluster `

バックアップするクラスター

[LocalObjectReference](#LocalObjectReference)

backupOwnerReference

作成されたバックアップリソース内にどのownerReferenceを配置するかを示します。<br />-なし:作成されたバックアップオブジェクトの所有者リファレンスなし(フィールドが導入される前と同じ動作)<br />-self:スケジュールされたバックアップオブジェクトを所有者として設定します。バックアップの<br />-クラスター:クラスターをバックアップの所有者として設定<br />

string

ScheduledBackupStatus

ScheduledBackupStatusは、ScheduledBackupの監視状態を定義します

Name

Description

Type

`lastCheckTime `

スケジュールの最新時刻

[*metav1.Time](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#time-v1-meta)

lastScheduleTime

バックアップが正常にスケジュールされた最後の時間である情報。

[*metav1.Time](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#time-v1-meta)

nextScheduleTime

次回バックアップを実行します

[*metav1.Time](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#time-v1-meta)

SecretKeySelector

SecretKeySelectorには、秘密のキーを見つけるのに十分な情報が含まれています

Name

Description

Type

key

選択するキー-必須

string

SecretVersion

SecretVersionにはシークレット名前とそのResourceVersionが含まれます

Name

Description

Type

`name `

秘密の名前

string

version

シークレットのResourceVersion

string

SecretsResourceVersion

SecretsResourceVersionは、演算子が管理するシークレットのリソースバージョンです

Name

Description

Type

`superuserSecretVersion `

「postgres」ユーザシークレットのリソースバージョン

string

replicationSecretVersion

「streaming_replica」ユーザシークレットのリソースバージョン

string

applicationSecretVersion

「アプリ」ユーザシークレットのリソースバージョン

string

`caSecretVersion `

未使用。古いバージョンとの互換性のために保持されます。

string

`clientCaSecretVersion `

PostgreSQLクライアント側CAシークレットバージョンのリソースバージョン

string

`serverCaSecretVersion `

PostgreSQLサーバサイドのCAシークレットバージョンのリソースバージョン

string

`serverSecretVersion `

PostgreSQLサーバサイドのシークレットバージョンのリソースバージョン

string

`barmanEndpointCA `

BarmanエンドポイントCAのリソースバージョン(提供されている場合)

string

`metrics `

メトリックスを渡すために使用されるすべてのシークレットのバージョンを含むマップ。マップキーはシークレット名、マップ値はバージョン

map[string]string

StorageConfiguration

StorageConfigurationは、 PostgreSQLインスタンスのストレージの構成です

Name

Description

Type

`storageClass `

データベースデータに使用するStorageClass(PGDATA)。使用可能な場合、PVCテンプレートを評価した後に適用されます。指定しない場合、生成されたPVCはデフォルトのストレージクラスによって満たされます。

*string

`size `

ストレージのサイズ。 PVCテンプレートでまだ指定されていない場合は必須です。このフィールドへの変更は、作成されたPVCに自動的に再適用されます。サイズを小さくすることはできません。 -必須

string

resizeInUseVolumes

既存のPVCのサイズを変更、デフォルトはtrue

*bool

`pvcTemplate `

永続ボリューム要求の生成に使用されるテンプレート

[*corev1.PersistentVolumeClaimSpec](https://kubernetes.io/docs/reference/generated/kubernetes-api/v1.21/#persistentvolumeclaim-v1-core)

WalBackupConfiguration

WalBackupConfigurationは、WALストリームのバックアップの構成です。

Name

Description

Type

compression

オブジェクトストアに送信する前に、WALファイルを圧縮します。使用可能オプションは、空の文字列(圧縮なし、デフォルト)、gzip、`bzip2`または`snappy`です。

CompressionType

`encryption `

ファイルの暗号化を強制するとき(バケットがそのためにまだ構成されていない場合)。許可されるオプションは空の文字列(バケットポリシー、デフォルトを使用)、`AES256`および`aws:kms`です。

EncryptionType

maxParallel

並行してアーカイブする( PostgreSQLインスタンスがバックアップオブジェクトストアにアーカイビングしている場合)か、並行して復元する( PostgreSQLスタンバイがリカバリオブジェクトストアからWALファイルをフェッチしている場合)WALファイルの数。指定しない場合、WALファイルは1つずつ処理されます。値として正の整数を受け入れます-1が受け入れられる最小値です。

int