はじめに
IBM Log Analysis サービスが2025年3月30日をもって廃止され、サポートされなくなります。(参考1) 後継サービスであるIBM Cloud Logへの移行を可能にするマイグレーション・ツールを使ってみました。
移行シナリオ
今回は図のように、シンプルな移行シナリオをテストしました。
- 東京リージョンでプラットフォーム・ログが有効化されたIBM Log AnalysisサービスのインスタンスをIBM Cloud Logsへ移行
- マイグレーション・ツール実行時に、新規のIBM Cloud Logsインスタンスを作成
- マイグレーション・ツールのオプション指定により、既存のIBM Log Analysisサービスのインスタンスと新規作成のIBM Cloud Logsインスタンス両方にプラットフォーム・ログを送信するよう構成
- IBM Code Engine上でジョブを起動し、出力されるプラットフォーム・ログが両方のインスタンスに出力されることを確認
図1. 移行シナリオ概要
移行の実施
この記事では、移行の前提条件を満たしているものとして手順が書かれています。
- リソース・グループ、IBM Log Analysis、IBM Cloud Logs 等への必要な権限がユーザーに付与されていること
- マイグレーション・ツールがユーザーのローカルPC等にインストールされ、CLIでログインしていること
マイグレーション手順に沿って、今回の移行シナリオに応じたステップを実行します。
ステップ1: マイグレーション・ツールのコマンドをテスト実行
% ibmcloud logging migrate create-resources --scope instance --instance-crn (移行対象のIBM Log AnalysisサービスのCRN) --platform --ingestion-key (移行対象のIBM Log AnalysisのIngestion Key) --instance-name (新規作成するIBM Cloud Logsインスタンスに付ける名前) --instance-resource-group-id (新規作成するIBM Cloud Logsインスタンスをデプロイするリソース・グループのID) --terraform
Plugin Version : 0.1.22
OK
The migration process has completed successfully. You can find the information in the (現在のディレクトリ)/migration-test directory.
- コマンド・オプション
--platform
を使うことで、既存のIBM Log Analysisインスタンスと新規作成のIBM Cloud Logsインスタンス両方にプラットフォーム・ログを送信するよう構成します。 - Ingestion Keyは、IBM Log Analysisインスタンスのダッシュボード > Settings > Organization > API Keys から参照や設定可能です。
- コマンドを実行すると、migration-testというディレクトリの下にTerraform用のファイルが出力されます。ファイルの出力を確認してから、実際に適用します。
ステップ2: マイグレーション・ツールのコマンド実行と適用
% ibmcloud logging migrate create-resources --scope instance --instance-crn (移行対象のIBM Log AnalysisサービスのCRN) --platform --ingestion-key (移行対象のIBM Log Analysisのingestion key) --instance-name (新規作成するIBM Cloud Logsインスタンスに付ける名前) --instance-resource-group-id (新規作成するIBM Cloud Logsインスタンスをデプロイするリソース・グループのID) --api
Plugin Version : 0.1.22
OK
The migration process has completed successfully. You can find the information in the (現在のディレクトリ)/migration-test directory.
- コマンド・オプション
--api
を使うことで、ステップ1のようにTerraform用のファイルが出力されるだけでなく、IBM Cloud Logsインスタンスが作成されるなど設定が適用されます。 - コマンド結果のコンソール出力は、ステップ1と同様になります。
ステップ3: マイグレーション結果の確認
IBM Cloud Log インスタンスが作成されたことを確認します。
既存のIBM Log Analysisインスタンスと新規に作成されたIBM Cloud Logsインスタンス両方にプラットフォーム・ログが出力されていることを確認します。(以下の図で詳細はマスクされています)
図4. 既存のLog Analysisインスタンスへ出力されたメッセージ
図5. 新規作成されたCloud Logsインスタンスへ出力されたメッセージ
両方のインスタンスにプラットフォーム・ログが出力されたことを確認できました。既存のIBM Log Analysisインスタンスで、マイグレーション・ツール実行前と実行後に同じアプリケーションのプラットフォーム・ログのフォーマットが以下のように変わっていました。(詳細はマスクされています) 今回は、このようなフォーマット相違の原因を突き詰める調査は行いませんでした。
Oct 9 10:00:00 Code Engine app1-x5cqd info Successfully created jobRun.
Oct 10 10:00:01 loc-0a457355-b01c-4ea7-8f47-ed5342c122e3-0 app1-w564a info Successfully created jobRun.
既存のIBM Log Analysisインスタンスで、移行前と同じログを見つけるにはパターンを変えた検索の必要な場合が出てきます。
まとめ
IBM Log Analysis から IBM Cloud Logs へのマイグレーション・ツールを使ってみて、ツール自体は問題なく動作しました。ただし、既存のIBM Log Analysisインスタンスでログのフォーマットが変わっていたことは、ログ検索などで留意点になると考えられます。
参考資料
- IBM Log Analysis または IBM Cloud Activity Tracker から IBM Cloud Logs へのマイグレーション
http://ibm.biz/loganalysisdeprecation - スタンドアロンIBM Cloud CLI のインストール
https://cloud.ibm.com/docs/cli?topic=cli-install-ibmcloud-cli - マイグレーション・ツールのインストール
https://cloud.ibm.com/docs/cloud-logs?topic=cloud-logs-migration-tool#migration-installing - マイグレーション手順
https://cloud.ibm.com/docs/cloud-logs?topic=cloud-logs-migration-platform-logs#la-migration-steps