サイト内の現在位置を表示しています。

ブログ

OSS貢献活動

Javaコンテナアプリケーショントラブルへの備え ~おなじみの情報を採取するために~

2024年1月31日公開

NECソリューションイノベータ 南 貴之です。

2023年12月15日(金)に開催された、日本OSS推進フォーラム(JOPF)、独立行政法人情報処理推進機構(IPA)共催のセミナー「new windowOSSフォーラムJAPAN ~オープンソースが変える未来の世界~」にて、「Javaコンテナアプリケーショントラブルへの備え ~おなじみの情報を採取するために~」と題した講演を行いました。

講演概要

Java container applications

本セミナーは、オフラインセミナーであり、60名程のOSS利用者やOSS関連ベンダーの方が参加されました。私自身は、日本OSS推進フォーラムのセミナーで講演させていただくのは初めてでしたが、和気あいあいとしつつも、各分野の深い知識や情報が行き交う充実した空間という印象で、大変貴重な経験でした。

講演内容

本講演は、主にミッションクリティカルなシステムを担う先進的IT技術領域を対象とした技術調査・評価や人材育成などを担う「NEC ソフトウェア&システムエンジニアリング統括部  先端 SI 技術開発グループ」の活動を通して得られた知見を元に、シンプルにノウハウとしてまとめた内容としました。

主旨は、元々Webアプリケーションサーバ上に構築されていたJavaアプリケーションを、コンテナ化してオーケストレータ上で動作させる場合に、アプリケーションが出力する標準的なログ/ダンプを、トラブル発生時に解析が可能になるような形式で出力させるにはどうしたらいいのか、についてです。

一足飛びにアプリケーションの大規模改修を伴うコンテナ化が容易に行えないようなシステムにおいて、基盤部分に将来的なクラウドネイティブ対応を見据えてコンテナオーケストレータを導入しつつ従来の情報も採取できるよう、OSSを活用したログ/ダンプ出力方式の現実解をご提案しています。

以下に本講演の最重要ポイントとなる、各ログ/ダンプとその出力の標準方式をまとめたスライドをご紹介いたします。この表のようにログ/ダンプの種別に合わせた採取方式を適用することが、トラブル解析をしやすくする上で肝要です。

Java container applications

表中の「ログ種別」列の表記はそれぞれ次の意味です。

・イベント記録形式
 状態の変化などイベント発生毎に取得する情報。
 問題の発生タイミングや状態などを詳細に把握可能。

・スナップショット形式
 その瞬間の情報を取得する形式。
 定期的な間隔で取得することでどのタイミングで問題が発生していたのかを確認することが可能。

例えば、Javaアプリケーションのトラブル時に調査することが多い「スレッドダンプ」は、コンテナオーケストレータ導入環境においても、次のスライドに示した方式で採取することができます。

Java container applications

別途new windowイベントページより公開されたnew window資料では、その他の各出力方式の構成例などもご紹介しておりますので、ぜひご参照下さい。

執筆者

南 貴之 (Takayuki Minami)
NECソリューションイノベータ (NEC Solution Innovators, Ltd.)

クラウド/コンテナ、IT自動化などの領域で活用されるOSSの技術支援や、導入実績の少ないOSSの実案件への適用見極めを目的とした技術検証などを行っています。OSSから生まれる先進的な技術がもたらす価値を、いち早くお客様にお届けできるよう、日々活動しております。(2024年1月時点の情報)

Takayuki Minami