IBM iについては多くの情報があるため、これから始めるユーザーはやや圧倒されてしまうかもしれません。今回は、IBM iについて学んでみたいと思いつつも、どこから始めたらよいか分からない人のために、IBM iの概要を紹介します。
IBM iの戦略とロードマップについて
Power Systems向けに統合されたIBM i オペレーティング環境の戦略とロードマップについては、
こちらをご覧ください(日本語)。
IBM i の始まりと歴史
IBM i オペレーティング・システム(以下IBM i)は、統合の度合いとオペレーティング・システムのアーキテクチャーにおいて、IT製品の分野で唯一無二の存在です。
当時から先進的だったSystem/38やAS/400アーキテクチャーから進化を遂げたIBM i は、低いトータルコストで多大な価値を提供しています。ミッションクリティカルなソフトウェアの分野で、長年にわたって多大な投資を継続しながら、ITプロフェッショナルに対してビジネス・ソリューションの実装と実行のためのプラットフォームを提供しているのです。
IBM i のコア・アーキテクチャー群はもともとSystem/38のために作られました。S/38アーキテクチャーには下記のものが含まれます:
- 固有のファイルシステムとしてのリレーショナル・データベース
- ストレージを管理する手間を削減する単一レベル記憶
- 統合と信頼性を確実にする、オブジェクト・ベースのオペレーティング・システム
- コンパイルされたプログラムを一つのリリースと一つのプロセッサーから再コンパイルなしで別の環境に移せる、インタフェース・テクノロジー
- マシン上で複数のワークロードが走ることを想定した、アイソレーションとロード・バランシング双方の能力
S/38の強固なアーキテクチャーは、姉妹製品であるSystem/36の管理と利用のしやすさが引き継がれ、1988年にAS/400として登場。その後、さらに多くの機能がオペレーティング・システムに加えられ、iシリーズ、のちにSystem iとなりました。
そして、2007年にAS/400ラインのハードウェアとI/OプラットフォームとAIXベースのRS/6000が統合、IBM Power Systemsとして生まれ変わりました。2008年初めに、そのオペレーティング・システムは現在のIBM i という名称となり、現在に至ります。
IBM i オペレーティング・システムの最新バージョンはIBM i 7.3です。(編集部注:2016年11月現在)
「統合」が鍵 – 包括的なミドルウェア
ユーザー企業の視点からIBM i の特徴を定義するならば、統合だといえるでしょう。事実、IBM iの”i”は”統合(integration)”を表しています。
IBM iの統合には二つの重要な側面があります:それは、ビジネス・アプリケーションに欠かせないミドルウェア・コンポーネント全てが、相互にフィットしていること。さらにIBM iのアーキテクチャーに従うようにも設計されていることです。この統合は、ビルトインされた多くのシステムとデータ・マネジメントの自動化機能と相まって、顧客が自社のシステムにばかりいたずらに時間を費やすのではなく、本来のビジネスの推進に集中できる環境を提供します。
IBM i には
多彩なソフトウェア機能が搭載されています。これらの機能は他のオペレーティング・システム上では追加費用を支払ったり、別途ロードして管理したりしなければならないもので、以下が含まれます:
IBM iにおけるDB2 for iデータベースはオペレーティング・システムの一部として提供されています。SQL準拠のリレーショナル・データベースで、SQLの標準機能をサポートしています。DB2 for iは単にそのプラットフォーム上でファイルシステムを利用するだけでなく、ファイルシステムの一部として、協調的なパフォーマンス・アルゴリズムとより簡単なチューニングを可能にします。また、DB2 for iはその自動化も洗練されており、データベースのマネジメントと管理に注力する労力やスタッフの数を最小限に抑えられます。事実、IBM iを使用している顧客の中では、まったくデータベース管理者を置かないことも珍しくありません。
IBM iは、一度に複数のワークロードを走らせることができるように設計されています。複数ワークロードの間でデータを簡単かつセキュアに分離させるIBM i のセキュリティー機能に加え、サブシステムと呼ばれる環境ごとにユーザーは様々なワークロードを重要度に応じてバランスをとれるようにし、多くのシステムリソースを機能に応じて適切に配分する事ができます。これは追加の仮想化や管理ソフトを購入しなくても実行できます。
IBM i はオープンソースのApache Webサーバーを提供し、それをIBM iのセキュリティーとファイルシステム・モデルに統合してきました。IBM iはApacheをアップデートし続けており、ブラウザー・ベースのアプリケーション内部で、クレジットカードやデビッドカードを使うためのカード機能といった、ビジネスに直結する拡張機能のサポートも含まれています。
オープンソースのTomcatに似た統合Webアプリケーション・サーバーが、Java5とJava6のアプリケーションの実行をサポートし、従来のHTMLベースのアプリケーション機能を大きく越えた目覚ましい機能を備えています。
CLやRPGといった伝統的な言語から、Java、C/C++、そしてWebプログラミングに最も多く使わる言語・PHPに至るまで、IBM i はこれらの言語を基本機能としてサポートしており、リリース毎に機能拡張もされています。この言語サポートは、IBM RationalとZend 社によって作成されたソフトウェア開発ツールとも統合されています。
直前の状態に確実にロールバックできるアプリケーションを構築できる機能は、DB2 for iでサポートされていますが、ジャーナル機能もIBM iにおいて統合され継承されています。これによって、他のオペレーティング環境よりもシンプルかつ完璧にアプリケーションの高い可用性とデータの整合性を担保できます。
IBM Systems Director Navigatorは、ユーザー、オペレーター、または管理者がIBM iパーティション上で管理作業を行うことができるブラウザー・ベースの管理ツールです。このツールもまた追加料金なしで利用でき、ユーザーがシステムのパフォーマンスやリソースを追跡、モニタリング、予測できるPerformance Data Investigatorのような、非常にパワフルな機能も含まれます。
- 統合プラットフォームとしてのIBM iが提供するその他の機能には、以下のようなものがあります:
・セキュリティー
・暗号化機能
・統合Webサービス for i
・電子証明書機能
・IBM Tivoliディレクターサーバーの統合バージョン
・IBM PASE for i – AIXアプリケーションを変更なしにIBM i内で動かすための環境
・X86システムへの統合された接続と管理
・ネットワーキングとネットワーク管理
シンプルさ、安定性、セキュリティーのためのアーキテクチャー
IBM iのもう一つの差別化ポイントが、オペレーティング・システムの基本的なアーキテクチャーが提供する単純性(シンプルさ)と安定性とセキュリティー機能です。これらは追加された機能ではなく、IBM iのオペレーティング・システムそのものの特徴です。
上記で述べたように、IBM iのリレーショナル・データベースはオペレーティング・システムに統合されたコンポーネントであり、IBM iとその前身のOSの独自の機能として、統合されたストレージ管理機能のもとに提供されてきました。このストレージ管理方式は、IBM iによって管理される、全てのストレージに提供される単一レベル記憶のアーキテクチャーに基づいています。それはディスクのストレージを、システムメモリーを取り巻くひとつの巨大なメモリーように扱うというものです。このアーキテクチャーではオペレーティング・システムが与えられたデータをどこに格納するかを決定するので、ユーザーがデータ配置について頭を悩ませる必要がなくなります。これがストレージおよびストレージ内に含まれるデータベース・オブジェクトの管理を、大変シンプルなものにしているのです。
IBM i のアーキテクチャーとしての特性が、長年にわたるシステムの安定性を実現させています。まず、IBM i上でコンパイルされるアプリケーションは、Technology Independent Machine Interface (TIMI)として定義されるワンセットの中間命令コードとしてコンパイルされます。これにより、IBM iが基本となるハードウェア、ファームウェア、仮想化機能を変更しても、ユーザーによって書かれたアプリケーションは書き直したり、変更したり、再コンパイルすることが不要となります。この一連の前方互換性による利便性は非常に大きく、何年にもわたって開発されコンパイルされてきたソフトウェアの動作を、最新世代のIBM i上で実行することも可能にしてきました。
IBM iは、ユーザー・アプリケーションのアドレス・スペースも、オペレーティング・システムと構造的に切り離しています。これによって、ひどい動きをするプログラムや、または悪意を持って書かれたソフトウェアがオペレーティング・システム上に侵入することを不可能としています。これもIBM i が何か月も再起動不要で、連続して稼働し続ける理由の一つとなっています。
IBM iと前身のOSは、オブジェクト・ベースのアーキテクチャーを持っています。システム上のそれぞれのエンティティはオブジェクトとして定義され、オブジェクト毎にその上で実行される一連の命令群が定義されています。オブジェクトとオブジェクトをつなぐコネクションはさまざまな操作を実行が、例えば「編集」操作が定義されていないオブジェクトは、編集することができません;また、別の種類のオブジェクトにリネームすることもできません。もしそのオブジェクトが「編集」操作を認められていたら(ほとんどのオブジェクトにとっては「変更」となりますが)、それは編集する権限を持ったユーザーによってのみ編集できる定義された属性群だけを持っていることになります。
オブジェクトはライブラリー・リスト・オブジェクトを使うことによって他のユーザーから簡単に「隠す」ことが可能で、全てのオブジェクトと関連したオブジェクト・ベースのセキュリティーによって保護されます。そしてシステム上で同じような役割を持つユーザー全てを、セキュリティーの役割に基づいて、お互いグループ化することができます。繰り返しになりますが、それもシステムの基礎となるアーキテクチャーの一部分なのです。
結論
IBM iオペレーティング・システムはJava™, PHP, ウェブサービスなどといったオープンなプログラミング手法をサポートしていますが、基本となるアーキテクチャーは統合、安定性、単純性、そしてセキュリティーにおいて一定のレベルを保ち、それが重要な差別化要因になっています。これらの側面がユーザーに対して特に秀でたビジネス・バリューを与えているのです。
本記事は米国IBMサイト内の記事を日本語化するとともに、一部編集したものになります。原文をご覧になりたい方は下記よりアクセスしてください。
原文タイトル:
Getting started with IBM i
原文著者: John W. Eberhard