2025.08.19

Percona

Percona Operator for MySQL based on Percona XtraDB Cluster 1.18.0(リリース日:2025年8月14日)

リリースハイライト

Percona Operator for MySQL based on Percona XtraDB Clusterのこのリリースには、次の新機能と改善点が含まれています:

PMM3 のサポート

Operatorは、PMM 3とネイティブに統合されており、Percona Distribution for MySQLデプロイメントの健全性とパフォーマンスを監視できると同時に、PMM 3が提供する強化されたパフォーマンス、新機能、そして改善されたセキュリティを活用できます。

オペレーターはPMM2とPMM3の両方をサポートしていることに注意してください。使用するPMMバージョンの決定は、オペレーター設定で指定する認証方法によって異なります。PMM2はAPI キーを使用し、PMM3はサービスアカウントトークンを使用します。Operator設定に両方の認証方法が含まれており、値が空でない場合は、PMM3が優先されます。

PMMを使用するために、PMMクライアントイメージがPMM Serverバージョンと互換性があることを確認してください。適切なクライアントイメージについては、Percona認定イメージをご確認ください。

PMMによる監視の設定方法については、ドキュメントを参照してください。

PMMでのマルチリージョンまたはマルチネームスペースのデプロイメントにおけるクラスターのモニタリング強化

異なるデータセンターにデプロイされたクラスターにカスタム名を定義できるようになりました。この名前は、Percona Management and Monitoring (PMM) Serverがクラスターが接続されていることを正しく認識し、それらを1つのデプロイメントとしてモニタリングするのに役立ちます。同様に、PMM Serverは、異なるネームスペースに同じ名前でデプロイされたクラスターを別々のものとして識別し、ダッシュボードにパフォーマンス指標を正しく表示します。

カスタム名を割り当てるためには、クラスターのCustom Resourceマニフェストで次の設定を定義します:

spec:
 pmm:
   customClusterName: testClusterName

ユーザーシークレットを一致させることなく、より回復力のあるデータベース復元を実現

復元を実行するために、バックアップとターゲットクラスター間でユーザーシークレットを一致させる必要がなくなりました。Operatorには、復元されたデータベースのユーザーパスワードをローカルシークレットのパスワードに変更する復元後のステップが追加されました。また、不足しているシステムユーザーを作成し、不足している権限を追加します。

このフローは、同じクラスターに復元するか全く新しいクラスターに復元するかに関係なく、同じです。

復元用のシークレットを取得する際のこの大きな障害がなくなることで、災害復旧プロセスがよりスムーズになり、より信頼性が高まります。この機能強化により、Kubernetes上のデータベース管理がより堅牢になり、オペレーターにとって使いやすくなります。

クラウドストレージでのスケジュールされたバックアップの管理を効率化するためのバックアップ保持の改善

新しいバックアップ保持設定により、バックアップのストレージ内での管理方法とKubernetesでの保持方法をより細かく制御できます。

deleteFromStorageフラグを使用すると、AWS S3またはAzure Blobストレージからの自動削除を無効にし、代わりにネイティブのクラウドライフサイクルポリシーに依存することができます。これにより、バックアップのクリーンアップがより効率的になり、柔軟なストレージ戦略との整合性が向上します。

従来のkeepオプションは非推奨となり、互換性のために新しい保持ブロックにマッピングされました。backup.schedule.retention設定の使用を開始することをお勧めします:

schedule:
 - name: "sat-night-backup"
  schedule: "0 0 * * 6"
  retention:
   count: 3
   type: count
   deleteFromStorage: true
  storageName: s3-us-west

backup.schedule.keepとbackup.schedule.retentionの両方が定義されている場合、backup.schedule.retentionが優先されます。

Operatorのバージョンを識別するためのラベルを追加

Custom Resource Definition (CRD) は、過去の3つのOperatorバージョンと互換性があります。どのOperatorバージョンがアタッチされているかを把握できるように、全てのCustom Resource Definitionにラベルを追加しました。ラベルは、現在のOperatorバージョンを識別し、CRDを更新する必要があるかどうかを判断するのに役立ちます。ラベルを表示するためには、kubectl get crd perconaxtradbclusters.pxc.percona.com --show-labels を実行します。

Percona XtraDB Cluster 8.4でクロスサイトレプリケーションがサポートされるようになりました

