FedRAMP 準拠の Insights for Red Hat Enterprise Linux を使用した RHEL リソース最適化の評価および監視
RHEL のリソース使用統計を理解する
概要
第1章 パブリッククラウドシステムのリソース最適化サービス
Red Hat Insights for Red Hat Enterprise Linux リソース最適化サービスにより、RHEL のお客様は、パブリック RHEL クラウドの使用状況および最適化を評価および監視できます。このサービスは、次のメトリクスを表示します。
- CPU
- メモリー
- ディスク使用率
これらのメトリクスを分析し、パブリッククラウドプロバイダーが推奨するリソース制限と比較します。過去 1 日のデータを活用すると、リソースの最適化サービスは各リソースパラメーターを複数の異なる方法で考慮し、アクションが可能なデータを返します。このデータにより、リソースの割り当てが改善され、パブリッククラウドの投資にかかる費用を節約できます。
機能
サービスタスクには以下の情報が必要です。
- Insights for Red Hat Enterprise Linux インベントリー内の既存システムの使用率および最適化データ
- パブリッククラウドで実行しているシステムの範囲
- システム特性の概要
- 潜在的な問題の強調
- 問題解決のための提案の作成
1.1. リソース最適化サービスコアコンセプト
1.1.1. リソース最適化サービスのパフォーマンスルール
リソース最適化サービスを使用して、サポートされているパブリッククラウドである Amazon Web Services (AWS) で実行している管理対象ホストのパフォーマンスメトリクスを表示します。このサービスは、Performance Co-Pilot (PCP) ツールキットと呼ばれるフレームワークを使用して、パフォーマンスメトリクスを記録します。これらのメトリクスにより、より適切なビジネス上の意思決定を行うことができます。
Insights のパフォーマンスルール
パフォーマンスルールは、PCP によって収集されたデータに適用される一連の条件です。これらは、次のシステム状態を識別します。
- Undersized: Undersized (小さすぎる) 状態は、CPU、RAM、およびディスクの入出力 (I/O) の使用状況を調べ、それを CPU のアイドル時間と組み合わせて 24 時間にわたって判断します。その結果、スコアが高くなると、リソース最適化サービスは、システムのワークロードに対して小さすぎるとラベル付けします。いずれかの寸法が小さすぎる場合は常に、システムは小さすぎると報告されます。
- Oversized: Oversized (大きすぎる) 状態は、CPU、RAM、およびディスク I/O の使用状況を調べ、それを CPU のアイドル時間と組み合わせて 24 時間にわたって判断します。その結果、スコアが低くなると、リソース最適化サービスは、システムをそのワークロードに対して大きすぎるとラベル付けします。すべてのディメンションが特大である場合にのみ、システムは特大として報告されます。
- Idling: Idling (アイドリング) 状態は、CPU、RAM、およびディスク I/O の使用状況を調べ、それを CPU のアイドル時間と組み合わせて 24 時間にわたって判断します。その結果、使用率が非常に低くなると、リソース最適化サービスは、システムにそのワークロードに適しているが十分に使用されていないとラベル付けします。アイドリング状態は、ニーズ改善シナリオと見なすことができます。
- Optimized: Optimized (最適化された) 状態は、CPU、RAM、およびディスク I/O の使用状況を調べ、それを CPU のアイドル時間と組み合わせて 24 時間にわたって判断します。その結果が中間点になると、リソース最適化サービスはシステムに最適化済みのラベルを付けます。
- Under pressure: この状態は、Kernel Pressure Stall Information (PSI) が有効になっている場合にのみアクティブになります。システムは、使用率に関して最適化されると、圧力がかかっているとラベル付けされますが、いくつかの圧力状態は持続します。
リソース最適化サービスは、システムにスコアを割り当てるために、システムの状態と設定した望ましいパフォーマンス基準を測定します。
関連情報
PCP ツールキットと PAYG の登録の詳細は、以下のリンクを参照してください。
1.1.2. リソース最適化サービスのデータセキュリティー保証
リソース最適化サービスは、Red Hat Insights for Red Hat Enterprise Linux サービスのデータおよびアプリケーションセキュリティープラクティスに準拠しています。詳細は、セキュリティー を参照してください。
1.1.3. リソース最適化のパフォーマンスメトリクス
リソース最適化サービスは、システムに pcp
パッケージをインストールし、pmcd
と pmlogger
の 2 つのサービスを実行します。どちらも Performance Co-Pilot (PCP) ツールキットの一部であり、システム上の特定のメトリクスを監視および処理します。メトリクスはアーカイブに保存され、これを Insights クライアントが Red Hat Insights for Red Hat Enterprise Linux にアップロードします。
1.1.4. リソース最適化サービスの使用状況メトリクスへのアクセス
リソース最適化サービスは、前日のデータをキャプチャーし、24 時間後のシステム使用状況メトリクスを提供します。デフォルトでは、ローカルシステム時間の午前 12:00 +/- 1 時間に、アーカイブが Insights for Red Hat Enterprise Linux にアップロードされます。ただし、このデータがアップロードされる時間は、Performance Co-Pilot (PCP) ツールキット設定で構成できます。
第2章 resource-optimization コンポーネントのインストールおよび設定
リソース最適化のインストールには、パッケージのインストール、設定の構成、およびローカルサービスの有効化が含まれます。これは手動で行うことも、Red Hat が提供する Ansible Playbook を使用して行うこともできます。
従量課金制 (PAYG) のお客様は、Insights クライアントを subscription-manager (RHSM) に登録する必要があります。subscription-manager に登録するには、次の 2 つの方法があります。
- アクティベーションキーの使用 (推奨)
- ユーザー名とパスワードの使用
Insights クライアントの登録方法の詳細は、FedRAMP に準拠した Red Hat Insights のクライアント設定ガイド を参照してください。
RHEL バージョン | クラウドプロバイダー | リソース最適化の互換性 |
---|---|---|
8.x-9.x | AWS | はい (x86_64 および ARM 64 ビット) |
7.7-7.9 | AWS | はい (x86_64 および ARM 64 ビット) |
7.0-7.6 | AWS | いいえ |
6.x | AWS | いいえ |
前提条件
リソース最適化サービスを使用する前に、次のアプリケーションをインストールし、設定を確認する必要があります。
- クラウドマーケットプレイスの RHEL インスタンスが設定されている。
- Insights クライアントがシステムにインストールされ、操作可能である。
2.1. resource-optimization コンポーネントのインストール
2.1.1. リソース最適化のインストール
手順
次の手動インストール手順を使用します。最新バージョンの insights-client がインストールされていることを確認します。
$ yum update insights-client
-
/etc/insights-client/insights-client.conf
でcore_collect=True
を設定します。 Performance Co-Pilot (PCP) ツールキットをインストールします。
$ sudo yum install pcp
次の内容で PCP 設定ファイル
/var/lib/pcp/config/pmlogger/config.ros
を作成します。log mandatory on default { hinv.ncpu mem.physmem mem.util.available disk.dev.total kernel.all.cpu.idle kernel.all.pressure.cpu.some.avg kernel.all.pressure.io.full.avg kernel.all.pressure.io.some.avg kernel.all.pressure.memory.full.avg kernel.all.pressure.memory.some.avg } [access] disallow .* : all; disallow :* : all; allow local:* : enquire;
リソースの最適化に必要なメトリクスを収集するように pmlogger を設定するには、次の行を
/etc/pcp/pmlogger/control.d/local
に追加します。LOCALHOSTNAME n n PCP_LOG_DIR/pmlogger/ros -r -T24h10m -c config.ros -v 100Mb
注記この手順の以前のバージョンでは、この行は
LOCALHOSTNAME n y
で始まっていました。今後は、この手順ではLOCALHOSTNAME n n
を使用することを推奨します。これにより、pmsocks
の使用が無効になります。pmsocks
の詳細は、pmsocks
のman
ページを参照してください。必要な PCP サービスを開始して有効にします。
$ sudo systemctl enable pmcd pmlogger $ sudo systemctl start pmcd pmlogger
insights-client を再登録し、アーカイブをアップロードします。システムは「データの待機中」状態で Insights にすぐに表示され、データおよび提案は登録の翌日に利用可能になります。
$ sudo insights-client --register
検証手順
タイムスタンプ付きのデータファイルは /var/log/pcp/pmlogger/ros
の下に表示され、数分後、メトリクスが収集されていることを確認できます。
$ ls -l /var/log/pcp/pmlogger/ros $ pmlogsummary /var/log/pcp/pmlogger/ros/
2.2. Kernel Pressure Stall Information (PSI) の有効化
PSI は、リソースの圧力が発生するにつれて増加することを確認するための標準的な方法を提供します。メモリー、CPU、および入出力 (I/O) の 3 つの主要なリソースの圧力メトリクスがあります。PSI は、RHEL 8 以降のバージョンで使用可能であり、デフォルトで無効になっています。
PSI が有効になっている場合、リソース最適化サービスはその結果を補強し、より多くの詳細とより良い提案を提供できます。ピークを特定するには、PSI を有効にすることが強く推奨されます。
手順
-
/etc/default/grub
ファイルを編集して、GRUB_CMDLINE_LINUX 行の最後にpsi=1
を追加します (引用符に注意してください)。 grub 設定ファイルを再生成します。
$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg
- システムを再起動します。
PSI を有効にすると、わずかながら (1%未満) パフォーマンスに影響があります。
検証手順
PSI を有効にすると、CPU、メモリー、IO のファイルが /proc/pressure
の下に表示されます。
2.3. リソース最適化サービスでの通知および統合の有効化
リソース最適化サービスが問題を検出して提案を生成するたびに、Red Hat Hybrid Cloud Console の通知サービスを有効にして通知を送信できます。通知サービスを使用すると、推奨事項について Red Hat Insights for Red Hat Enterprise Linux ダッシュボードを継続的にチェックする必要がなくなります。
たとえば、リソース最適化サービスが提案を生成するたびにメールメッセージを自動的に送信するように通知サービスを設定できます。
通知サービスを有効にするには、以下の 3 つの主要なステップが必要です。
- まず、組織管理者が通知管理者ロールを持つ User Access グループを作成し、そのグループにアカウントメンバーを追加します。
- 次に、通知管理者が通知サービス内のイベントの動作グループを設定します。動作グループは、通知ごとに配信方法を指定します。たとえば、動作グループは、電子メール通知をすべてのユーザーに送信するか、組織の管理者にのみ送信するかを指定できます。
- 最後に、イベントからメール通知を受信するユーザーは、各イベントの個別メールを受け取るようにユーザー設定を行う必要があります。
メールメッセージの送信に加えて、他の方法でイベントデータをプルするように通知サービスを設定できます。
- 認証されたクライアントを使用して、Red Hat Insights API にイベントデータを照会する。
- Webhook を使用して受信要求を受け入れるサードパーティーのアプリケーションにイベントを送信する。
- 通知を Splunk などのアプリケーションと統合して、リソースの最適化の推奨事項をアプリケーションダッシュボードにルーティングする。
関連情報
- リソース最適化の推奨事項に関する通知を設定する方法の詳細は、FedRAMP 用の Red Hat Hybrid Cloud Console での通知の設定 および Red Hat Hybrid Cloud Console とサードパーティーアプリケーションのインテグレーション を参照してください。
第3章 リソース最適化レポートの表示
今後のパブリッククラウドへの投資に関して、情報に基づいた意思決定を行うために、長期にわたる最適化レベルを評価する際に役立つ履歴データレポートが利用可能です。
3.1. 使用率の履歴データの表示
リソース最適化サービスを使用すると、過去 7 ~ 45 日間のシステム使用率スコアの傾向を確認できます。このサービスは、日単位で CPU 使用率 と メモリー使用率 のパーセンテージを示す棒グラフを表示します。
システムの使用率の履歴データを表示、フィルタリング、およびソートするには、次の手順を実行します。
手順
- Business > Resource Optimization ページに移動します。システム状態画面が開きます。
- ページの左側にある Name ヘッダーをクリックして、Name, State or Operating system でフィルター処理します。各列名の右側にある並べ替え矢印を使用して、OS、CPU、Memory Utilization、I/O Output、Suggestions、State、および Last Reported でソートします。一度クリックすると、最適化されたシステムが最初に表示されるように列が並べ替えられます。もう一度クリックすると、列がソートされ、Waiting for data と分類されたシステムが最初に表示されます。
- 分析されたシステムは青色で表示されます。青いシステム名をクリックすると、詳細が表示されます。
- Actions ドロップダウンをクリックして、オペレーティングシステム、インフラストラクチャー、設定、BIOS、その他のデータなど、システムの プロパティーをインベントリー に表示します。
- デフォルトでは、リソース最適化システムは 7 日間の使用結果を表示します。Last 7 Days というラベルの付いたドロップダウンをクリックして、45 日間の使用率データを表示します。マウスホイールおよびボタンを使用して棒グラフを移動したりズームしたりして、特定の日と、その日の使用率スコアを表示します。
- 下にスクロールして、そのシステムに関する具体的な提案を確認します。
3.2. リソース最適化サービスレポートのダウンロード
すべての登録済みシステムのリソース最適化レポートをダウンロードできます。このレポートは、過去 7 〜 45 日間に収集された次のデータを識別します。
- 登録済みシステム。このセクションでは、最適、非最適、および古いシステムの数について詳しく説明します。最適化された状態は、24 時間にわたって CPU、RAM、およびディスク I/O の使用状況を CPU のアイドル時間と組み合わせて調べることによって決定されます。3 つの要因の調査に基づく計算の結果が中間点になる場合、リソース最適化サービスはシステムを最適化済みとしてラベル付けします。古いシステムは、リソース最適化サービスに 7 日間データを送信していないシステムとして定義されます。
- Kernel Pressure Stall Information (PSI)。これは、PSI が有効になっているシステムの数、および PSI が有効になっていないシステムの数の分析です。PSI を使用すると、リソースのプレッシャーが増大するにつれて、その増加を特定できるため、より優れたシステムの推奨事項を受け取ることができます。
- システムパフォーマンスの問題。RAM や CPU 関連のピークなど、特定のパフォーマンスの問題が発生回数とともに特定されます。
- 現在最も使用されているインスタンスタイプ。このサービスは、登録されているすべてのシステムで最も頻繁に使用される上位 5 つのインスタンスタイプを評価および表示します。
- 推奨のインスタンスタイプ。このサービスは、最新の使用率メトリクスに基づいて、頻繁に推奨される上位 5 つのインスタンスタイプを特定します。これは、リソースの割り当てを改善するために、変更が必要であることを示している可能性があります。
- 45 日間の推奨のインスタンスタイプ。このメトリクスは、45 日間の履歴データに基づいて、頻繁に推奨される上位 5 つのインスタンスタイプを表示します。また、最近行った変更の有効性を表示することもできます。
前提条件
エグゼクティブレポートの PDF を作成するには、次の前提条件と条件が満たされている必要があります。
- Insights クライアントがシステムにインストールされ、操作可能である。
- Performance Co Pilot がインストールされ、正しく設定されている。
- 1 つ以上のシステムが登録されておりリソース最適化にデータを送信している。
システムがリソース最適化に情報を送信している時間が長ければ長いほど、推奨事項はより正確で価値のあるものになります。
手順
- Business > Resource Optimization に移動します。
- 右上隅にある Download executive report をクリックします。
- Export successful というメッセージのダイアログボックスが表示され、タスクバーに PDF ファイルが表示されます。
関連情報
- セクション 3.5「Kernel Pressure Stall Information (PSI) の有効化」を参照してください。
- PCP ツールキット Web サイト: PCP Web サイト
第4章 リソース最適化サービスの無効化
4.1. リソース最適化ファイルおよびデータの削除
Ansible を使用してリソース最適化サービスを無効にする
各システムで以下の手順を実行し、リソース最適化サービスを無効にしてアンインストールします。
手順
次のコマンドを使用して Ansible Playbook をダウンロードします。
$ curl -O https://raw.githubusercontent.com/RedHatInsights/ros-backend/v1.0/ansible-playbooks/ros_disable.yml
次のコマンドを使用して Ansible Playbook を実行します。
# ansible-playbook -c local ros_disable_and_clean_up.yml
Playbook をアンインストールしても、Performance Co-Pilot (PCP) ツールキットが停止または削除されることはありません。PCP は複数のアプリケーションをサポートする場合があることに注意してください。リソース最適化サービス専用に PCP を使用していて、PCP も削除したい場合は、いくつかのオプションがあります。pmlogger
および pmcd
サービスを停止して無効にするか、システムから pcp
パッケージをアンインストールして PCP を完全に削除することができます。
Ansible を使用せずにリソース最適化サービスを手動で無効にする
アンインストールプロセスを迅速化するために、Ansible の使用を推奨します。Ansible を使用しないことを選択した場合は、次の手動手順を利用してください。
手順
/etc/pcp/pmlogger/control.d/local
からこの行を削除して、リソース最適化サービスのメトリクス収集を無効にします。LOCALHOSTNAME n y PCP_LOG_DIR/pmlogger/ros -r -T24h10m -c config.ros -v 100Mb
PCP を再起動して、リソース最適化サービスのメトリクス収集を効果的に停止します。
$ sudo systemctl pmcd pmlogger
リソース最適化サービス設定ファイルを削除します。
$ sudo rm /var/lib/pcp/config/pmlogger/config.ros
システムからリソース最適化データを削除します。
$ sudo rm -rf /var/log/pcp/pmlogger/ros
PCP を他の目的で使用していない場合は、システムから削除できます。
$ sudo yum remove pcp
4.2. Kernel Pressure Stall Information (PSI) の無効化
手順
-
/etc/default/grub
ファイルを編集して、GRUB_CMDLINE_LINUX 行からpsi=1
を削除します。 grub 設定ファイルを再生成します。
[user]$ sudo grub2-mkconfig -o /boot/grub2/grub.cfg
- システムを再起動します。
検証手順
PSI が無効になっていると、/proc/pressure
は存在しません。
Red Hat ドキュメントへのフィードバック (英語のみ)
Red Hat ドキュメントに関するフィードバックをお寄せください。いただいたご要望に迅速に対応できるよう、できるだけ詳細にご記入ください。
前提条件
- Red Hat カスタマーポータルにログインしている。
手順
フィードバックを送信するには、以下の手順を実施します。
- Create Issue にアクセスします。
- Summary テキストボックスに、問題または機能拡張に関する説明を入力します。
- Description テキストボックスに、問題または機能拡張のご要望に関する詳細を入力します。
- Reporter テキストボックスに、お客様のお名前を入力します。
- Create ボタンをクリックします。
これによりドキュメントに関するチケットが作成され、適切なドキュメントチームに転送されます。フィードバックをご提供いただきありがとうございました。