三菱重工業が エンジニアリングとものづくりのリーダーとしてコンテナ活用を加速させています。コンテナ採用の大きな狙いは、システム開発の標準化と共通部品を使った迅速で柔軟な開発基盤の構築です。
三菱重工では現在、新しい時代に向けてグループ全体を見据えたシステムの統廃合や共通化を進めています。その取り組みはレガシーシステムのマイグレーションから新規サービスの迅速な開発まで広範囲にわたっていますが、なかでも力を入れて取り組んだのがコンテナの採用と全社展開です。AI による自然言語処理サービスの開発をきっかけに、レガシーシステムのマイグレーションや各業務システムの共通部分のモジュール化、新規アプリ開発環境として活用すべく、Kubernetes を活用した基盤をオンプレミスに構築。その後、並行して行っているデータの統合マネジメント基盤構築プロジェクト「データ統合マネジメント基盤(D-MAP)」やローコード開発ツールの導入プロジェクトとも連携しながら、コンテナ基盤のクラウド化を推進しました。そこで採用されたのが、Azure Red Hat® OpenShift®(ARO)です。2022 年に基盤を構築し、すでに 60 を超える機能・サービスがコンテナアプリケーションとして稼働しています。長きにわたって日本の基幹産業を支え続けてきた三菱重工が、コンテナに代表される最新プラットフォームを強力に推進するのはなぜか。コンテナ採用の狙いやコンテナ基盤構築の課題、その課題を解消するために ARO が果たした役割などを担当者に聞きました。
エンジニアリングとものづくりのグローバルリーダーが取り組む共通コンテナ基盤
1884 年に創立し、エナジー、プラント・インフラ、物流・冷熱・ドライブシステム、航空・防衛・宇宙を事業領域に、単独売上高 1 兆 2334 億円、単独従業員数 2 万 2755 人(いずれも 2022 年 3 月 31 日現在)という規模で事業を展開する三菱重工業(MHI)。三菱重工グループとしては、連結受注高(IFRS)4 兆 677 億円、連結会社数 256 社(国内 68 社、海外 188 社)、連結従業員数 7 万 8486 人に達し、創立以来、エンジニアリングとものづくりのグローバルリーダーとして、社会課題に真摯に向き合い、人々の暮らしを支えてきました。
2021 年からの中期経営計画「2021事業計画」では「収益力の回復・強化」と「成⻑領域の開拓」を掲げ、コロナ影響からの回復と既存事業の伸⻑、課題対策・構造転換、固定費低減などに取り組んできました。なかでも成長領域の取り組みを進めるうえで重要視しているのがデジタルトランスフォーメーション(以下、DX)です。デジタルイノベーション本部の角谷 顕秀 氏は「かしこくつなぎ、お客様のビジネスを変革することがミッション」とし、こう説明します。
「三菱重工は防衛・原子力に代表される、複雑な機械や社会インフラを確実に稼働させる精緻なデジタル制御・高セキュリティ技術を中核とする強みを持ちます。深海から宇宙、極低温から超高温、低速回転から超高速回転まで幅広い環境で自由自在に機械を操る高い信頼性を誇っています。こうした過酷な領域では、実機内部の運用データや高度な解析・シミュレーション技術を絶えず更新し、継続的なデジタル制御の高度化・ AI 活用が不可欠です。さらに、当社は 500 以上の製品群を有し、開発から運用・保守に至る多様なデータ・ノウハウを蓄積しています。これらの強みを生かし、急速な社会のニーズに応えるため、製品群とデジタル技術を“かしこく・つなぐ”ことで新たな価値を創造・提供する。この変革をさらに加速するのがデジタルイノベーション本部です」(角谷 氏)。
DX に向けて社内のアプリケーション開発環境の高度化にも取り組んでいます。その 1 つがコンテナ技術やマイクロサービスアーキテクチャを採用した新しいアプリケーション開発基盤の構築です。三菱重工では、日本の基幹産業を支える重要システムを数多く手掛けています。DX を推進するためにはそうした既存システムとの連携や、新しいアプリケーションを迅速で高速に開発していくことが求められます。そうしたなかで注目したのがコンテナやマイクロサービスだったといいます。
BPI部 ソフトウェア1グループ2チーム チーム統括 木下 太 氏はこう話します。
「デジタルイノベーション本部 BPI部では、情報システム部門として社内 IT を担当しつつ、社内に IT サービスを提供するための基盤構築やアプリケーション開発、製品の基盤となる技術の開発も担っています。三菱重工では現在、新しい時代に向けてグループ全体を見据えたシステムの統廃合や共通化を進めています。その取り組みはレガシーシステムのマイグレーションから新規サービスの迅速な開発まで広範囲にわたっています。BPI部 部長である藤原 直之を筆頭に、新しいシステム開発基盤の構築を強力に推進しており、社内のさまざまなプロジェクトと連携しながら、DX の核とした技術の採用や社内展開を図っています。具体的には、バリューチェーンの DX を推進し、業務プロセスを改善するための標準システム基盤の構築、開発を効率化しながら属人性や技術継承の課題を解消するためのローコード開発ツールの展開、データ統合マネジメント基盤(D-MAP)の構築、機能を部品化して整備し、より開発効率を高める施策の展開などです。さまざまなシステムの統廃合と共通化を進めるなかで、取り組みをさらに効率的にするために、各業務システムの共通部分もモジュール化が必要でした。そこで注目したのがコンテナです」(木下 氏)。
三菱重工では、藤原部長の指揮のもと、当時社内では前例のなかったコンテナ環境としてコンテナオーケストレーターの Kubernetes を使った実行基盤を構築します。その後、全社活動方針を迅速に実現するために、さらなる効率化や運用の高度化を目指し、Kubernetes マネージドサービスの採用に至ります。そこで採用されたのが、Azure Red Hat OpenShift(以下、ARO)でした
AI とコンテナ基盤を活用した自然言語処理サービス群を Red Hat OpenShift に移行
デジタルイノベーション本部 BPI部がコンテナ基盤推進の主要な活動拠点としているのは、三菱重工の創業の地である長崎造船所です。デジタルイノベーション本部 BPI部は全国 8 部門 11 拠点にまたがって配置された全社横断組織で、約 200 名のエンジニアが在籍しています。長崎造船所がコンテナ基盤推進の活動拠点に選ばれたのは、既存システム運用にかかせない多くの IT インフラ基盤が集積し、開発者が数多く在籍しているためです。木下 氏は、三菱重工のシステム環境について、こう話します。
「既存システムは大きくコーポレート系と製造系に分かれます。コーポレート系は人事、経理、財務管理などで、製造系は製品業務を軸に作られていて、営業、企画、設計、製造、調達、アフターサービス、品質保証などです。現在は、生産現場の IT 化、IoT 化が進んでいて、製造現場と IT との連携や、お客様の設備やシステムとの連携、先進技術の活用なども増えています。そうしたなかで今後、コンテナやマイクロサービスへの期待も大きくなることが予想されました。そこでまず採用したのが Red Hat OpenShift でした」(木下 氏)。
Red Hat OpenShift(以下、OpenShift)は、コンテナオーケストレーターのデファクトスタンダードである Kubernetes をベースに、企業が利用する際において必須となる運用管理機能、セキュリティ機能、ネットワーク機能、開発者支援機能、サポートなどを追加・拡張したコンテナプラットフォームです。
OpenShift を使って最初に開発したのは、AI を活用した自然言語処理サービスです。自然言語処理サービスを既存のさまざまなシステムに部品として組み込むことで、既存システムや新規システムの使い勝手や機能性を向上させ、業務の効率化を図る狙いがありました。角谷 氏はこう話します。
「自然言語処理を行なうサービスにはさまざまな構成要素があります。それらを要素ごとに分解し組み合わせてアプリケーションを展開していくために、2019 年から仮想基盤上でマイクロサービスの取り組みをスタートさせ、その後、運用管理を効率化するため、2020 年に OpenShift を使ったコンテナ基盤に移行しました。マイクロサービスとコンテナを導入することで、機能を柔軟に開発できるようにはなりました。一方で、基盤を安定的に運用しながら、今後を見据えて全社展開していくためには課題が出てきました。具体的には、セキュリティ、ネットワーク、運用体制などです。それらに対応するために注目したのが ARO です」(角谷 氏)。
セキュリティやネットワーク、運用体制の課題解消に向けてフルマネージドサービスを活用
ARO は、マイクロソフトとレッドハットが共同で設計・運用、およびサポートを行う、フルマネージドの Red Hat OpenShift クラスターをオンデマンドで提供するサービスです。Red Hat OpenShift を Microsoft Azure(以下、Azure)上で稼働させることで、高い可用性と拡張性を持ち、運用管理負担の少ないコンテナ基盤サービスとして利用することができます。また、認証システムの Azure Active Directory(以下、Azure AD)や閉域網サービスの Azure ExpressRoute(以下、ExpressRoute)などと連携させることで、認証やセキュリティ、ネットワークの安定性や信頼性を強化することができます。
三菱重工では 2021 年に ARO のワークショップを行い採用を決めました。OpenShift や Azure 基盤の技術調査を担ったソフトウェア1グループ 上席主任 小川 誠 氏は、ARO を採用した理由をこう話します。
「エネルギーやプラント、防衛といった事業ドメインでは、高いセキュリティが求められます。クラウドの利用も原則禁止だったのですが、2020 年頃に Microsoft 365 や Microsoft Power Apps を採用したことがきっかけとなり、クラウド化の流れができました。さらに、標準システムの展開活動や共通部品の展開活動のなかで、クラウドの有用性を評価してきました。具体的には、アプリ実行基盤やデータ統合マネジメント基盤(D-MAP)、アプリ開発基盤を全社で統合して整備するという大方針のもとに、基幹システムの 1 つである SAP のクラウド移行や、全社的なデータ統合マネジメント基盤(D-MAP)の構築などです。これらの取り組みで活用したのが Azure です。アプリ開発の共通基盤として ARO を採用したのも、これまでの全社的な活動を支えられることを評価してのことです。技術面で採用の決め手になったのは、リソースの調達が柔軟にできることや基盤のバージョンアップ対応が容易なことに加え、Azure AD を活用したユーザーアカウント管理やアプリケーションの認証管理が可能なこと、API を使って社内外のさまざまなサービスをセキュアなネットワーク環境のなかで連携しやすいことなどでした」(小川 氏)。
運用体制の面でもメリットがあったといいます。三菱重工のシステム運用を担う NTTデータMHIシステムズの斧口 祐介 氏はこう話します。
「自然言語処理サービスの開発では、当初から開発と運用を分担する体制で進めました。ただ、Kubernetes や OpenShift はアプリ側にインフラ的な要素が入り込んできます。アプリ側はインフラの知識を持つ必要がありますし、インフラ側は OpenShift という土台への理解が欠かせません。利用を進めるうちに、そうした両者の間にあるギャップを誰がどう埋めるかが課題になっていきました。例えば、ワーカーノードを必要に応じて追加・拡張したり、コンテナ環境で利用できるストレージ(永続ボリューム)の払い出しや割り当てを実施したりしたいといった場合も、アプリ側と基盤運用側とでスムーズな連携がとれず、対応に時間がかかることがありました。それぞれの役割を明確化し、本来の役割に集中できるようにするためには、基盤のメンテナンスなどをマネージドサービスとして利用し、効率化することがポイントでした。フルマネージドサービスであり、マイクロソフトによる手厚いサポートも受けられる ARO は、新しい開発運用体制を確立するうえで欠かせないものだったのです」(斧口 氏)。
OpenShift から Azure リソースを柔軟に制御し生産性向上
ARO を採用したことで、マイクロサービスとコンテナを活用したアプリケーション開発は一気に加速します。自然言語処理サービスのリリースと素早い改善を実施する一方、採用から 1 年ほどで、共通利用する部品も含めて約 60 の機能やサービスを開発してきました。
「社内システムで共通に利用する機能を部品化して API で呼び出せるようにしています。例えば、それぞれの業務システムごとに共通するイベントごとの ETL / EAI ツールとの連携、工事プロジェクト情報連携、従業員情報取得などです。これら共通部品をライブラリとして利用することで、アプリケーション開発を高速化できます。また、大規模なシステムのマイグレーションで特定の機能を切り出したり、新規アプリ開発をコンテナ上で行うといった利用も始まっています。どういった機能やアプリをコンテナ化していくかについては、ガイドラインやフローチャートを作って判断できるようにしています。現在は、IaaS を軸にした仮想サーバサービス『MHI Azureサービス』に加え、コンテナ共通基盤『MHI Azureコンテナサービス(ARO)』の 2 つを提供している状態です」(角谷 氏)。
ARO を採用したことによる具体的なメリットは、大きく 3 つに整理することができます。1 つめは、運用管理性やメンテナンス性の向上です。
「Kubernetes はリリースサイクルが速いため、OpenShift を利用していてもバージョンアップのたびにアップグレードパスを調べ、バージョンアップ作業を行なっていく必要があります。OpenShift は、Kubernetes そのものを管理するよりは対応がはるかに容易になるとはいえ、開発と運用チームが分かれていると、申請などのやりとりが大きな手間になります。それに対し、ARO 導入後は、マネージドサービスとして基盤のメンテナンスなどを ARO 側にまかせることができます。アプリ側からインフラ基盤を簡単に管理でき、定義ファイルの書き換えだけで対応できることも増え、作業工程を大幅に削減できるようになりました。2 週間かかっていた申請承認作業が 10 分で済むようになったケースもあります」(小川 氏)。
「ストレージの払い出しや割り当ても簡単になり、ノードのオートスケールもできるようになりました。保守という観点からは、これまでは、すでに作られていたものを作り直しすることも多かったのですが、基盤として標準化されたことで、どこに何があるか分かるようになり、保守作業のオーバーヘッドがなくなったことが大きいです。基盤のバージョンアップに伴うバックアップ作業も拍子抜けするくらい簡単になりました」(斧口 氏)。
米マイクロソフトに所属するソリューションスペシャリストであり、特に優れた知見と技術を有する「黒帯(Global Black Belt)」チームに所属する畑﨑 恵介 氏はこう解説します。
「Azure Red Hat OpenShift(ARO)は、Azure のリソースを OpenShift を操作する感覚ですぐに作ったり消したりできます。たとえば、ストレージのダイナミックプロビジョニング機能を利用することで、アプリ開発者が必要なときに必要なストレージを払い出すなど、うまく利用することでアプリ開発の生産性を大きく向上できます。また、Azure の管理者を立てることなく、これまでの OpenShift のコンソールからノードの拡張などの操作ができるようになります」(畑﨑 氏)。
Azure AD と ARO を連携させ認証の仕組みを構築、アジャイル開発やクラウドネイティブを推進
2 つめは、認証を含めたネットワークとセキュリティの高度化です。具体的な機能としては、Azure ADとExpressRoute、Azure Firewallなどを使って閉域ネットワークでゼロトラストの考え方に沿って実装されています。
「防衛などのセンシティブな情報を扱う分野にも対応していくために、これまでは境界防御のアプローチでネットワークやセキュリティを構築してきました。OpenShift もプライベートな環境で利用してきましたが、コンテナ環境をクラウド移行するにあたり、ネットワークセキュリティや認証の仕組みを新たに構築する必要がありました。そこで役立ったのが、プライベート環境の構築や、ARO と Azure AD の親和性の高さ、マイクロソフトによる技術的な手厚いサポート体制でした」(木下 氏)。
「コンテナは Linux® ベースということもあり、MHI ドメインにコンテナアプリケーションを参加させるのがそもそも困難でした。従前の OpenShift 環境では、Active Directory(AD)から認証情報をとってくる仕組みを作るのにも苦労していて、その安全な環境を維持することも大きな手間でした。ARO になってからは、Azure AD と連携させることで、認証情報の取得や安全な環境の維持が容易になりました」(斧口 氏)。
ネットワークとセキュリティの取り組みはマイクロソフトにとっても貴重な経験だったといいます。畑﨑 氏は、こう解説します。
「ネットワークについては、ExpressRoute、Azure Virtual Network、Azure Firewall などを使って閉域網で安全にコンテナを利用できるプライベートクラスターを構築しています。ARO と Azure AD の連携では、Azure AD とアプリケーションプロキシ機能を用いてアプリケーションの認証・認可を適切に行う仕組みを作っています。実は、当時リリースしていた ARO のネットワーク面で仕様が不明な部分もありました。それについて三菱重工様からご指摘を受け、仕様を明確にできた経緯があります。お客様の意見を米国の開発チームに直接届け、反映されたという点で、われわれにとってもお客様と一緒に成長できる貴重な機会となりました」(畑﨑 氏)。
3 つめは、アジャイル開発やクラウドネイティブ技術の理解が浸透し、開発の標準化が進んだことです。
「マイクロサービスやコンテナは BPI部が率先して推進してきたものですが、ARO を採用したことで、全社的にコンテナを利用するための共通基盤構築につながりました。ガイドラインの策定や開発手順の統一化などを進め、今後のアプリケーション開発の取り組みをより加速するつもりです」(角谷 氏)。
Power Platform との連携や CI / CD 環境の取り組みを加速、日本の IT 技術の底上げに貢献したい
加えて、ARO の採用によって、OpenShiftのメリットがさらに引き出された側面もあるといいます。具体的には、リードタイムのさらなる短縮、運用管理の自動化、コストの低減、アプリケーション開発に集中できる環境の構築などです。
マイクロサービスやコンテナの取り組みを進めるにあたり、畑﨑 氏ら「黒帯」による技術サポートは大きな助けになったといいます。
「毎週、定例会を開いていたのですが、畑﨑さんに対する質問会のようでしたね。分からないところや悩んでいるところを質問すると、その場で適切な回答を返してくれます。そこで問題を解決し、翌週にまた新たな課題を質問して回答を得るといった繰り返しで、取り組みを着実に進めていくことができました」(小川 氏)。
畑﨑 氏も「質問のたびにどんどん内容が高度で具体的になっていったことが印象的でした。単に技術を理解するというだけでなく、自分たちでコンテナやマイクロサービスを使い倒すんだという強い意気込みを感じました。支援させていただく甲斐がある、ベンダー冥利に尽きるプロジェクトでした」と振り返ります。
今後の展開について、木下 氏はこう話します。
「防衛や宇宙などハイセキュリティなアプリケーション開発が求められる部門の開発者は、まだコンテナやクラウドの恩恵を受けていません。DX やクラウドの技術をどう提供していくかは今後の課題であり、BPI部のミッションでもあります。私のチームでは、Microsoft Power Platform を活用しながら、現場レベルでさまざまな作業を自動化、省力化していく取り組みを始めているところです」(木下 氏)。
全社的な活用が進むとクラスター数も増えていきます。今後、ツールとしては、クラスターで利用するコンテナイメージを統合管理するためのイメージレジストリや分散トレーシングなどの技術の展開を進めていくといいます。また、DevOps や CI / CD の推進、GitHub 導入のための検証も進めようとしています。さらに、Azure を使ったデータ統合マネジメント基盤(D-MAP)構築プロジェクトとの連携もスタートしています。
角谷 氏は、今後の取り組みについてこう展望します。
「コンテナ基盤によって、三菱重工が掲げる『かしこく・つなぐ』を実践しやすくし、ビジネスモデルの変革や DX に貢献していきます。そのためには仲間も必要です。コンテナ基盤を提供したことで、社内外から『コンテナってこんなに使えるのか』といった声も届くようになりました。まずは、業界に貢献するフロントリーダーになること、そのうえで、さまざまな業界と知見や情報を共有して、仲間と一緒に日本の IT 技術の底上げに貢献していきたいと思っています」(角谷 氏)。
デジタルイノベーション本部は「かしこくつなぐ」を実現するために、システム標準化や共通部品化を軸に、将来を見据えた取り組みを進めるなかでコンテナに出会いました。新しい技術の採用には反発や抵抗を招くことが少なくありません。そんななかでも取り組みを強力に推進できたのは、エンジニアリングとものづくりのグローバルリーダーとしての覚悟と将来への思いがあったからです。三菱重工のコンテナ活用はいよいよ本格化します。日本の IT 技術力を世界に示す取り組みをマイクロソフトは今後も支援していきます。
*Red Hat、Red Hat Enterprise Linux、Red Hat logo および OpenShift は、米国およびその他の国における Red Hat, Inc.およびその子会社の商標または登録商標です。Linux® は、米国およびその他の国における Linus Torvalds の登録商標です。
[PR]提供:日本マイクロソフト