【ITニュース解説】OCI "leapp upgrade" for OCI compute instances

2025年09月05日に「Dev.to」が公開したITニュース「OCI "leapp upgrade" for OCI compute instances」について初心者にもわかりやすいように丁寧に解説しています。

作成日: 更新日:

ITニュース概要

Oracle Cloud上のLinux OSをアップグレードするツール「Leapp」を紹介。OSのメジャーバージョンアップを自動化し、事前に互換性問題を検知・報告するため、初心者でも安全に作業できる。OCI環境では専用オプションの指定が必須となる。(119文字)

出典: OCI "leapp upgrade" for OCI compute instances | Dev.to公開日:

ITニュース解説

システムエンジニアを目指す初心者にとって、オペレーティングシステム(OS)のバージョンアップ作業は、時に非常に複雑で神経を使うものだ。特に、OSの「メジャーバージョンアップ」と呼ばれる大きな変更は、システムの安定性や互換性に影響を与える可能性があるため、慎重に進める必要がある。例えば、Oracle Linux 7(OL7)からOracle Linux 8(OL8)へ、あるいはOL8からOL9へと移行するような場合がこれにあたる。このようなメジャーバージョンアップを、手作業で行うと、OSをクリーンインストールし直してから、アプリケーションやデータを一つ一つ移行させる必要があり、時間も手間もかかり、何よりもエラーが発生するリスクが高い。

ここで紹介する「Leapp upgrade」は、Oracle LinuxやRed Hat Enterprise Linux環境で、このメジャーバージョンアップ作業を自動化し、安全かつ効率的に行うための非常に便利なツールである。Leappを使うことで、OSをゼロから再インストールしてアプリケーションを手動で再構築する代わりに、既存のシステムを分析し、新しいOSバージョンとの互換性がない部分や、アップグレード前に修正が必要な箇所を事前に洗い出してくれる。これにより、エラーの可能性を大幅に減らし、初心者でも安心してアップグレード作業に取り組めるようになる。

Leappの大きな利点は、アップグレードを実行する前に、システム全体の詳細なチェックを行う点にある。例えば、インストールされているパッケージの中に新しいOSバージョンでサポートされなくなるものがないか、設定ファイルに互換性の問題がないかなどを自動的に調査する。そして、これらの問題点や潜在的なリスクについて、詳細なレポートを作成してくれる。このレポートには、問題の種類(例えば、重大度が高いものから低いものまで)や、推奨される修正方法まで具体的に示されるため、管理者はアップグレード前に必要な対策を講じることができる。これは、重要なデータベースや基幹業務アプリケーションが稼働するシステムを、より新しい、セキュリティが強化され、パフォーマンスも向上したLinuxバージョンへスムーズに移行させる上で不可欠な機能と言える。

しかし、どれほど優れたツールであっても、事前の準備と理解は極めて重要だ。Leapp upgradeを利用する前には、必ずOracleが提供する公式ドキュメントを隅々まで読み込み、アップグレードプロセスの全体像や注意点をしっかりと把握しておく必要がある。特に重要なのは、アップグレード作業は必ず本番環境で行う前に、非本番環境、つまり開発環境やテスト環境で十分にテストを行うことだ。また、万が一の事態に備え、アップグレード対象のシステム(特にブートボリューム)のバックアップを必ず取得しておくことは、どんなに強調してもし過ぎることはない。これにより、問題が発生した場合でも、以前の状態に迅速に復旧できるようになる。

具体的なLeapp upgradeのステップは、通常以下のようになる。まず、アップグレードの準備として「sudo leapp preupgrade --oci」コマンドを実行する。このコマンドは、システムが新しいOSバージョンへのアップグレード準備が整っているかを評価し、潜在的な問題を特定する。実行後、「/var/log/leapp/leapp-report.txt」というファイルにレポートが出力されるので、このレポートを確認し、「阻害要因(Inhibitors)」と呼ばれるアップグレードを妨げる可能性のある問題点がリストアップされていないかをチェックする。

もし阻害要因が見つかった場合、それらを解消する必要がある。一般的な阻害要因を解消するためのコマンドとして、「leapp answer --section os_management_hub_agent_check.confirm=True」のような形式のコマンドがいくつか提供されている。これらのコマンドは、Leappが特定の状況についてユーザーの確認を求めている場合に、その回答をLeappに伝えるために使用される。レポートに示された指示に従い、適切なleapp answerコマンドを実行して阻害要因をクリアしていく。

全ての阻害要因が解消され、アップグレード準備が整ったと判断できたら、いよいよ実際のアップグレード作業に移る。「sudo leapp upgrade --oci」コマンドを実行することで、LeappはOSのバージョンアッププロセスを開始する。ここで使用している「--oci」というオプションは、Oracle Cloud Infrastructure(OCI)上で稼働しているインスタンスに対してLeappを実行する場合に必須となる。もし、データセンターなどにあるオンプレミス環境のサーバーでLeappを使用する場合は、「--oraclelinux」というオプションを指定することになる。このオプションの違いは重要なので、間違えないように注意が必要だ。アップグレードが正常に完了すれば、システムは新しいOSバージョンで再起動する。

Leappの実行中に生成されるログファイルは、問題解決や状況把握に非常に役立つ。主なログファイルは以下の通りだ。

まず、「/var/log/leapp/answerfile」は、Leappがプリアップグレードチェックやアップグレードプロセス中にユーザーの判断が必要と判断した質問に対する回答を保存する設定ファイルだ。例えば、特定のモジュールの有効化/無効化や、非推奨パッケージの扱いなど、Leappが自動的に決定できない場合に、ユーザーが提供した情報がここに記録される。

次に、「/var/log/leapp/leapp-report.txt」は、アップグレード前のチェックで検出された阻害要因や、システムに存在するリスク(重大度に応じてHIGH、MEDIUM、LOWに分類される)について、人間が読みやすいテキスト形式でまとめられたレポートである。このファイルは、アップグレード前に必ず確認すべき最も重要な情報源の一つだ。

また、「/var/log/leapp/leapp-report.json」は、同じ情報がJSON形式で出力されたもので、プログラムによる解析に適している。

最後に、「/var/log/leapp/leapp-preupgrade.log」は、Leappが最後に実行された際の詳細なログが記録されるファイルだ。このログには、Leappが内部で行った処理や検出されたイベントに関する詳細な情報が含まれており、問題が発生した場合の原因特定に役立つ。注意点として、Leappは過去のログファイルを自動的に保持しないため、複数回Leapp操作を実行する予定がある場合は、重要なログを手動でバックアップしておくことを強く推奨する。

これらの手順とログファイルを理解し、適切に利用することで、システムエンジニアを目指す初心者は、OSのメジャーバージョンアップという複雑な作業を、より安全に、そして自信を持って実行できるようになるだろう。

【ITニュース解説】OCI "leapp upgrade" for OCI compute instances | いっしー@Webエンジニア