Percona XtraDB Cluster 8.4.xでクロスサイトレプリケーションが利用可能になり、このデータベースバージョンにおけるOperatorの制限の1つが解除されました。この機能強化により、マルチサイトデプロイメントが可能になり、分散環境全体の耐障害性が向上するため、OperatorにおけるPercona XtraDB Cluster 8.4の一般提供に向けた大きな一歩となります。

非推奨、名称変更、および削除

  • pxc.expose.loadBalancerIP、haproxy.exposePrimary.loadBalancerIP、haproxy.exposeReplicas.loadBalancerIP、proxysql.expose.loadBalancerIPキーは、非推奨となりました。loadBalancerIPフィールドは、クラウドプロバイダー間で動作が一貫していないことと、デュアルスタックのサポートが不足していることから、Kubernetesのアップストリームでも非推奨となっています。そのため、その使用は強く推奨されません。

代わりに、クラウドプロバイダー固有のアノテーションを使用することをお勧めします。それは、ロードバランサーのIP割り当てを管理するための、より予測可能で移植性の高い動作を提供します。

pxc.expose.loadBalancerIP、haproxy.exposePrimary.loadBalancerIP、haproxy.exposeReplicas.loadBalancerIP、proxysql.expose.loadBalancerIPキーは、将来のリリースで削除される予定です。

  • backup.schedule.keepフィールドは非推奨となり、リリース 1.21.0以降で削除されます。代わりに、以下のように、backup.schedule.retentionを使用することをお勧めします:
    schedule:
      - name: "sat-night-backup"
      schedule: "0 0 ** 6"
      retention:
       count: 3
       type: count
       deleteFromStorage: true
      storageName: s3-us-west
  • Percona XtraBackupおよびLogcollectorの新しいリポジトリ

Operatorは、percona-xtrabackupおよびlogcollectorコンポーネントに公式のPercona Dockerイメージを使用するようになりました。Operatorとデータベースをアップグレードする際は、新しいイメージリポジトリにご注意ください。正確なイメージ名については、Percona認定イメージをご確認ください。

  • Helmチャートの変更点:
  • PMM3がデフォルトになりました。PMM2を引き続き使用するためには、pmm.tagを2.44.1に設定してください。
  • OpenShift 4.19でHelmチャートを使用してデフォルトのマニフェストでOperatorをインストールまたはアップグレードする場合は、DockerHub percona-xtradb-clusterリポジトリからのダウンロードが成功することを保証するためには、docker.ioレジストリプレフィックスを使用する必要があります。詳細については、「OpenShift 4.19の使用に関する考慮事項」セクションをご覧ください。

既知の制限

OpenShift 4.19の使用に関する考慮事項

OpenShift 4.19以降、DockerHubとRed Hat Marketplaceで同じリポジトリ名を共有するリポジトリにおいて、完全修飾名ではないイメージがプルされる方法が変更されました。デフォルトでは、タグはRed Hat Marketplaceからプルされます。完全修飾名ではないイメージ名を指定すると、ImagePullBackOffエラーが発生する可能性があります。

  • OLM インストール:イメージは完全修飾名で提供され、Red Hat Marketplace/DockerHubレジストリからプルされます。
  • デフォルトマニフェストを使用した手動インストール/アップデート:Dockerhub percona-xtradb-clusterリポジトリからのダウンロードが成功することを保証するためには、イメージにはdocker.io レジストリプレフィックスを使用する必要があります。

手動でインストールまたはアップデートする場合は、以下の手順に従ってください。

<OpenShift 4.19にインストール>

  1. Operatorリポジトリのクローン作成:
    $ git clone -b v1.18.0 https://github.com/percona/percona-xtradb-cluster-operator
    $ cd percona-xtradb-cluster-operator
  2. deploy/bundle.yamlファイルを編集します。
    ・OperatorのDeploymentカスタムリソースを見つけます。
    ・spec.imageフィールドを次のように更新します。
    docker.io/percona/percona-xtradb-cluster-operator:1.18.0
  3. 更新されたdeploy/bundle.yamlファイルを適用します。
    $ oc apply --server-side -f deploy/bundle.yaml
  4. Percona XtraDB Clusterをインストールします:
    $ oc create -f deploy/secrets.yaml

