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) のお客様は、Basic 認証を使用するように insights-client を設定する必要があります。詳細は、Red Hat Insights 向け Basic 認証の設定 に関するドキュメントを参照してください。RHEL システムがサブスクリプションを使用している場合は、Basic 認証を使用できますが、必須ではありません。Insights クライアントは既存の RHSM データを使用できます。
表2.1 互換性情報
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 クライアントがシステムにインストールされ、操作可能である。
Ansible を使用してリソース最適化サービスをインストールまたはアンインストールする場合は、以下を行う。
- Ansible リポジトリーが有効になり、Ansible クライアントが各システムにインストールされている。
- システム管理者は Ansible Playbook を実行できる。
2.1. resource-optimization コンポーネントのインストール
resource-optimization コンポーネントのインストールには、いくつかのオプションがあります。お使いの Ansible ワークフローで使用可能なオプションを選択してください。
2.1.1. Ansible のインストールと resource-optimization インストール Playbook の実行
インストールプロセスを迅速化するために、Ansible の使用をお勧めします。この手順では、Ansible クライアントをインストールし、システムで Ansible Playbook を実行します。
Amazon Web Services (AWS) のクラウドマーケットプレイスイメージは、クラウドプロバイダーによってホストされているリポジトリーを使用するように設定されています。現在、これらのリポジトリーには Ansible クライアントが含まれていないため、クラウドマーケットプレイスで管理されている RHEL システムで Ansible リポジトリーを有効にするには、次の手順を実行する必要があります。
RHEL 8.6 以降および RHEL 9.0 では、Red Hat は Ansible Core を使用することを推奨しています。詳細は、RHEL 8.6 および 9.0 での Ansible の使用に関する更新事項 を参照してください。
前提条件
- RHEL 8 で Ansible リポジトリーが有効になっている。
RHEL 8 の手順
Ansible をインストールします。
# yum install ansible -y
RHEL 7 の手順
Subscription-manager リポジトリーを有効にして、システムを登録します。
# subscription-manager config --rhsm.manage_repos=1 # subscription-manager register
オプションで、システムをサブスクリプションプールに接続します。
# subscription-manager attach --pool xxxxxxxx
必要な Ansible リポジトリーを有効にします。
# subscription-manager repos --enable=rhel-7-server-ansible-2.9-rpms
Ansible をインストールします。
# yum install ansible -y
RHEL PAYG を使用していて、RHUI 更新サーバーのみを使用する場合は、subscription-manager リポジトリーを無効にします。
# subscription-manager config --rhsm.manage_repos=0
2.1.2. Ansible がすでにインストールされている場合のリソース最適化のインストール
Ansible をインストールしたら、リソース最適化サービスのインストールを完了します。
手順
次のコマンドを使用して Ansible Playbook をダウンロードします。
$ curl -O https://raw.githubusercontent.com/RedHatInsights/ros-backend/v1.0/ansible-playbooks/ros_install_and_set_up.yml
-
localhost
という行を/etc/ansible/hosts
に追加して、Ansible インベントリーに localhost を設定します。 Ansible Playbook を実行します。
# ansible-playbook -c local ros_install_and_set_up.yml
システムは「データの待機中」状態で Insights にすぐに表示され、データおよび提案は登録の翌日に利用可能になります。
検証手順
タイムスタンプ付きのデータファイルは /var/log/pcp/pmlogger/ros
の下に表示され、数分後、メトリクスが収集されていることを確認できます。
$ ls -l /var/log/pcp/pmlogger/ros $ pmlogsummary /var/log/pcp/pmlogger/ros/
2.1.3. Ansible をインストールまたは使用しない場合のリソース最適化のインストール
手順
インストールに Ansible を使用しないことを選択する場合は、以下の手動インストール手順を使用してください。
最新バージョンの 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 y PCP_LOG_DIR/pmlogger/ros -r -T24h10m -c config.ros -v 100Mb
必要な 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 つの主要なステップが必要です。
- まず、組織管理者が通知管理者ロールを持つユーザーアクセスグループを作成し、そのグループにアカウントメンバーを追加します。
- 次に、通知管理者が通知サービス内のイベントの動作グループを設定します。動作グループは、通知ごとに配信方法を指定します。たとえば、動作グループは、電子メール通知をすべてのユーザーに送信するか、組織の管理者にのみ送信するかを指定できます。
- 最後に、イベントから電子メール通知を受信するユーザーは、各イベントの個別電子メールを受け取るようにユーザー設定する必要があります。
メールメッセージの送信に加えて、他の方法でイベントデータをプルするように通知サービスを設定できます。
- 認証されたクライアントを使用して、Red Hat Insights API にイベントデータを照会します。
- Webhook を使用して受信要求を受け入れるサードパーティーのアプリケーションにイベントを送信する。
- 通知を Splunk などのアプリケーションと統合して、リソースの最適化の推奨事項をアプリケーションダッシュボードにルーティングします。
関連情報
- リソース最適化の推奨事項の通知を設定する方法の詳細は、Red Hat Hybrid Cloud Console での通知および統合の設定 を参照してください。
第3章 リソース最適化レポートの表示
今後のパブリッククラウドへの投資に関して、情報に基づいた意思決定を行うために、長期にわたる最適化レベルを評価する際に役立つ履歴データレポートが利用可能です。
3.1. 使用率の履歴データの表示
リソース最適化サービスを使用すると、過去 7 ~ 45 日間のシステム使用率スコアの傾向を確認できます。このサービスは、日単位で CPU 使用率 と メモリー使用率 のパーセンテージを示す棒グラフを表示します。
システムの使用率の履歴データを表示、フィルタリング、およびソートするには、次の手順を実行します。
手順
- Red Hat Enterprise Linux > リソースの最適化 ページに移動します。システム状態画面が開きます。
- ページの左側にある Name ヘッダーをクリックして、Name, State or Operating system でフィルター処理します。各列名の右側にある並べ替え矢印を使用して、OS, CPU, Memory Utilization, I/O Output, Suggestions, State, および Last Reported でソートします。1 回クリックすると、最適化されたシステムが最初に表示されるように列が並べ替えられます。もう一度クリックすると、列がソートされ、データの待機中 と分類されたシステムが最初に表示されます。
- 分析されたシステムは青色で表示されます。青いシステム名をクリックすると、詳細が表示されます。
- 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 つ以上のシステムが登録されておりリソース最適化にデータを送信している。
システムがリソース最適化に情報を送信している時間が長ければ長いほど、推奨事項はより正確で価値のあるものになります。
手順
- Red Hat Enterprise Linux > 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 カスタマーポータルで、Multi-page HTML 形式でドキュメントを表示している。
手順
フィードバックを提供するには、以下の手順を実施します。
ドキュメントの右上隅にある Feedback ボタンをクリックして、既存のフィードバックを確認します。
注記フィードバック機能は、Multi-page HTML 形式でのみ有効です。
- フィードバックを提供するドキュメントのセクションを強調表示します。
強調表示されたテキスト近くに表示される Add Feedback ポップアップをクリックします。
ページの右側のフィードバックセクションにテキストボックスが表示されます。
テキストボックスにフィードバックを入力し、Submit をクリックします。
ドキュメントに関する問題が作成されます。
- 問題を表示するには、フィードバックビューで問題リンクをクリックします。