2023.07.11

Percona

Percona Monitoring and Management (PMM) 2.38.0(リリース日:2023年7月3日)

リリースハイライト

重要なセキュリティ更新

PMMの新しいベースOSとしてのOracle Linux 9

私たちにとってセキュリティは最優先であるため、PMM 2.38.0は、PMMに強固で最新化されたエンタープライズグレードの基盤を追加します。このリリースでは、PMMイメージを構築するベースのオペレーティングシステムがCentOS 7からOracle Linux 9に移行されます。そのため、PMM 2.38.0以降、PMMはOracle Linux 9上で公式に利用可能です。

この移行により、次のような多くのメリットがもたらされます:

  • 多数のCVEが自動的に修正される
  • セキュリティ関連の問題に対する上流の応答時間の向上
  • 新しいテクノロジーとの互換性の向上
  • 弊社のチームが構築する最新のライブラリ

全てのユーザーがシームレスに移行できるわけではないため、段階的に公開していきます:

自動化された移行パス

次のユーザーはこれをすぐに利用できるようになります:

  • PMMの新規インストール:
    • DockerハブからのDockerコンテナ:percona/pmm-server:2
    • OVF:ウェブサイトから直接ダウンロード
    • AMI:AWS Marketplaceからロード
  • コンテナの完全置換を行うDocker/Podmanユーザーは、PMMのより新しいバージョンにアップグレードします。既存のdocker pullコマンドまたはdocker runコマンドは新しいイメージを使用します。

手動アップグレードオプション

UIのUpgrade Nowボタンを使用してアップグレードする場合は、自動化された移行パスが表示されるまで少し待つ必要があります。これには以下が含まれます:

  • UIアップグレードを使用するDocker ユーザー
  • AMIユーザー
  • OVFユーザー

その間手動でアップグレードする場合は、PMM is getting a modernized enterprise-grade foundationというブログ投稿の手順を確認してください。

Grafanaアップグレード

PMMは、Grafanaを9.2.20まで使用するようになり、いくつかの重大な脆弱性が修正されています。詳細については、Grafanaのリリースブログを参照してください。

エクスポーター

CVEを修正するためにmysqld_exporter、node_exporter、postgres_exporter、mongo_exporterを更新しました。

ClickHouseプラグイン

脆弱性が発見されたため、Altinity ClickhouseデータソースからGrafana Clickhouseデータソースに移行しました。

この移行により、実験的なEnvironment Overviewダッシュボードも更新されました。

重要
PMMからデータソースを削除しましたが、変更を最小限に抑えるために同じ名前(ClickHouse)を引き続き再利用しています。したがって、ダッシュボードで古いデータソースを使用している場合は、新しいデータソースからデータを取得する基礎となるクエリを必ずアップグレードしてください。

次の例は、移行前と移行後のクエリの違いを示しています。

移行前:

// Altinity ClickHouse datasource
SELECT $timeSeries as t,
sum(m_query_time_sum)/sum(m_query_time_cnt) as QLatency,
environment
FROM $table
WHERE $timeFilter and environment != ''
GROUP BY t,environment
ORDER BY t

移行後:

// Grafana ClickHouse datasource
SELECT period_start as t,
sum(m_query_time_sum)/sum(m_query_time_cnt) as QLatency,
environment
FROM pmm."metrics"
WHERE $__timeFilter(period_start) AND environment != ''
GROUP BY t, environment
ORDER BY t

Altinityデータソースでは、$timeSeries、$timeFilter、$tableなどのマクロが使用されていましたが、これらのマクロはGrafanaデータソースには存在しません。その結果、古いマクロではなく新しいマクロを使用するようにクエリを書き直す必要があります。上記の例では、マクロ$timeFilterが $__timeFilterに変更され、パラメータが必要になっています。パラメータはdatetime型の列である必要があります。

使用したマクロに応じて、移行作業は異なります。ただし、プラグインのドキュメントを確認して、マクロやテンプレート変数などの新しい構文を正しく適用することをお勧めします。

Inventoryページのノードビューの改善

ユーザーエクスペリエンスを向上させるための継続的な取り組みの一環として、Nodesタブを改善することでInventoryページをさらに改善しました。この変更により、ノードなどのインベントリオブジェクトに関するより多くのコンテキストと、考えられる問題を調査して解決するためのより実用的な情報を取得できるようになります。