<Operatorを1.18.0にアップデート>

  1. Operatorによって管理されている全てのクラスターで、initContainer.imageが設定されているかどうかをを確認します。
    ・定義されている場合:次の手順をスキップしてください。
    ・定義されていない場合:手順 2に進みます。
  2. initContainer.imageが未定義のクラスターにパッチを適用し、イメージパスのdocker.ioレジストリでこのイメージを定義します:
    $ kubectl patch pxc cluster1 --type=merge --patch '{
     "spec": {
      "initcontainer": {
       "image": "docker.io/percona/percona-xtradb-cluster-operator:1.17.0"
      }
     }
    }'

重要!このコマンドはクラスターの再起動をトリガーします。クラスターが再起動し、Readyステータスを報告するまでお待ちください。

  1. Operatorデプロイメントを更新し、イメージパスにdocker.ioレジストリ名を指定します:
    $ kubectl patch deployment percona-xtradb-cluster-operator \
    -p'{"spec":{"template":{"spec":{"containers":[{"name":"percona-xtradb-cluster-operator","image":"docker.io/percona/percona-xtradb-cluster-operator:1.18.0"}]}}}}'
  2. Custom Resourceのバージョンとデータベースクラスターを更新します。パスにdocker.ioレジストリ名を含むinitContainerイメージを指定します。PXBとlogcollectorの変更されたリポジトリに注意してください:

    $ kubectl patch pxc cluster1 --type=merge --patch '{
     "spec": {
      "crVersion": "1.18.0",
      "initContainer": "docker.io/percona/percona-xtradb-cluster-operator:1.18.0",
      "pxc":{ "image": "docker.io/percona/percona-xtradb-cluster:8.0.42-33.1" },
      "proxysql": { "image": "docker.io/percona/proxysql2:2.7.3" },
      "haproxy": { "image": "docker.io/percona/haproxy:2.8.15" },
      "backup": { "image": "docker.io/percona/percona-xtrabackup:8.0.35-34.1" },
      "logcollector": { "image": "docker.io/percona/fluentbit:4.0.1" },
      "pmm": { "image": "docker.io/percona/pmm-client:2.44.1-1" }
      }}'
     }
    }'

変更履歴

新機能

  • K8SPXC-1284 - ピアリストDNS SRVルックアップのプロトコルを設定する機能を追加
  • K8SPXC-1599 - loadBalancerClassサービスタイプの設定と、クラウドプロバイダーのデフォルトのロードバランサーではなくカスタム実装のロードバランサーの使用が可能になりました

改善点

  • K8SPXC-1375 - ユーザーがバックアップのクリーンアップをクラウドライフサイクルポリシーに委任できるように、新しい保持設定を追加しました
  • K8SPXC-1376 - 一致するSecretリソースがない場合でもバックアップから復元する機能を追加しました
  • K8SPXC-1399 - 災害復旧システムの設定方法とサイト間のワークロード転送方法に関するドキュメントを追加しました
  • K8SPXC-1415 - 公式のpercona-xtrabackup Dockerイメージを使用するように、percona-xtrabackupイメージを更新しました
  • K8SPXC-1430 - delete-sslファイナライザーの設定に応じて、自動生成された証明書の処理を改善しました
  • K8SPXC-1448、K8SPXC-1449 - EKS用のカスタムストレージクラスを使用することでpvc-resizeテストを改善し、エラーを削減し、サイズ変更時のクォータ処理を改善しました
  • K8SPXC-1450 - クォータに達した時に値を元に戻すことでストレージサイズを縮小する際のPVCサイズ変更動作を改善しました
  • K8SPXC-1472 - loadBalancerIPフィールドはそのアップストリームで非推奨となったため非推奨となりました
  • K8SPXC-1513 - バージョンサービスにPXC 8.4のサポートを追加しました
  • K8SPXC-1529 - default_authentication_pluginの代わりにauthentication_policyの使用を追加することで、MySQL 8.4.0でのクロスサイトレプリケーションのサポートを追加しました
  • K8SPXC-1553 - PMM v3のサポートを追加しました
  • K8SPXC-1560 - helmのアップグレード後にCRDが自動的にアップグレードされないことに関する警告を出力に追加しました
  • K8SPXC-1566 - プロキシをバイパスしてデータベースポッドを起動することにより、プロキシポッドなしでのreplicationChannelの調整が改善されました
  • K8SPXC-1569 - Custom Resource Definitions (CRD)にラベルを追加して、それにアタッチされたOperatorバージョンを識別できるようにしました
  • K8SPXC-1597 - クラスターが正常な状態を報告するまでジョブを延期することで、異常な状態のクラスターのスケジュールされたバックアップの動作を改善します
  • K8SPXC-1605 - Azureストレージにバックアップオブジェクト/フォルダーが存在するかどうかを確認するためのAzure CLIを導入しました
  • K8SPXC-1612 - PMMイメージ用のimagePullSecretsを追加しました
  • K8SPXC-1615 - pmm-adminコンポーネントにカスタムクラスター名を定義する機能を追加しました
  • K8SPXC-1624 - 非推奨のファイナライザーコードを削除しました
  • K8SPXC-1669 - ストレージのデフォルトエンドポイントURLが提供されていない場合に、リージョンからそのURLを生成することでバックアップフローを改善します
  • K8SPXC-1677 - OpenShift 4.19のデフォルトマニフェストのイメージをプルする際の動作の変更と、インストールおよび更新手順の更新をドキュメント化します

