IBMとRed Hatが推進するレガシーアプリケーションをKubernetesに移行するためのツールKonveyorを紹介

2022年3月25日(金)
松下 康之 - Yasuyuki Matsushita
レガシーアプリケーションをクラウドネイティブなシステムに移行させるオープンソースソフトウェア、Konveyorを紹介する。

Konveyorの概要

ここからKonveyorを使って、それぞれのモジュールをOpenShiftに移行していく具体的な操作を含めて解説するフェーズに移るのが動画の流れだ。ここではモダナイズするためのプロセスの概要と結論として提示されたスライドを紹介して、Konveyorの全体像を解説したい。

3つのプラットフォームに展開されたアプリを移行させるプロセスを紹介

3つのプラットフォームに展開されたアプリを移行させるプロセスを紹介

このプロセスは、Assess、Analyze、Refactor、Rehost、Replatformの5つから構成されている。アプリケーションがどのように実行されているのか、ソースコードの中身はどうなっているのかなどを確認した上で、Kubernetesに移行させるツールを使うという流れだ。これらのツールの総称がKonveyorと呼ばれるオープンソースソフトウェアである。

45分のプレゼンテーションの最後に紹介されたKonveyorの概要

45分のプレゼンテーションの最後に紹介されたKonveyorの概要

プレゼンテーションの最後に紹介されたスライドにKonveyorの概要が解説されている。移行のためのプロセス、Assess&Analyze(評価と解析)はTackle、プラットフォームを変える役割はMove2Kube、そしてホストを変えるのはCraneとForkliftというツールがそれぞれ担当することになる。そしてまだ開発が終っていない機能として、移行前後の違いを確認するためのPelorusというツールが担当することが説明されている。

AssessとAnalyzeを担当するTackleを使って仮想マシン上のアプリケーションを調査するデモでは、仮想マシンの属性情報や依存関係などをベースに、コンテナ化のためには何を変更する必要があるのかを指摘できることを解説。

移行先が何かを指定することも可能。ここではコンテナ、Linux、OpenJDKを選択

移行先が何かを指定することも可能。ここではコンテナ、Linux、OpenJDKを選択

また単に変更点を提示するだけでは変更のためのコストが必要となってしまうことから、VS Codeのプラグインを提供することで即座に変更を加えられることもデモで紹介している。

VS Codeを使ってコードの修正まで一気に行える

VS Codeを使ってコードの修正まで一気に行える

すでにCloud Foundryで稼働しているアプリケーションについては、Move2Kubeを使って移行する機能を紹介。

Move2KubeでCloud Foundryからの移行を実行

Move2KubeでCloud Foundryからの移行を実行

Forklift

仮想マシンのアプリケーションが使っていたOracleデータベースも、Forkliftと呼ばれるツールを使って移行できることを解説した。

OracleデータベースはForkliftを使って移行

OracleデータベースはForkliftを使って移行

Forkliftは、ストレージだけではなくネットワーク設定についても移行可能であることも解説された。

ネットワーク設定も移行可能

ネットワーク設定も移行可能

Forkliftが、移行元としてVMwareの仮想マシンだけではなくOpenStackの環境にも対応していることは紹介されなかったが、すでにOpenStackベースで仮想マシンをオーケストレーションしているシステムでは参考になる内容だ。

参考:Konveyor Forklift

Crane

Rehostという部分では、Craneというツールが紹介された。これはすでにKubernetes上に存在するアプリケーションを移行するためのツールだが、今回のセッションでは最終的にOpenShiftに寄せるという意味で単独で存在しているアプリケーションをGitOpsで自動化されている環境に移行させるために利用されている。

Craneを使って既存のKubernetesアプリケーションを移行することも可能

Craneを使って既存のKubernetesアプリケーションを移行することも可能

単に移行させるだけではなく、最終的にArgoCDで運用されているGitOps環境に移行させることによってコンテナ化とCI/CDによる自動化が達成されたことになる。

すべてがKubernetesの上でGitOps化されているシステム

すべてがKubernetesの上でGitOps化されているシステム

今回は仮想の3層アプリケーションをKubernetesに移行させるための具体的な操作を、ツールのデモを交えて解説した内容となった。実際にはAssessとAnalyzeに関しては英語の記述が非常に多いツールであることから、実際に自社の調査のために利用する場合には、かなりの英語力が必要となるだろう。レッドハット株式会社に問い合わせたところ、2022年1月の段階ではツールの存在は認識しているものの、サポートなどを担当するエンジニアはいないということから、自力で利用する必要があるのが現状だ。

Javaベースでレガシーなアプリケーションを稼働させている企業などにとって、Konveyorは魅力的なオープンソースソフトウェアだろう。今後のツール自体の進化、コミュニティの拡大、そしてレッドハットのサポート対応にも注目していきたい。

公式サイト:Migrate to Kubernetes | Konveyor Community

参考:IBMとRed HatによるKonveyorの発表

著者
松下 康之 - Yasuyuki Matsushita
フリーランスライター&マーケティングスペシャリスト。DEC、マイクロソフト、アドビ、レノボなどでのマーケティング、ビジネス誌の編集委員などを経てICT関連のトピックを追うライターに。オープンソースとセキュリティが最近の興味の中心。

連載バックナンバー

OSSイベント

Open Source Summit Japan 2022開催。車載からストレージ、Kubernetesまで幅広いトピックをカバー

2023/4/26
2022年12月、横浜でOpen Source Summit Japanが開催された。リアルでは約500名が参加し、車載システムからSBoM、AIまで広範なセッションが行われた。
開発言語イベント

WASM Meetup@ByteDanceで垣間見たWebAssemblyの静かな広がり

2023/4/11
ByteDanceのシリコンバレーオフィスで開催されたWebAssemblyのミートアップを紹介。

Think ITメルマガ会員登録受付中

Think ITでは、技術情報が詰まったメールマガジン「Think IT Weekly」の配信サービスを提供しています。メルマガ会員登録を済ませれば、メルマガだけでなく、さまざまな限定特典を入手できるようになります。

Think ITメルマガ会員のサービス内容を見る

他にもこの記事が読まれています