Amazon EC2でDB2を試そう

Amazonが提供するクラウド・サービスでDB2開発環境を利用する

この記事ではAmazonが提供するクラウド・サービス、Amazon Elastic Compute Cloud(Amazon EC2)で DB2を利用するためのセットアップ方法をご紹介しています。Amazon EC2はハードウェアを持たない環境において DB2を使ったアプリケーションを開発するのに非常に適した環境ですので、ぜひお試しください。

中林 紀彦, ソフトウェア・エバンジェリスト, IBM

中林 紀彦の肖像データベース関連製品のテクニカル・サポートを経て、2006年よりDB2の新機能であるXMLデータベースのスペシャリストとして、Web 2.0サービスを行うお客様などに対して、XMLデータベースの素晴らしさを説く日々を送る。2007年より、ソフトウェア・エバンジェリストとして、エンタープライズ・マッシュアップがビジネス・イノベーションの鍵となるという事を、伝え続ける。



2009年 10月 05日

事前準備

まずAmazonにアカウント登録をしEC2が利用できるようにしておきます。EC2が利用できるようになれば、Webベースの 「AWS Management Console」にアクセスできるようになり、 この記事ではこのコンソールを使ってDB2環境の管理を行います。またリモートでLinuxを操作するために、SSHターミナル(PuTTYなど)や VNCクライアントを手元のPCに準備しておきます。

図1. AWS Management Console
図1. AWS Management Console

リモート接続のための準備

DB2環境をセットアップする前に、SSH接続のためのKey Pairを準備しておきます。「Key Pairs」メニューから「Create Key Pair」ボタンをクリックし 新しいキーを作成します。

図2. Key Pairの作成
図2. Key Pairの作成

「Key Pair Name」を尋ねられるので任意の名前をつけて作成し、作成されたキー・ファイルを保存しておきます。今回の場合には"db2"という 名前をつけて、"db2.pem"ファイルというファイル名のキーをダウンロードします。

図3. Key Pairの保存
図3. Key Pairの保存

EC2インスタンスの起動

それでは実際にEC2インスタンスを起動してみましょう。ここでインスタンスという言葉を使っていますが、これはAmazon EC2上の マシン・イメージのインスタンスの事を指しているものですので、DB2のインスタンスとは異なります。「AMIs」メニューで"db2"を キーワードに絞り込むと、DB2がインストールされているマシン・イメージ(Amazon Machine Image)を見つけることができます。 今回は最新のDB2 9.7のイメージを利用することにします。AMI IDが"ami-ac1cfcc5"となっている イメージを選択し、 「Launch」ボタンでイメージを起動します。このイメージにはDB2 Express 9.7が32bitのSUSE Linux Enterpriseサーバ上に インストールされています。これ以外には64bit(X86_64)アーキテクチャのためのイメージも用意されています。

図4. Amazon Machine Imageの選択
図4. Amazon Machine Imageの選択

"Launch Instance Wizard"が起動しますので、必要な情報を入力していきます。初めての起動の際にはセキュリティを管理 するためのグループ (Security Group)を作成する必要がありますので、図のような画面になります。ここでは"1. Enter a name for your security group"と "2. Enter a description"に任意の名前を入力し、デフォルトのSSHにチェックが入った状態で「Continue」をクリックし次へ進みます。

図5. Launch Instalce Wizardによるセキュリティ・グループの作成
図5. Launch Instalce Wizardによるセキュリティ・グループの作成

次に、"Number of Instances"と"Instance Type"、"Key Pair Name"、"Security Groups"を指定します。ここではインスタンス数(Number of Instances)に 1を指定し、インスタンスの種類(Instance Type)に"Small"を選択し、Key Pair Nameには事前に作成して おいた"db2"を指定しています。必要な項目に入力したら「Launch」ボタンをクリックしインスタンスを起動します。

図6. Launch Instalce Wizardによるインスタンスの起動
図6. Launch Instalce Wizardによるインスタンスの起動

しばらくすると「Instances」メニューの一覧で、"running"になっていることが確認できればインスタンスの起動は成功です。


IPアドレスの設定

続いて外部からリモートで接続できるようにIPアドレスを割り当てます。「Elastic IPs」メニューで「Allocate New Address」ボタンをクリックし ダイアログが出ますので「Yes, Allocate」ボタンでIPアドレスを作成します。

図7. IPアドレスの作成
図7. IPアドレスの作成

続いて作成したIPアドレスを先ほどのインスタンスに割り当てます。「Associate」ボタンをクリックし"Instance ID"を選択するダイアログが 出ますので、先ほどのインスタンスを選択して「Assoceate」でIPアドレスをインスタンスに割り当てます。

図8. IPアドレスの割り当て
図8. IPアドレスの割り当て

「Instances」メニューで確認すると"Public DNS"の部分に外部からアクセルできるアドレスが表示されているのが確認できます。

図9. インスタンスの確認
図9. インスタンスの確認

LinuxおよびDB2のセットアップ

EC2インスタンスの準備ができたので、次はLinuxとDB2のセットアップを行います。PuTTYなどのSSHが利用できるリモート端末から EC2インスタンスにrootでログインします。PuTTYを使ったSSHアクセスに関しては、こちらの 記事などを参考にして下さい。事前に準備しておいたKey Pairを使ってSSHでアクセスし、rootでログインするとLinuxの設定画面が表示されます。