修正されたバグ

  • K8SPXC-1312 - Custom Resourceの変更時にポイントインタイムリカバリデプロイメントでラベルが自動的に更新されない問題を修正しました
  • K8SPXC-1347 - サーバーで必要な場合にTLSを使用するように設定することで、サーバーとポイントインタイムリカバリジョブ間のTLS設定の不一致によりポイントインタイムリカバリが失敗する問題を修正しました。
  • K8SPXC-1382 - 明示的に指定した場合にのみcredentialSecretを使用し、代わりにIAMロールに依存することにより、credentialsSecretなしでIAMプロファイルを使用するとAWSでバックアップが失敗する問題を修正しました。
  • K8SPXC-1541 - クラスター全体モードで、空の文字列 “”とカンマ区切りの名前空間の両方を考慮するように、Telemetryモジュールを修正しました
  • K8SPXC-1548 - オブジェクトパスを削除する前にURLデコードすることで、Google Cloud Storage上の古いバックアップを削除する際の問題を修正しました
  • K8SPXC-1631 - クラスターの準備完了後にOperatorがpod-0を再起動する問題を修正しました。この問題は、ConfigMapとStatefulSetが互いに近すぎる場所に作成され、Kubernetes APIがStatefulSetを作成する前に新しく作成されたConfigMapを返すことができないために発生します。この問題は、ConfigMapの調整が完了した後にStatefulSetを調整することで修正されます。
  • K8SPXC-1664 - HAProxyによってPXCノードを追加する際にPXCノードをチェックするための適切なスクリプトの使用を修正しました

サポートされているソフトウェア

Operatorは、以下のソフトウェアを使用して開発およびテストされています:

  • Percona XtraDB Cluster バージョン 8.4.5-5.1 (テクニカルプレビュー)、8.0.42-33.1、および 5.7.44-31.65
  • Percona XtraBackup バージョン 8.4.0-3、8.0.35-34.1、および 2.4.29
  • HAProxy 2.8.15-1
  • ProxySQL 2.7.3
  • Fluent-bit 4.0.1 ベースの LogCollector
  • PMM Client 2.44.1 および 3.3.1

その他のオプションも動作する可能性がありますが、テストは行われていません。

サポートされているプラットフォーム

Percona Operatorは、CNCF認定の全てのKubernetesディストリビューションとの互換性を考慮して設計されています。リリースプロセスには、主要なクラウドプロバイダープラットフォームとOpenShiftを対象としたテストと検証が含まれています。Operator バージョン 1.16.0の詳細は以下をご覧ください:

  • Google Kubernetes Engine (GKE) 1.30 - 1.33
  • Amazon Elastic Container Service for Kubernetes (EKS) 1.30 - 1.33
  • Azure Kubernetes Service (AKS) 1.30 - 1.33
  • OpenShift 4.15 - 4.19
  • Minikube 1.36.0 based on Kubernetes 1.33.1

このリストには、リリースプロセスの一環としてPercona Operatorが具体的にテストされているプラ​​ットフォームのみが記載されています。その他のKubernetesのフレーバーおよびバージョンは、Kubernetes自体が提供する後方互換性に依存します。

