- この記事は、IBM Community Japanの主催する2026年ナレッジモール研究における、「WG ID: 2026-C-05 メインフレーム若手技術者の広場」の成果物です。
- 当記事の著作権はIBMに帰属します。詳細はこちらを参照ください。
はじめに
今回は、z/OSの最新技術として注目されている、Container技術について取り上げます。
ContainerはLinux環境で使用されることが一般的でしたが、z/OSでも使用されるようになっています。
z/OS Containerの使用により、よりz/OSと他システムとの連携を行いやすくなるといったメリットがあります。
Container(コンテナ)とは何か?
そもそも、コンテナとはメインフレーム特有の技術ではありません。
仮想化技術のコンテナは、OS上に仮想的に複数のコンテナ(分離・独立した領域)の箱を設け、そのなかで、アプリケーションを実行・動作させる仕組みです。コンテナにアプリケーションと実行環境などをひとまとめにすることで、柔軟で迅速なアプリケーション開発が可能です。
※1
このように記載されています。
OSの中で、他と隔離された小さな実行環境を作る技術という言い方ができるかと思います。
この小さな実行環境をまるっとテストしてそのまま本番移行、ということができます。
(開発環境だと動いたけど本番環境だと設定が違って動かない!というリスクが軽減されます。)

※2
z/OSにおけるコンテナとは?
ここまで一般的なサーバーやクラウド環境におけるコンテナ技術について軽く説明しました。z/OSにおけるコンテナ技術も大まかに考えると同じです。しかし、コンテナ自体がWindowsやLinuxのもとで構築されるため、そのままz/OS上にコンテナ技術を実現するということができません。
そこで、 IBM® z/OS® Container Extensions (zCX) を使用してコンテナの構築を可能にしています。
zCX は z/OS が Linux® Docker コンテナーに基づくアプリケーションをホストできるようにする実行環境を提供します。
zCX アドレス・スペースは 1 つの仮想サーバーを表します。仮想サーバーは z/OS 管理者からの操作タスクを必要としません。操作上の観点から見た場合、仮想サーバーは z/OS 環境に対して透過的です。
※3
このように、zCXはz/OS上にアドレススペースを展開し、その中で仮想サーバーとしてLinux OS環境を作り、コンテナ技術を用いた独立した実行環境を構築しています。
なぜ z/OS 上でコンテナを使用するのか?
z/OS 上でコンテナを利用する大きな理由の1つが、
既存のメインフレーム資産と、現代的なWeb/API技術を連携しやすくするためです。
現在でもメインフレームでは、
- IMS
- CICS
- Db2
- COBOL
などが重要な業務処理を担っています。
一方、スマートフォンアプリやWebサービスでは、
- HTTP
- REST API
- JSON
などを利用して通信することが一般的です。
そのため、
既存メインフレーム資産と現代的なWeb技術をつなぐ役割
が必要になります。
そこで利用されるのが、z/OS 上のコンテナ(APIサーバ)です。
APIサーバとしての利用イメージ
スマホ・Webアプリ
↓ HTTP/JSON
┌────────────────────------┐
│ z/OS上のコンテナ(APIサーバ) │
│────────────────────------│
│ ・REST API受付 │
│ ・JSON解析 │
│ ・認証 │
│ ・IMS向けデータ変換 │
└───────────────────------─┘
↓
IMS / CICS
↓
Db2 / IMS DB
このように、コンテナ側が「現代的なWeb技術」と「既存メインフレーム資産」の橋渡しを行っています。
コンテナを利用するメリット
① 既存資産を大きく変更しなくてよい
IMS/CICS本体はそのまま
API機能はコンテナ側
という構成を取ることができます。
既存の業務ロジックへの影響を抑えながら、外部システム連携を実現できます。
② Linux系技術を利用しやすい
コンテナ内では、
- Java
- Python
- Node.js
など、Linux系の技術やOSSを利用できます。
そのため、現代的なAPIサーバを構築しやすくなります。
③ 外部システム連携を行いやすい
コンテナ側で、
- REST API
- JSON変換
- OAuth認証
などを実装できます。
そのため、スマートフォンアプリやクラウドサービスとの連携を行いやすくなります。
④ 本番環境へ移行しやすい
コンテナは実行環境ごとパッケージ化されるため、
開発環境では動いたが
本番環境では動かない
というリスクを軽減できます。
開発時の実行環境を、そのまま本番環境へ持ち込めることもコンテナ技術の大きな特徴です。
「APIサーバは別Linuxサーバでもよいのでは?」
ここまで読むと、
APIサーバを作るだけなら、
別のLinuxサーバ上でもよいのでは?
と思うかもしれません。
実際、そのような構成も多く利用されています。
スマホ・Web
↓
Linuxサーバ(API)
↓
z/OS(IMS/CICS)
しかし、z/OS上にコンテナ(APIサーバ)を構築することで、いくつかのメリットがあります。
① z/OS資産の近くで動作できる
APIサーバがz/OS上で動作することで、
- ネットワーク通信削減
- レイテンシ低減
- セキュリティ向上
などのメリットがあります。
特に金融系システムでは、外部サーバとの通信経路を減らしたいケースも多くあります。
② システム構成を簡略化できる
別Linuxサーバを利用する場合、
- サーバ管理
- OS管理
- ネットワーク管理
- セキュリティ管理
など、管理対象が増えます。
z/OS上でコンテナを動作させることで、構成をシンプルにできる場合があります。
③ メインフレーム資産との連携を行いやすい
z/OS上で動作することで、
- IMS
- CICS
- Db2
などとの連携を近い場所で実施できます。
特に大量トランザクションを扱うシステムでは、このメリットが大きくなることがあります。
一方で、
APIサーバは外部Linux
業務処理はz/OS
という構成も現在では一般的です。
そのため、
必ずz/OS上にコンテナを置く必要がある
というわけではなく、
- 性能
- セキュリティ
- 運用方針
- システム構成
などを考慮して選択されます。
コンテナ技術から見るメインフレームの将来像
近年のシステム開発では、
- REST API
- クラウド
- マイクロサービス
- コンテナ技術
など、Linux/クラウドを前提とした技術が主流になっています。
一方で、金融系を中心にメインフレームは現在でも高い信頼性を持ち、大量トランザクション処理を担っています。
そのため現在は、
「メインフレームを置き換える」
というよりも、
「既存資産を活かしながら、
現代的な技術と連携する」
という方向へ進んでいます。
その橋渡し役として、z/OS上のコンテナ技術(zCX)が活用されています。
z/OS上でコンテナを動作させるメリットまとめ
z/OS上でコンテナを利用することで、
- REST API
- Java/PythonなどのLinux系技術
- OSS
- Webサービス
などを、既存メインフレーム資産の近くで動作させることができます。
特に、
IMS/CICS/Db2
+
コンテナ(API)
という構成を取ることで、
- 既存資産を大きく変更せず
- 外部システム連携を実現し
- 現代的な開発手法も取り入れる
ことが可能になります。
分散システムと比較した場合の強み
もちろん、
APIサーバ : Linux
業務処理 : z/OS
という分散構成も一般的です。
しかし、z/OS上でコンテナを動作させることで、
- ネットワーク通信削減
- レイテンシ低減
- システム構成簡略化
- セキュリティ向上
などのメリットがあります。
また、メインフレームが得意とする、
- 高可用性
- 大量トランザクション処理
- 強固なセキュリティ
- 長期安定運用
といった特性を活かしながら、現代的なAPI連携を実現できることも大きな特徴です。
まとめ
z/OS上のコンテナ技術は、
「メインフレーム」と「現代的なWeb/API技術」をつなぐための技術
と言えます。
既存資産を活かしながら新しい技術を取り込み、今後のシステム連携やモダナイズを支える重要な技術の1つとなっています。
参考文献
- https://www.ibm.com/docs/en/zos/2.5.0?topic=extensions-what-is-zos-container
- https://www.ibm.com/jp-ja/products/zos-connect
- https://www.ibm.com/support/z-content-solutions/container-extensions/
当資料に掲載の情報・図表に関する注釈
| 番号 | 対象 | 区分 | 出典・利用許諾状況など |
|---|---|---|---|
| *1 | 文章 | 引用 | 日本電気株式会社 利用許諾取得済み |
| *2 | 図 | 引用 | 日本電気株式会社 利用許諾取得済み |
| *3 | 文章 | 引用 | IBMが提供しているサイトより取得https://www.ibm.com/docs/en/zos/2.5.0?topic=zcx-zos-container-extensions-network-overview |