PMM 2.38.0の一部としての変更は次のとおりです:

  • 特定のノードで実行されているエージェントの数を確認します。いずれかのノードをクリックすると、UIはエージェントのビューに移動します。このビューはフィルタリングされて、その特定のノードに関連するエージェントのみが表示されます。
    実行中のエージェントの詳細を確認するためには:
    NodesタブのMonitoring列で、選択したノードのステータスに応じてOKまたはFailedをクリックします。そのノードにデプロイされているエージェントの総数に関する重要な情報をユーザーに提供するページが表示されます。
  • ノードタイプ、IPアドレス、関連サービスなどの主要な属性を含む、各エージェントに関する包括的な情報を表示します。これにより、ノードの完全な概要が一目でわかります。
  • エージェントの健全性ステータスをチェックして、エージェントが実行されているか、障害が発生しているかを確認します。

バックアップの強化

PBM互換性を強化するためのフォルダ管理の改善

Create Backupページに新しいFolderフィールドを追加しました。これを使用して、選択したローカルまたはS3互換の場所内の特定のターゲットディレクトリをバックアップ用に設定します。

バックアップをフォルダに整理すると、クラスタのPBMバックアップのグループ化が容易になり、PMM-PBM(Percona Backup for MongoDB)統合ワークフローが改善されます。

Folderフィールドには、クラスタラベルの値が自動的に入力されます。このデフォルトフォルダはPMMのAdvanced Settings(詳細設定)から変更できますが、カスタムフォルダがPBM統合ワークフローにどのような影響を与えるかを必ず理解してください。

シャード化されたクラスタのMongoDBバックアップのサポート

このリリースでは、シャード化されたクラスタのバックアップの操作のサポートが導入されています。PMMはバックアッププロセスをエンドツーエンドで処理しますが、そのようなアーティファクトの復元は現在、Percona Backup for MongoDBを使用して、CLI経由でのみ可能です。

シャード化されたバックアップの復元については、PBMのドキュメントを確認してください。

QANでのSQLコメントのサポート

重要/注意
この機能はまだテクニカルプレビュー段階にあり、変更される可能性があります。早期導入者は、この機能をテスト目的のみに使用することをお勧めします。

SQLクエリに配置されたコメントからラベルを収集できるようになりました。クエリコメント内のキー値によってクエリにタグを付けることができます。これはクエリ管理と最適化に役立ちます。この機能は現在、MySQLとPostgreSQLでサポートされています。

例えば:

SELECT * /* cluster=’east’ */ FROM city;

この機能は次のように有効にできます:

  • CLI - パラメータcomments-parsingを渡します
  • UI - デフォルトで有効になっています。無効にするためには、Additional OptionsセクションのDisable comments parsing(コメント解析を無効にする)チェックボックスのチェックを外します。これはPostgreSQLとMySQLでサポートされています。

新しいPMMエージェントダウンアラートテンプレート

新しいデフォルトのアラートテンプレートをPercona Alertingに追加しました。

新しいPMMエージェントダウンアラートテンプレートは、ノードのステータスを監視して、エージェントがダウンしているかどうかを通知します。このテンプレートを使用する前に:

  • PMMエージェントが正常であり、データベースノード上に存在していることを確認します。
  • PMMクライアントがバージョン 2.38以降であることを確認してください。

Grafanaのアップグレード

PMMは現在、いくつかの重大な脆弱性の修正を含むGrafana v9.2.20を使用しています。詳細については、Grafanaのリリースブログを参照してください。

新機能

  • PMM-2852 - [QAN]: PMM 2.38.0以降、MySQLとPostgreSQLは、SQLクエリに配置されたコメントからのラベルの収集をサポートします。
  • PMM-11961 - [Inventory]: PMM 2.38.0以降、Nodesタブを改善することでInventoryページが強化されました。この変更により、ノードなどのインベントリオブジェクトに関するより多くのコンテキストと、考えられる問題を調査して解決するためのより実用的な情報を取得できるようになります。
  • PMM-11962 - [Inventory]: PMM 2.38.0以降、ノードやサービスの完全なリストをスクロールする代わりに、ID、名前、ステータスなどのパラメータを使用して、Inventoryページでノードとサービスをフィルタリングできるようになりました。
  • PMM-12087 - [Inventory]: Inventoryビューの様々なサービスステータスの意味を説明するツールヒントを追加しました。