Percona認定イメージ

Percona Operator for MySQL based on Percona XtraDB Clusterで使用できるPerconaの認定Dockerイメージを以下の表でご確認ください。

Operator バージョン 1.18.0でリリースされたイメージ:

イメージ ダイジェスト
percona/percona-xtradb-cluster-operator:1.18.0 (x86_64) 0eca0b096482c7d09792c15fee00dbdcd0fbf3cd487dab60eb2774b025681e85
percona/percona-xtradb-cluster-operator:1.18.0 (ARM64) bdb7a0ff6b78e98b16f8b521e91682202b6d404202283b34b8168013d5c06356
percona/haproxy:2.8.15 49e6987a1c8b27e9111ae1f1168dd51f2840eb6d939ffc157358f0f259819006
percona/proxysql2:2.7.3 51fedf9de05e4f130d5b08388511536fb1e1050a24ffc21bedb0f0b61a236567
percona/percona-xtrabackup:8.4.0-3.1 01071522753ad94e11a897859bba4713316d08e493e23555c0094d68da223730
percona/percona-xtrabackup:8.0.35-34.1 2dc127b08971051296d421b22aa861bb0330cf702b4b0246ae31053b0f01911e
percona/percona-xtrabackup:2.4.29 11b92a7f7362379fc6b0de92382706153f2ac007ebf0d7ca25bac2c7303fdf10
percona/fluentbit:4.0.1 a4ab7dd10379ccf74607f6b05225c4996eeff53b628bda94e615781a1f58b779
percona/pmm-client:3.3.1 29a9bb1c69fef8bedc4d4a9ed0ae8224a8623fd3eb8676ef40b13fd044188cb4
percona/pmm-client:2.44.1-1 52a8fb5e8f912eef1ff8a117ea323c401e278908ce29928dafc23fac1db4f1e3
percona/percona-xtradb-cluster:8.4.5-5.1 918c54c11c96bf61bb3f32315ef6b344b7b1d68a0457a47a3804eca3932b2b17
percona/percona-xtradb-cluster:8.0.42-33.1 476851339090e44bb72760ae718fc36beb73a6028a29459e849271649018d546
percona/percona-xtradb-cluster:8.0.41-32.1 d9c84884a12631306d5a33a079e30bf7b65d3d380b07b397d7b1b6a642cc6bff
percona/percona-xtradb-cluster:8.0.39-30.1 6a53a6ad4e7d2c2fb404d274d993414a22cb67beecf7228df9d5d994e7a09966
percona/percona-xtradb-cluster:8.0.36-28.1 b5cc4034ccfb0186d6a734cb749ae17f013b027e9e64746b2c876e8beef379b3
percona/percona-xtradb-cluster:8.0.35-27.1 1ef24953591ef1c1ce39576843d5615d4060fd09458c7a39ebc3e2eda7ef486b
percona/percona-xtradb-cluster:5.7.44-31.65 36fafdef46485839d4ff7c6dc73b4542b07031644c0152e911acb9734ff2be85
percona/percona-xtradb-cluster:5.7.42-31.65 9dab86780f86ec9caf8e1032a563c131904b75a37edeaec159a93f7d0c16c603
percona/percona-xtradb-cluster:5.7.39-31.61 9013170a71559bbac92ba9c2e986db9bda3a8a9e39ee1ee350e0ee94488bb6d7
percona/percona-xtradb-cluster:5.7.36-31.55 c7bad990fc7ca0fde89240e921052f49da08b67c7c6dc54239593d61710be504
percona/percona-xtradb-cluster:5.7.34-31.51 f8d51d7932b9bb1a5a896c7ae440256230eb69b55798ff37397aabfd58b80ccb

Percona Operator for MySQL based on Percona XtraDB Cluster 1.18.0 リリースノート(Percona社ウェブサイト):
https://docs.percona.com/percona-operator-for-mysql/pxc/ReleaseNotes/Kubernetes-Operator-for-PXC-RN1.18.0.html


Perconaサポート・コンサルティング

Percona
Perconaサポート・コンサルティングサービスはPercona Serverをご利用頂いているお客様が安心してお使い頂くために専門的なサポートを提供するサービスです。