In this post:
-
Learn how to troubleshoot a resource usage spike utilizing the log entries displayed in the Web Console.
-
How the Web Console can show current real time performance information, historical graphs of performance metrics, and more.
-
Where you can get started with the RHEL Web Console today
If you’re a system administrator or in another position where you are responsible for Red Hat Enterprise Linux (RHEL) systems, you’ve probably been in this situation before: your customers or end users come to you saying the system is slow, and they need it fixed right away.
A common workflow is to check the system log files around the time the performance issue started to see what was occurring on the system at that time. In the past, this process involved manual steps that can be time consuming and challenging depending on your level of experience.
In RHEL 8.4, we introduced the ability for the Web Console to identify when resource usage spikes occurred (for example, a CPU spike). In RHEL 8.5 and RHEL 9 beta, we’ve extended this functionality to also show what was logged on the system around the time the spike occurred.
![](/rhdc/managed-files/styles/wysiwyg_full_width/private/01-28-22-image5.png.webp?itok=jYJYTprn)
In this screenshot, the Web Console shows there was a CPU spike at 1:58 PM, and in addition, it shows log entries that occurred around this time. One of those log entries is related to systemd starting a Podman container (the bottom log entry in the screenshot).
This blog post will cover how to troubleshoot a resource usage spike utilizing the log entries displayed in the Web Console. In this example, I’ll determine that this Podman container is the cause of the performance issue, and will be able to resolve the CPU spike by stopping the Podman container.
Prerequisites
The first steps of getting started with the Web Console are ensuring that it is installed, enabled, and that the firewall allows the cockpit service. For more information on these steps, refer to the getting started using the RHEL Web Console documentation.
To access historical performance metric graphs in the Web Console, you’ll also need to have the cockpit-pcp package installed, and the pmlogger.service systemd service enabled/started. These steps can be done from the command line, or you’ll be prompted to complete these steps in the Web Console after you click the View details and history link under the Usage card on the Overview page.
In this blog post, I’ll also be using the Podman functionality within the Web Console. You can enable this functionality by installing the cockpit-podman package from the command line, or by going to the Applications section of the Web Console, and clicking on Install for the Podman application.
Investigating the performance issue
In this example scenario the system started running slowly about 30 minutes ago. To begin the investigation, I’ll log in to the Web Console, and from the Overview page, click View details and history under the Usage card.
![](/rhdc/managed-files/styles/wysiwyg_full_width/private/01-28-22-image7.png.webp?itok=k_zGrhPO)
I’ll start by looking at the real-time performance metrics, which show how the system is doing at this very moment. I can immediately see that the system has two CPUs, and they are currently maxed out at 100%. The other metrics for RAM, swap, disk read/writes, and network traffic, however, currently look good.
![](/rhdc/managed-files/styles/wysiwyg_full_width/private/01-28-22-image6.png.webp?itok=Wu-Qt4xh)
Next, I’ll scroll down and look at the historical performance graphs, and I can see that around 30 minutes ago, there was a CPU spike recorded at 1:58 PM.
![](/rhdc/managed-files/styles/wysiwyg_full_width/private/01-28-22-image2.png.webp?itok=_0Xf8xN9)
If I click the arrow next to the CPU spike, I can see the log entries that occurred around this time. Each of these lines is a link that can be clicked on to show additional information. The log entry that looks most interesting to me is the bottom one that shows that systemd started a Podman container at 1:57 PM. If I click that log entry line, I’ll see additional details.
![](/rhdc/managed-files/styles/wysiwyg_full_width/private/01-28-22-image10.png.webp?itok=GfoOavDH)
On the log entry page, I can see the details of this log entry. In the top right, I’ll click the link to see details about the systemd service that started the container, development_container.service.
![](/rhdc/managed-files/styles/wysiwyg_full_width/private/01-28-22-image8.png.webp?itok=W3Np6eT-)
From the development_container.service page, I could click on the dots in the upper right corner and stop the systemd service for the container; however, I would like to do some more investigating first.
![](/rhdc/managed-files/styles/wysiwyg_full_width/private/01-28-22-image3.png.webp?itok=IO38_sNz)
This system has the cockpit-podman package installed, which allows me to manage Podman containers from the Web Console.
I’ll start by clicking on Podman containers in the menu on the left. I’ll then see a list of running containers, and after clicking on the drop-down arrow on a container I’ll see additional details about the container.
I’ll verify this is the same container that was originally shown in the log entry for the CPU spike by verifying that the container ID shown on this page matches the container ID in the log entry, which it does. In addition, I can see the command that was started in the container, which in this example is /tmp/script.sh, and I can see that the container is consuming 198.33% of CPU (almost all of the 2 CPU’s on the system).
From here, I could optionally click on the Console tab and run commands within the container to gather additional information.
![](/rhdc/managed-files/styles/wysiwyg_full_width/private/01-28-22-image9.png.webp?itok=PQgHjAt3)
At this point, I would like to stop this container on the system. This container was started by a systemd service, so if it is stopped from the Podman section of the Web Console, systemd will automatically restart it again.
To stop a container started from a systemd service, I’ll need to go back to the development_container.service systemd service in the Services section of the Web Console. From there, I can click on the dots in the upper right corner, and click Stop, as shown:
![](/rhdc/managed-files/styles/wysiwyg_full_width/private/01-28-22-image4.png.webp?itok=OIN6ey1t)
After the service stops, I’ll go back to the Overview section of the Web Console to verify CPU usage looks better. With the development_container.service stopped, the CPU usage has gone down to 5%.
![](/rhdc/managed-files/styles/wysiwyg_full_width/private/01-28-22-image1.png.webp?itok=burVsW1a)
Conclusion
The Web Console is a great place to start troubleshooting a potential performance issue on a RHEL system. The Web Console can show current real-time performance information and historical graphs of performance metrics. In addition, it can identify resource usage spikes and show log entries that occurred around the time of these usage spikes.
Get started today with the RHEL Web Console by following the getting started using the RHEL Web Console documentation.
執筆者紹介
Brian Smith is a Product Manager at Red Hat focused on RHEL automation and management. He has been at Red Hat since 2018, previously working with Public Sector customers as a Technical Account Manager (TAM).
チャンネル別に見る
自動化
テクノロジー、チームおよび環境に関する IT 自動化の最新情報
AI (人工知能)
お客様が AI ワークロードをどこでも自由に実行することを可能にするプラットフォームについてのアップデート
オープン・ハイブリッドクラウド
ハイブリッドクラウドで柔軟に未来を築く方法をご確認ください。
セキュリティ
環境やテクノロジー全体に及ぶリスクを軽減する方法に関する最新情報
エッジコンピューティング
エッジでの運用を単純化するプラットフォームのアップデート
インフラストラクチャ
世界有数のエンタープライズ向け Linux プラットフォームの最新情報
アプリケーション
アプリケーションの最も困難な課題に対する Red Hat ソリューションの詳細
オリジナル番組
エンタープライズ向けテクノロジーのメーカーやリーダーによるストーリー
製品
ツール
試用、購入、販売
コミュニケーション
Red Hat について
エンタープライズ・オープンソース・ソリューションのプロバイダーとして世界をリードする Red Hat は、Linux、クラウド、コンテナ、Kubernetes などのテクノロジーを提供しています。Red Hat は強化されたソリューションを提供し、コアデータセンターからネットワークエッジまで、企業が複数のプラットフォームおよび環境間で容易に運用できるようにしています。
言語を選択してください
Red Hat legal and privacy links
- Red Hat について
- 採用情報
- イベント
- 各国のオフィス
- Red Hat へのお問い合わせ
- Red Hat ブログ
- ダイバーシティ、エクイティ、およびインクルージョン
- Cool Stuff Store
- Red Hat Summit