改善点

  • PMM-9367 - [Backups]: シャード化されたクラスターのバックアップを操作するためのサポートが追加されました。
  • PMM-11250 - [Backup]: PMM-PBM統合ワークフローを改善するために、選択されたバックアップの場所のターゲットディレクトリを指定するオプションを追加しました。
  • PMM-12038 - [Backup]: MongoDBで利用可能な全ての認証メカニズム(LDAP、x509証明書を含む)をカバーするMongoDBバックアップの拡張サポート。
  • PMM-9544 - [Alerting]: 新しいデフォルトのアラートテンプレートをノードステータスに追加し、エージェントがダウンしている場合に通知します。
  • PMM-12114 - CVEを修正するためにGrafanaを9.2.18にアップグレードしました。
  • PMM-12136 - CVEを修正するために、基本イメージを構築する基本オペレーティングシステムをCentOS 7からOracle Linux 9に移行しました。

修正されたバグ

  • PMM-11578 - [Alerting]: Alerting > Fired Alertsの下のLast notified列の名前がLast triggeredに変更されました。これは、トリガーされたアラートが必ずしも通知を生成するとは限らないという事実をよりよく示しています。これは、コンタクトポイントが正しく設定されていない場合に発生する可能性があります。さらに、他のAlertingページでのこのステータスの表示方法との一貫性を保つために、State列のSuppressedステータスの名前がSilencedに変更されました。
  • PMM-12067 - [QAN]: Vitessパッケージの脆弱性を修正しました。
  • PMM-12105 - [QAN]: 間違ったpgsm_query_idが原因でQANが壊れる問題を修正しました。
  • PMM-10063 - [QAN]: QANフィルターセクションには、サービス/ノードの利用可能なリストが表示されます。しかし、ロード時間が長すぎて、UIが応答しなくなりました。この問題は現在解決されています。リスト全体がロードされ、右上にカウントが表示されます。
  • PMM-11386 - [QAN]: MongoDB QANクエリ時間メトリクスに間違った単位が表示されていました。それはmsであるべきです。この問題は現在解決されています。
  • PMM-12024 - [QAN]: 期待される戻り値の型が原因でQANエージェントが開始できない問題を修正しました。
  • PMM-12091 - [QAN]: QAN > MongoDB > Query Detailsのツールチップが、小数点ではなく秒単位で表示されました。この問題は現在修正されています。
  • PMM-9844 - [QAN]: 多数のパーティションまたは可能なインデックスのデータが、QAN Detailsタブの1つのスクロール列に表示され、実質的に読むことが不可能でした。この問題は現在解決されています。
  • PMM-11938 - [QAN]: PMMがpg_stat_monitor_settingsビューをもう一度最初から作成しようとした時の問題を修正しました。
  • PMM-11645 - mysqlサービスがsystemdにロードされていない場合のmysqlサービスの検出を修正しました。
  • PMM-9541 - PostgreSQLエクスポーターが--socketで期待どおりに動作するようになりました。
  • PMM-10799 - EXPLAIN/TABLEタブでは、テーブルエイリアスを使用したクエリでも結果を取得できるようになりました。
  • PMM-11692 - MySQL Instances Overviewダッシュボードで、Top MySQL Active Client Threadsのパネルの色が誤解を招くものでした。この問題は現在解決されています。
  • PMM-11715 - RDSインスタンスのCPU使用率グラフがCloudwatchが報告したものと一致していませんでした。この問題は現在解決されています。
  • PMM-11950 - 非管理者ロールは、ログインまたはページの更新後に制限されたエンドポイントを呼び出します。
  • PMM-12085 - Oracle Linux 9ベースのイメージのAMIおよびOVFイメージへのSSHアクセスが機能しなかった問題を修正しました。この問題は現在解決されています。
  • PMM-12118 - Grafana ClickHouse DS プラグイン CVEに対処しました。
  • PMM-12119 - to “RUNNING.” This issue has been resolved.
    ユーザーがRDSサービスをPMMに正常に追加しても、RDSエクスポーターのステータスが“UNKNOWN”(全てのエクスポーターの初期ステータス)から“RUNNING”に変わりません。この問題は解決されました。
  • PMM-9224 - ArbiterノードからのデータがMongoDB ReplSet Summaryダッシュボードに正しく表示されるようになりました。

Percona Monitoring and Management (PMM) 2.38.0 リリース情報(Percona社ウェブサイト):
https://docs.percona.com/percona-monitoring-and-management/release-notes/2.38.0.html


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

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