図10.
図10.

ライセンスの同意などを求められるので、画面の指示に従って進みます。

図11.
図11.
図12.
図12.

"AWS Credentials Setup"というX.509の証明書を登録する画面です。

図13.
図13.

あらかじめ「AWS を使用して X.509 証明書を作成する方法 」を参考に、X.509証明書をPCに保存しておきます。

図14.
図14.

テキスト・エディタなどで証明書ファイルを開き、中に記述されているテキストをコピー&ペーストします。

図15.
図15.

図16. のような画面になれば登録は成功です。

図16.
図16.

次にデータを保存するためのストレージ(Amazon AMI Storage)を構成します。(図17.~図19.) ここでは5GBのスペースをRAIDは使わずに構成しています。

図17.
図17.
図18.
図18.
図19.
図19.

次にrootのパスワードを設定すれば、Linuxのセットアップは完了です。

図20.
図20.
図21.
図21.

続いてDB2のセットアップ画面が表示されますので、DB2が使用する3つのユーザのパスワードを設定します。

  1. DB2のインスタンス・オーナー(デフォルトでは、db2inst1)
  2. 管理サーバ(DAS)ユーザ(デフォルトでは、dasusr1)
  3. DB2のフェンス(分離)ユーザ(デフォルトでは、db2fenc1)
図22.
図22.
図23.
図23.

最後にデータベース名を入力して、DB2のセットアップも完了です。

図24.
図24.
図25.
図25.

図26.のようにrootのプロンプトがでればすべてのセットアップは完了し、DB2が利用できるようになっています。

図26.
図26.

DB2の動作確認

DB2のセットアップが完了したら、簡単な動作確認とサンプル・データベースを作成してみましょう。 "db2level"コマンドで現在のDB2インスタンスのバージョンや適用されているパッチ(Fixpack)情報が確認できます。

domU-12-31-39-07-CE-63:~ # su - db2inst1
    db2inst1@domU-12-31-39-07-CE-63:~> db2level
    DB21085I  Instance "db2inst1" uses "32" bits and DB2 code release "SQL09070"
    with level identifier "08010107".
    Informational tokens are "DB2 v9.7.0.0", "s090521", "LINUXIA3297", and Fix Pack
    "0".
    Product is installed at "/opt/ibm/db2/V9.7".

また、サンプル・データベースのコマンドラインからの作成には、"db2sampl"コマンドを使用します。以下の用に実行するとSAMPLEという データベース名のサンプル・データベースが作成されます。

db2inst1@domU-12-31-39-07-CE-63:~> db2sampl -sql -xml -verbose
    
    Creating database "SAMPLE"...
    Connecting to database "SAMPLE"...
    Creating tables and data in schema "DB2INST1"...
    Creating tables with XML columns and XML data in schema "DB2INST1"...
    
    'db2sampl' processing complete.

残念ながらコマンド・ラインで表示されるDB2のメッセージは英語になっていますが、デフォルトでUTF-8のデータベースが作成されていますので、 日本語に関しては全く問題ありません。DB2システムのメッセージが英語になっているだけです。

図27.
図27.

VNCクライアントからリモート接続をしてGUIツール(コントロール・センター)を利用することもできます。VNC経由で接続する場合には あらかじめTCP 5901番のポートを外部から利用できるように設定しておく必要があります。

図28.
図28.

これで、Amazon EC2上でDB2を利用するための最低限の準備は完了しました。pureXMLなど優れたテクノロジーがたくさん詰まっているDB2の世界をお楽しみください!

参考文献

学ぶために

製品や技術を入手するために

  • DB2 9.7の製品情報はこちらです
  • DB2 9.7の技術情報(developerWorks)はこちらです

コメント

developerWorks: サイン・イン

必須フィールドは(*)で示されます。


IBM ID が必要ですか?
IBM IDをお忘れですか?


パスワードをお忘れですか?
パスワードの変更

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


お客様が developerWorks に初めてサインインすると、お客様のプロフィールが作成されます。会社名を非表示とする選択を行わない限り、プロフィール内の情報(名前、国/地域や会社名)は公開され、投稿するコンテンツと一緒に表示されますが、いつでもこれらの情報を更新できます。

送信されたすべての情報は安全です。

ディスプレイ・ネームを選択してください



developerWorks に初めてサインインするとプロフィールが作成されますので、その際にディスプレイ・ネームを選択する必要があります。ディスプレイ・ネームは、お客様が developerWorks に投稿するコンテンツと一緒に表示されます。

ディスプレイ・ネームは、3文字から31文字の範囲で指定し、かつ developerWorks コミュニティーでユニークである必要があります。また、プライバシー上の理由でお客様の電子メール・アドレスは使用しないでください。

必須フィールドは(*)で示されます。

3文字から31文字の範囲で指定し

「送信する」をクリックすることにより、お客様は developerWorks のご使用条件に同意したことになります。 ご使用条件を読む

 


送信されたすべての情報は安全です。


static.content.url=http://www.ibm.com/developerworks/js/artrating/
SITE_ID=60
Zone=Information Management
ArticleID=433018
ArticleTitle=Amazon EC2でDB2を試そう
publish-date=10052009