リリースハイライト
クイックスタートガイド
このリリースでは、Operatorのドキュメントにクイックスタートガイドが追加されました。これにより、すぐにセットアップして実行できるようになります。このガイドを参照すると、クイックインストール(複数のオプション)、データベースへの接続、データの挿入、バックアップの作成、さらにはクラスターを監視するためのPercona Monitoring and Management(PMM)との統合まで、段階的にガイドされます。
自動ボリュームサイズ変更
Kubernetesは、v1.24以降、永続ボリューム拡張を安定した機能としてサポートしています。Operatorでこれを使用するためには、以前は手動操作が必要でした。現在これは自動化され、ユーザーはPerconaXtraDBClusterのカスタムリソースのresource.requests.storageオプションの値を変更するだけでPVCのサイズを変更できるようになりました。この機能はテクニカルプレビューの段階にあり、運用環境には推奨されません。
新機能
- K8SPXC-1298:Percona Monitoring and Management(PMM)のカスタムプレフィックスにより、1つのPMMサーバーを使用して複数のデータベースを監視できるようになります。それらが同じクラスタ名である場合でもです。
- K8SPXC-1334:新しいlifecycle.postStartおよびlifecycle.preStopカスタムリソースオプションにより、ProxySQLおよびHAProxyポッドのpostStartフックとpreStopフックを構成できるようになります。
- K8SPXC-1341:PerconaXtraDBClusterのカスタムリソースにパッチを適用することによって、Persistent Volume Claimのサイズを変更できるようになりました。persistentVolumeClaim.resources.requests.storageを変更し、Operatorにスケーリングを実行させます。
改善点
- K8SPXC-1313:kubectl get pxc-backupコマンドで最新の復元可能時間が表示されるようになり、ポイントインタイムリカバリターゲットの選択が容易になります。
- K8SPXC-1237:Operatorは、復元プロセスを開始する前に、必要なSecretが存在するかどうかを確認し、ストレージに接続してバックアップの存在を確認するようになりました。
- K8SPXC-1079:クラスターとコンポーネントのサービス公開を標準化し、全てのPercona Operator間で公開設定を統一します。
- K8SPXC-1147:レプリケーションチャネルが空でない場合にレプリケーションチャネルのLast_IO_Errorを出力することで、ログメッセージを改善します。
- K8SPXC-1151:kubectl get pxc-restoreコマンドは、ポイントインタイムリカバリプロセスが完了したことを示す“StartingCluster”ステータスを表示するようになりました。
- K8SPXC-1230:Operatorによって作成された全てのKubernetesオブジェクト(バックアップ/リストア、Secret、Volumeなど)にラベルを追加して、それらを明確に区別できるようにします。
- K8SPXC-1271:タイムアウトを使用して、S3アップロードネットワークの問題が発生した場合のバックアップの停止を避けます。
- K8SPXC-1293およびK8SPXC-1294:新しいbackup.pitr.timeoutSecondsカスタム リソースオプションにより、ポイントインタイムリカバリプロセスのタイムアウトを設定できます。
- K8SPXC-1301:OperatorをリモートKubernetesクラスターに対してローカルで実行できるようになりました。これにより、開発プロセスが簡素化され、コードのマイナーな改善を行って試行する時間が大幅に短縮されます。
- K8SPXC-200およびK8SPXC-1128:新しいcontainerOptionsサブセクションがpxc-backup、pxc-restore、pxcカスタムリソースに追加され、Operatorによって使用されるxtrabackup、xbstream、xbcloudツールのカスタムオプションを設定できるようになりました。
- K8SPXC-345:新しいtopologySpreadConstraintsカスタムリソースオプションにより、Pod Topology Spread Constraintsを使用して、Kubernetesクラスター全体でPodの均等な分散を実現できます。
- K8SPXC-927:新しいserviceLabelおよびserviceAnnotationカスタムリソースオプションにより、XtraDB Cluster Podのサービスラベルとアノテーションを設定できるようになります。
- K8SPXC-1340:新しいカスタムリソースオプションにより、PMMコンテナーのカスタムcontainerSecurityContextを設定できるようになります。
- K8SPXC-1254:マルチネームスペース(クラスター全体)モードでのPercona XtraDB Clusterのアップグレード手順がドキュメントに追加されました。
- K8SPXC-1276およびK8SPXC-1277:HAProxyログ形式は、トラブルシューティングを簡素化するためにタイムスタンプなどの追加情報を含むJSONに変更されました。
修正されたバグ
- K8SPXC-1264:sql_mode ANSI_QUOTESが有効な場合、Livenessプローブが機能しませんでした。
- K8SPXC-1067:Operatorがhaproxyサブセクションの多数のカスタムリソースオプションの変更を追跡しない原因となったバグを修正
- K8SPXC-1105:自己署名証明書を使用したS3互換ストレージでのポイントインタイムリカバリバックアップが許可されなかったバグを修正
- K8SPXC-1106:破損したbinlogファイルが/var/lib/mysqlに存在する場合に、ポイントインタイムリカバリがサイレントにファイルをアップロードしない原因となったバグを修正
- K8SPXC-1159:パスワードの変更が複雑性を満たさず、MySQLによって拒否された場合に、クラスターのステータスが“ready”と“error”の間で繰り返し切り替わりました。
- K8SPXC-1256:レプリケーションがすでに停止している場合に、Operatorがレプリケーションチャネルを削除することでクリーンアップを実行できなかったバグを修正
- K8SPXC-1263:xtrabackupユーザーパスワードがバイナリログファイルで変更された場合にポイントインタイムリカバリが失敗するバグを修正
- K8SPXC-1269:HAProxyからProxySQLへの切り替えがPercona XtraDB Cluster 5.7で失敗することによるバグを修正
- K8SPXC-1274:XtraDB ClusterおよびHAProxyインスタンスで使用されるPXC initコンテナーは、HAProxyにとって多すぎるXtraDB Clusterリソース要件を継承しました。
- K8SPXC-1275:システムアカウントを前のリリースで利用可能になったcaching_sha2_password認証プラグインに切り替えた後にレプリケーションエラーが発生するバグを修正
- K8SPXC-1288:Operatorは、スケジュールされたバックアップの名前を必須フィールドとして扱いませんでした。
- K8SPXC-1302:保持ポリシーが設定され、delete-s3-backupファイナライザーが存在するS3バケットからOperatorが継続的にバックアップを削除しようとしていたバグを修正しました。このバグにより、ポッドのメモリ制限が厳しい場合に、メモリ不足の問題が発生する可能性がありました。
- K8SPXC-1333:Percona XtraDB Clusterの名前がネームスペース間で一意でない場合に、スケジュールされたバックアップが失敗しました。
- K8SPXC-1335:Percona XtraDB Clusterインスタンスのフェイルオーバーの場合にHAProxyがプライマリへの既存の接続を停止せず、新しい接続のみを別のインスタンスにルーティングするというバグを修正
- K8SPXC-1335:HAProxyがPercona XtraDB Cluster Podが再起動された場合にIPアドレスの変更を認識せず、DNSキャッシュが更新されるまでHAProxyにアクセスできなかったバグを修正
- K8SPXC-1345:OperatorがpxcコンテナーのreadinessProbeをカスタマイズできなかったリグレッションを修正
- K8SPXC-1350:ログのローテーションにより、フラッシュエラーログによってクラスター上でTOI(Total Order Isolation)DDL操作のロックが発生し、その結果クラスター全体で不要な同期が発生し、ログに警告が記録される可能性があることによるバグを修正
非推奨、名前変更、削除
- K8SPXC-1079:Percona XtraDB Cluster HAProxy Primary、HAProxy Replicas、およびProxySQLのサービス公開用のカスタムリソースオプションは、専用のpxc.expose、haproxy.exposePrimary、haproxy.exposeReplicas、およびproxysql.exposeサブセクションに移動されました。これにより、カスタムリソースにさらなる構造が導入され、全ての Percona Operatorにわたって同じアプローチが実装されます。サービス公開オプションの古いバリアントは非推奨となり、次のリリースで削除される予定です。
- K8SPXC-1274:Operatorの初期インストール用に様々なオプションを備えた代替イメージを提供できるinitImageカスタムリソースオプションは、専用のサブセクションに移動され、initContainer.imageとして利用できるようになりました。
- K8SPXC-878:v1.12.0で非推奨となったclustercheckシステムユーザーは、このリリースで完全に削除されました。
サポートされているプラットフォーム
Operatorは、Percona XtraDB Cluster バージョン 8.0.35-27.1および5.7.44-31.65を使用して開発およびテストされました。他のオプションも機能する可能性がありますが、テストされていません。その他のソフトウェアコンポーネントには以下のものがあります:
- Percona XtraBackup バージョン 2.4.29-1および8.0.35-30.1
- HAProxy 2.8.5-1
- ProxySQL 2.5.5-1.1
- fluent-bit 2.1.10-1に基づくLogCollector
- PMM Client 2.41.1
以下のプラットフォームはテストされ、Operator 1.14.0で正式にサポートされています:
- Google Kubernetes Engine (GKE) 1.25 - 1.29
- Amazon Elastic Container Service for Kubernetes (EKS) 1.24 - 1.29
- Azure Kubernetes Service (AKS) 1.26 - 1.28
- OpenShift 4.12.50 - 4.14.13
- Minikube 1.32.0
このリストには、リリースプロセスの一環としてPercona Operatorが特別にテストされたプラットフォームのみが含まれています。他のKubernetesフレーバーとバージョンは、Kubernetes自体が提供する下位互換性に依存します。
Percona Operator for MySQL based on Percona XtraDB Cluster 1.14.0 リリースノート(Percona社ウェブサイト):
https://docs.percona.com/percona-operator-for-mysql/pxc/ReleaseNotes/Kubernetes-Operator-for-PXC-RN1.14.0.html
Perconaサポート・コンサルティング
Perconaサポート・コンサルティングサービスはPercona Serverをご利用頂いているお客様が安心してお使い頂くために専門的なサポートを提供するサービスです。