mdx (データ活用社会創成プラットフォーム) とは
mdx を活用すればクラウド上の高性能なサーバ計算機を何台も自分専用に利用できるようになります。 この学術研究基盤は、高性能な計算機にくわえて大容量のストレージを備えており、高速ネットワーク SINET と連携することで、 実時間データ収集 (IoT)、機微なデータの格納、分野ごとのデータプラットフォーム構築を可能とします。 東京大学だけでなく全国の大学、研究機関および民間企業に対して提供されています。
なお 2024 年現在、mdx は mdx Ⅰ(東京大学柏Ⅱキャンパス)と mdx Ⅱ(大阪大学吹田キャンパス)の 2 機で構成されています。 ここでは mdx Ⅰ について説明します。
mdx が提供するサーバ計算機は仮想マシンです。 利用者から見るとクラウド上に実際に存在する高性能コンピュータ (PC) を専有して使っているように感じられますが、実際にはこれは mdx I と呼ばれる高性能計算機上に仮想的に作られたコンピュータです。 仮想的に作られたコンピュータなので仮想マシンと呼ばれます。 仮想とはいえ、ssh でリモートログインして利用したり、仮想マシンのデスクトップ画面を手元の web ブラウザに表示して操作したりできます。 仮想マシンには GPU を搭載できる他、大容量のストレージを接続することも可能です。 また申請すれば仮想マシンにグローバル IP アドレスを付与することもできます。
利用料金はmdx Iの利用料金ページ を参照してください。 2024 年度の場合、1 CPU パックが1円で、おおよそ仮想コア1個 1.5 GB の仮想マシンを1時間利用できます。 3 コアで 4.5 GB の仮想マシン(GPU なし)を web サーバなどとして常時稼働させる場合、1ヶ月 720 時間として一月あたり約 864 円(税別)です。 これ以外にストレージの利用料が、例えば 40GB で月に 36 円ほどかかかります。 また後で述べるスポット仮想マシンを選択すれば、利用料金は半額ほどになります。 GPU (NVIDIA A100) つきのスポット仮想マシンの場合、1時間あたり 50 円です。
利用料金のシミュレーションは、mdx Iの料金シミュレーションページから可能です。
使ってみる
プロジェクトの作成
mdx I を利用するには、まず自身のプロジェクトを作成します。
mdx I のトップページ の「プロジェクト申請(新規)・mdx ポイント購入」をクリックして、プロジェクト申請ポータルへ移動します。 アカウントの管理は国立情報学研究所の学認(学術認証フェデレーション)が使われています。 「所属機関」に東京大学を選んで「選択」をクリックすると、UTokyo アカウントでログインできます。 次のページで東京大学のメールアドレスを入力して「Send Token」をクリックします。 認証用のトークンがメールで届くので、トークンをコピーしてログイン画面に入力するか、メール中の URL をクリックすると認証が完了して、プロジェクト申請ポータルの画面が開きます。
プロジェクト申請ポータルのトップページは、申請済みのプロジェクト一覧です。 このページの上部の「プロジェクトの申請」をクリックして申請画面を開きます。
-
プロジェクトタイプは「通常」でよいでしょう。「お試し」を選ぶと3ヶ月間無料で試用できます。
-
連携機関は「東京大学情報基盤センター」を選んでください。
ページ下部の「申請」をクリックすると申請完了です。 mdx 管理者が目視で申請内容を確認しているため、承認されるまで少し時間がかかります。
プロジェクトは mdx の利用グループごとに作ることができます。 一人で複数のプロジェクトを作ることもできます。
ポイントの購入
プロジェクトを作成したら「ポイント」を購入します。 mdx I は前払いのポイント制です。 1ポイントは1円(税別)で、ポイントを購入できるのは、プロジェクト申請者と、プロジェクト申請者によってポイント購入者として追加されたユーザのみです。
ポイントの購入は、プロジェクトの申請と同じプロジェクト申請ポータルからおこないます。 まず、プロジェクト申請一覧のページの上部の「ポイントを購入する」をクリックします。 申請済みのプロジェクトの一覧が表示されるので、ポイントを購入したいプロジェクトの行の右端に表示されている「購入する」ボタンをクリックします。
支払いには大学運営費の他、科研費などの外部資金も利用できます。 購入は 5,000 ポイント単位です。 5,000 ポイントを一口として、購入する口数を入力します。 例えば 100,000 ポイント(10 万円)を購入するときは 20 口と入力します。
仮想マシンの利用
ポイントを購入したら仮想マシンを作成します。 作成にはユーザーポータルに移動します。 プロジェクト申請ポータルの上部の「User Portal」をクリックしても移動できますし、 mdx I のトップページ で「mdx の利用(ユーザポータルへ)」をクリックしても移動できます。
認証はプロジェクト申請ポータルと同様、学認です。 「所属機関」に東京大学を選んで「選択」をクリックして認証します。
ユーザポータルでは、まず、今自分が仮想マシンを作成しようとしているプロジェクトであるか確認します。 一番上の行に現プロジェクトが表示されています。 変更するにはプルダウンメニューで目的のプロジェクトを選びます。 ユーザポータルの使い方については、mdxチュートリアル 「3. ユーザポータルの使い方」を見てください。
プロジェクトの資源量の申請
まずそのプロジェクトで利用する資源量(CPU や GPU の個数、ストレージの容量)を申請します。 mdx I が提供できる資源量は有限なので、申請した資源量がそのまま承認されるとは限りませんが、空きがあれば承認されてプロジェクトに割り当てられます(いったん申請が承認されても、混み具合に応じて再調整されることもあります)。 そのプロジェクトでは割り当てられた資源量の範囲内で仮想マシンを利用できます。 資源量の申請は、ユーザポータルの「プロジェクト」タブからおこないます。 ページ上部の「プロジェクト」をクリックして、「プロジェクト編集申請」をクリックします。
仮想マシンには、起動保証仮想マシンとスポット仮想マシンという概念があります。 プロジェクトの資源量の申請が必要なのは、起動保証仮想マシンに用いる資源の分だけです。
起動保証仮想マシンは、その名前のとおり、プロジェクトのために資源が予約されていて、必要なときにはいつでも2時間以内に起動できることが保証されているマシンです。 一方、スポット仮想マシンは、混雑してくると、強制的に休止状態になる可能性があります。 休止状態に移行するときは、1時間前までにメールおよびユーザポータル上でユーザに通知されます。 仮想マシンが休止状態 (deallocated) になると、強制的にシャットダウンされます。
スポット仮想マシンは、プロジェクトに割り当てられている資源量に関係なく、空きがあればいつでも利用できます。 割り当て資源量がゼロでも空きがあれば利用できます。 したがってプロジェクトの資源量として申請が必要なのは、起動保証仮想マシンに必要な資源だけです。 スポット仮想マシンのために資源を申請する必要はありません。
デプロイ
いよいよ仮想マシンを作成します。 ユーザポータルのページ上部にある「仮想マシン」タブをクリックします。 デプロイの手順を知るにはmdxチュートリアル「4. 仮想マシンのデプロイ」も見てください。
ISO イメージから任意の OS(Windows など)をインスト−ルすることもできますが、すでに用意されているテンプレートから選ぶのが簡単です。 ページ左側に「コントロール」「デプロイ」「ISO イメージ」と表示されるので、「デプロイ」を選びます。
例えば Ubuntu Desktop を選び、 「デプロイ」をクリックします。 CPU パックは 3 パック、仮想ディスクは 40GB などと入力します。 仮想ディスクは大きくても 100GB 以内が目安です。 それ以上の容量のストレージが必要な場合は、高速内部ストレージや大容量ストレージをマウントして使います。 また「デプロイ後起動する」にチェックを入れれば、デプロイ後、即座に仮想マシンが起動します。 スポット仮想マシンとしてデプロイする場合は、「起動保証仮想マシン」にチェックを入れません。
起動後、仮想マシンに ssh でログインできるように、自分の ssh の公開鍵を登録します。 そして「デプロイ」をクリックします。 デプロイには少し時間(1分弱)がかかりますが、「インフォメーション」タブの「操作履歴」から進捗状況を確認できます。
デプロイが完了したら「仮想マシン」タブに戻って左側の「コントロール」を選びます。 「デプロイ後起動する」をチェックしていれば、デプロイした仮想マシンが PowerON になっているはずです。
デプロイした仮想マシンを選択して、「Console」をクリックすると、別ウィンドウで Ubuntu のデスクトップ画面が開きます。 テンプレートから Ubuntu を選んでいるのなら mdxuser でログインできます。
デプロイした Ubuntu にログインして、例えば Jupyter 環境を使いたい場合、まずターミナルを開いて
$ sudo apt-get install python, pip
のようにして Python をインストールした後、JupyterLabのインストール方法 などをみて Jupyter をインストールしてください。
ネットワーク設定
インターネット経由で外部から仮想マシンに ssh 等でログインしたい場合は、グローバル IP アドレスを割り当てます。 そのためには、まずユーザポータルの「仮想マシン」タブの「コントロール」を選びます。 IP アドレスを割り当てたい仮想マシンを選んで、「メンテナンス」の「DNAT 設定」をクリックします。
しばらくすると、仮想マシンにグローバル IP アドレスが割り当てられます。 ユーザポータルの「仮想マシン」タブの「コントロール」で、目的の仮想マシンを選ぶと(仮想マシン名の左のラジオボタンをクリックする)、その仮想マシンの情報が表示されます。 その中のグローバル IP アドレスの欄に割り当てられたアドレスが記されています。
グローバル IP アドレスを割り当てたら ACL (Access Control List) の設定をおこないます。 ACL によって必要な通信だけを許可して、仮想マシンを不正アクセスから守ります。
ユーザポータルの「ネットワーク」タブの左側の「ACL」をクリックします。 次に「Allow ACL」欄の「IPv4」タブを選び、「+ RECORD」をクリックします。
例えば ssh での通信を可能にするのなら、
- プロトコル: TCP
- Src アドレス: 0.0.0.0 (インターネット上の任意のアドレスからアクセス可能)
- Src Prefix 長: 0
- Src ポート: Any (任意のポートからアクセス可能)
- Dst アドレス: アクセスを許す仮想マシンのローカル IP アドレス
- Dst Prefix 長: 32 (Dst アドレスの仮想マシンだけにアクセスを許す)
- Dst ポート: 22 (ssh の場合。 Web サーバなら 80 と 443 など)
のように設定して「Add」をクリックします。 ネットワークの設定を変更すると反映までに5分ほど待たされます。
起動と停止
起動した計算機は、通常の手順でシャットダウンすれば計算機も停止します。 ユーザポータルの「仮想マシン」タブの「コントロール」を選ぶと(場合によってはページをリロードすると)、状態が PowerOFF に変わっているはずです。
計算機を再度起動する場合は、「仮想マシン」タブの「コントロール」から、起動したい計算機を選んで、「Action」の「電源」、「起動」をクリックします。
仮想マシンやストレージを利用すると、料金規定に従ってポイントが徐々に消費されていきます。 スポット仮想マシンの場合、利用料金は仮想マシンが稼働している間だけかかります。 したがって大規模な並列計算をおこないたいときは、スポット仮想マシンを利用することとし、計算が終わり次第仮想マシンを止めることにすればポイントの消費を抑えることができます。
mdx I 利用手引き
mdx Ⅰ の利用方法について、さらに詳しく知りたい場合はmdx 利用手引きを参照してください。