• 検索結果がありません。

Local PlanetLab の通常の構築方法

ドキュメント内 2010 3 (ページ 49-52)

第 6 章 提案するアーキテクチャの適用例と実装 40

6.1.1 Local PlanetLab の通常の構築方法

MyPLCを用いたLocal PlanetLabの構築方法について説明する。

PLCホストの構築手順

PLCとしてサービスを提供するためには、いくつかの構成要素が必要となる。MyPLC はLinux系OSのRPMパッケージとして提供されており、これらは全てMyPLCのパッ ケージに含まれている。構成要素として、以下のサーバが挙げられる。

Webサーバ

Webサーバは、実験者向けの情報を提供する。実験に使用する公開鍵の登録なども 行える。PLCAPIサーバを経由してデータベースを参照しており、ノードの情報の 取得やSliverの割り当てなども行える。

bootサーバ

Webサーバが、実験者向けのサービスであるのに対して、bootサーバは、実験用 ノード向けのサービスである。bootサーバでは、実験用ノードをインストールする

DB

PLCAPI

boot web

DNS PLC䊖䉴䊃

SQL

ታ㛎↪䊉䊷䊄 ssh ታ㛎⠪

XML-RPC /HTTPS XML-RPC

/HTTPS XML-RPC

/HTTPS

XML-RPC /HTTPS

XML-RPC /HTTPS

XML-RPC /HTTPS

図 6.1: MyPLCの構成図

PLCAPIサーバ

PLCAPIサーバは、PLCを操作するためのAPIを提供する。通常はWebサーバな どを経由して操作されるが、XML-RPCを用いてPLCAPI関数を直接操作すること が可能である。

データベースサーバ

PLCAPIサーバを経由し、ノードやネットワーク設定、起動の状態や、Slice、実験

者のアカウントなどの各種情報を格納している。

DNSサーバ

実験用ノードのIPアドレスと名前の情報を提供する。データベースの情報を元にエ ントリを作成している。

構成図を図6.1に示す。実験者はWebサーバを経由して、使用するノードへの、公開鍵 の割り当てなどを行える。bootサーバによって、公開鍵が実験用ノードに割り当てられ る。実験者は、割り当てた公開鍵に対応する秘密鍵を用いて、実験用ノードを使用するこ とができる。実験者が実験用ノードを使用する際には、SSHを使用する。

設定の手順としては、MyPLCのインストール後にplc-config-ttyというコマンドを実 行することで、インタラクティブに設定を行える。設定項目としては以下のものが挙げら れる。

管理者アカウント

PLCのサイト識別子

各種サーバの指定

各種サーバのプログラムがMyPLCのパッケージに含まれているため、1台のノードで PLCホストとして動作可能である。そのような設定を行う場合は、PLCホストのIPアド レスまたはホスト名を登録すればよい。また設定される値はBootCDにも渡されるため、

実験用ノードから到達できるアドレスを指定する必要がある。そのため、ループバックア ドレスなどは指定してはならない。設定された情報はXML形式のファイルとして、所定 の場所へ保存される。

PLCへのノードの登録

実験用ノードは、事前にPLCへ登録しなければならない。通常はWebインターフェイ スを用いて登録する。登録の際には、IPアドレス・ホスト名等を入力する。登録した際に はplnode.txtというファイルが生成され、登録されたことの証明に用いられる。PlanetLab では遠隔地のノードにインストールし、PlanetLab網に参加させることを想定している。

このため不正なノードが参加しないよう、インストールおよび起動の際に認証を行い、登 録されたノードであることを確認している。plnode.txtには、認証のための鍵の情報が記 述されている。また、後述するネットワークの設定にも用いられる。

実験用ノードの用意

インストールの際にPLCとの通信が行われる。そのため実験用のノードは、予めネッ トワークに繋がっている必要がある。plnode.txtには、このための設定も保存されており、

使用するインターフェイス、IPアドレスを動的に取得するか、静的に設定するか等を指 定できる。また実験用ノードには専用のOSをインストールする必要がある。

インストールメディアの用意

実際にノードへPlanetLabノードをインストールするためにはCD-ROMなどのメディ アにインストーラを入れる必要がある。インストーラプログラムはBootCDと呼ばれ、

CD-ROMに入れることを想定している。またCD-ROM以外にも、USBメモリ用のイ

メージも用意されている。認証のため、BootCDはインストール時にPLCホストと通信を 行う必要がある。PLCホストのアドレスなどの情報が必要になるため、PLCごとに異な

るBootCDが生成される。またインストール前に実験用ノードを、PLCへ登録する必要

があるが、このときに生成されるplnode.txtもインストール時に必要になる。plnode.txt

BootCD

PL Node Power off

状態がデバッグ

状態がブート

シャットダウン シャットダウン 電源投入

BootCD

PL Node Power off

状態がデバッグ

状態がブート

シャットダウン シャットダウン 電源投入

図 6.2: PlanetLabノードの状態遷移

あればBootCDは同じものを使用できるが、plnode.txtは実験用ノードごとに固有のもの が生成される。BootCDはインストール以外にも、起動の際にも使用され、PLCと通信 し、認証以外にも再インストールなどの状態確認を行ってから実験用のPL Nodeが起動 する。また何か問題がある場合、状態はデバッグモードになり、PL Nodeとしては起動

せずにBootCDのプログラムが起動したままになる。BootCDと実験用ノードの状態遷移

を図6.2に示す。このためBootCDは起動のたびに必要となり、ノードの数だけ用意しな ければならない。

ノードの起動・インストール

ノードが起動し、BootCDが起動するとインストールが始まる。インストール中には ユーザが操作を行う必要はなく、インストールが進行する。

ドキュメント内 2010 3 (ページ 49-52)