概要
企業の日常的な運用と保守では、多数のサーバーデバイスが使用されています。一般に、共通の監視ソフトウェアを使用して、機器の故障に対する自動警報を実現できます。今年、以下を含むハードウェア障害が何件発生したかをさらに把握する必要があります。メモリ障害の数、ハードディスク障害の数、マザーボードと CPU の障害の数、および最も多くの障害が発生しているサーバーはどれですか? これらのイベントは、機器を交換し、故障を減らすための基礎となります。
サーバーログの収集にはHonghuを選択しましたが、チャートの迅速な検索とカスタマイズが可能で、これらの問題点を完全に解決します。
監視対象
インフラストラクチャ内のサーバーデバイスからログを収集します
サーバーデバイスのログインセキュリティを監視する
サーバーデバイスの設定セキュリティを監視する
統計サーバー機器の故障
ベクターをインストールする
データ コレクターとして、Vector はデバイスの syslog ログを受信し、Honghu プラットフォームに転送できます。ベクターの設定方法は以下を参照してください。
ベクターのインストール
インストール後にベクター バージョンをチェックして、インストールが成功したことを確認します。
Vector をインストールした後、Vector を直接実行すると、システムはまず /usr/bin の下でコマンドを検索します。このディレクトリにコマンドが存在しない場合、コマンドは見つかりません。現時点では、見つからないコマンド用のリンク ファイルを作成し、/usr/bin にリンクする必要があります。
(特定のコードについては、Honghu 技術交換グループに参加してください。詳細については、Honghu ナレッジ ベースを参照してください)
Honhu プラットフォームにログインし、[データ管理] > [新しいデータセット] に移動します。
データソース名を編集し、上で作成した「スイッチ」としてデータセット範囲を選択すると有効になります。
syslog.toml スクリプトを作成するには、フィールドを調整する必要があります
address = "0.0.0.0:514": 0.0.0.0 はすべてのホストから送信された syslog を受信することを意味し、514 は受信ポートを意味します (syslog のデフォルトは 514)
._target_table = "switch" : 上記で作成したデータセットの名前を示します
mode = "udp": syslog を受信するためのプロトコルを示します。syslog のデフォルトは udp)
address = "172.20.6.111:9092": Honhu の IP と対応するポート
変更した syslog スクリプトを実行し、実行したままにします。
(特定のコードについては、Honghu 技術交換グループに参加してください。詳細については、Honghu ナレッジ ベースを参照してください)
スイッチにログインして syslog をトリガーします(注: スイッチにログインしてコマンドを入力すると、自動的に syslog がトリガーされます)。Honhu プラットフォームにログインして、データがスイッチ データセットにインポートされているかどうかを確認します。以下の図に示すように、イベント数はデータのインポートが成功したことを示しています。
ベクターを介してスイッチ データセットにインポートされたデータをクエリします
サーバーのsyslogを構成する
システム ログ サーバーを構成し、ログ システムの IP を入力します。ポート番号はデフォルトです。
アラームをオンにする
ロギング プラットフォームに送信されるアラートの種類を設定する
Honhu はログを受信したかどうかを確認します
フィールド抽出
フィールドを抽出する目的: たとえば、グラフを生成するときに、重大度を呼び出したいのですが、Honghu がこのフィールドを抽出していないことが判明したため、このフィールドを呼び出してグラフを生成することはできません。
IDRAC には独自の固有のログ形式があるため、Honghu はすべてのフィールドを抽出するわけではないため、IDRAC ログ形式に従ってデータを抽出する必要があります。フィールド抽出のロジックは、最初に SQL ステートメントを通じてビューを作成することです。ビューが生成された後、ビュー内のフィールドを直接呼び出すことができ、実際のログは元のデータ セットに保存されたままになります。
まず IDRAC のログ形式を分析してみましょう。実際のログ形式分析、抽出する必要があるフィールド
idrac_syslog、これは作成する必要があるビューの名前です
switch._time スクリプトの 6 行目以降の switch は、データを抽出する必要がある元のデータ セットを参照しているため、データ セット名に応じて置き換える必要があります。
ここで、 contains( switch._message, 'iDRAC') 'iDRAC' は、この書き込みログを検索する特定のフィールドを指します。IDRAC を通じて、ログ内に IDRAC を含むすべてのログを制限できます。
正規表現の作成方法とテスト方法
https://regex101.com/ にアクセスし、REGULAR EXPRESSION に正規表現を入力するか、ここに直接書き込みます
TESTING STRING にログを入力します。Honghu から関連するログを直接コピーできます。
正規表現が正しい場合は、対応する色が生成され、抽出されたフィールド名とフィールドの内容が右下の一致情報に表示されます。
高次のクエリを実行、成功
検索ステートメントのテストを実行してみましょう。赤い部分に抽出したフィールドが表示されます。
チャート表示
グラフの作成部分では、ここではグラフの種類ごとに 1 つの例のみを示しますが、参考までにすべての検索言語をリストします。
ダッシュボード > 新しいダッシュボード
作成した
アラームレベルの統計をログに記録します
新しいチャート > ログアラームレベル統計
グラフの種類を選択します: 円グラフ
クエリ ステートメント: このステートメントを最初にクエリ内で検証して、検索結果が希望どおりであることを確認できます。
期間: 30 日を選択します。自分の状況に応じて調整できます。
グラフを生成すると、過去 30 日間のさまざまな種類のアラームを表示できます。
目的: たとえば、エラーやアラームがなければ、デバイスが正常に動作していると簡単に判断できます。各種アラームの電流割合の判断も容易です。
サーバーの数
新しいグラフ > サーバーの数
チャートの種類を選択します: 単一値トレンド チャート
クエリ ステートメント: このステートメントを最初にクエリ内で検証して、検索結果が希望どおりであることを確認できます。
期間: 30 日を選択します。自分の状況に応じて調整できます。
グラフを生成した後、Honghu に送信されたログを持つすべてのサーバーをカウントできます。
目的: 現在監視しているサーバーの総数を確認するために使用されます。主に見栄えの良いグラフ レイアウトのために、エラーや漏れをチェックするのに便利です。
構成変更の詳細
新しいアイコン > 設定変更の詳細
チャートの種類を選択します: テーブル (ここでは詳細を表示する必要があるため、テーブル メソッドを選択します)
クエリ ステートメント: このステートメントを最初にクエリ内で検証して、検索結果が希望どおりであることを確認できます。
期間: 30 日を選択します。自分の状況に応じて調整できます。
グラフの生成後、特定の時間、どのユーザー、どのデバイス、どのような操作が実行されたかを確認できます。
目的: たとえば、非メンテナンス時間または非稼働時間中にデバイス構成を変更し、この期間中にデバイスにログインしたユーザーと実行された構成を確認して、これらの動作が正常で準拠しているかどうかを判断します。 。
構成変更チャート
新しいアイコン > 変更チャートの構成
グラフの種類を選択します: ヒストグラム
クエリ ステートメント: このステートメントを最初にクエリ内で検証して、検索結果が希望どおりであることを確認できます。
期間: 30 日を選択します。自分の状況に応じて調整できます。
グラフを生成すると、先月にどのサーバーの構成が何回変更されたかを確認できます。
目的: たとえば、最近障害やメンテナンスが発生していない場合、サーバーの構成変更は異常なイベントであり、構成変更の詳細を通じて、その動作が正常で準拠しているかどうかを判断できます。
構成変更傾向グラフ
新しいアイコン > 構成変更傾向グラフ
グラフの種類を選択します: 折れ線グラフ
クエリ ステートメント: このステートメントを最初にクエリ内で検証して、検索結果が希望どおりであることを確認できます。
期間: 30 日を選択します。自分の状況に応じて調整できます。
グラフを生成した後、先月のサーバー変更の傾向を確認できます
目的: たとえば、最近障害やメンテナンスが発生していない場合、サーバーの構成変更は異常なイベントであり、構成変更の詳細を通じて、その動作が正常で準拠しているかどうかを判断できます。
検索フレーズ
この記事のすべての検索用語は参考のために以下にリストされています
ヒント: 検索ステートメントのコマンド部分は、抽出された文字フィールドを呼び出します。文字フィールドが抽出されない場合、エラーが表示されます。
レンダリング
チャートを作成した後、「グリッド レイアウト」を選択してチャート レイアウトを最適化および調整します。最終的なレンダリングは次のようになります。