Mercurial > hg > Papers > 2014 > taiki-sigos
changeset 40:7d282552d255
fix slide
author | taiki <taiki@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Thu, 15 May 2014 05:20:35 +0900 |
parents | 5298c2f70632 |
children | f17088cd0db5 |
files | slide/sigos.css slide/sigos.html |
diffstat | 2 files changed, 193 insertions(+), 112 deletions(-) [+] |
line wrap: on
line diff
--- a/slide/sigos.css Thu May 15 00:46:46 2014 +0900 +++ b/slide/sigos.css Thu May 15 05:20:35 2014 +0900 @@ -106,11 +106,6 @@ /* or hide next steps e.g. .step { visibility: hidden; } */ .stepcurrent { color: black; } - -p { - margin: 10px; -} - img { margin: 10px; } @@ -133,3 +128,9 @@ margin:60px; padding:5px; } + +.date { + font-size:30px; + margin:60px; + padding:5px; +}
--- a/slide/sigos.html Thu May 15 00:46:46 2014 +0900 +++ b/slide/sigos.html Thu May 15 05:20:35 2014 +0900 @@ -58,68 +58,60 @@ --> <p class="title">OS 授業向けのマルチユーザ VM 環境の構築</p> -<p class="belong">琉球大学大学院 理工学研究科 情報工学専攻</p> +<p class="belong">琉球大学大学院 並列信頼研究室 (河野研)</p> + +<p class="date"> +<script> + var date = new Date(); + var year = date.getFullYear(); + var month = date.getMonth(); + var day = date.getDate(); + var monthList = new Array("January","February","March","April","May","June", + "July","August","September","October","November","December"); + document.write(monthList[month]+" "+day+", "+year); +</script> + <p class="name">平良 太貴</p> </div> -<div class='slide'> -<!-- _S9SLIDE_ --> -<h1>VM を用いた Web サービスの教育</h1> - -<ul> - <li>学生でも Web サービスを開発する技術は必須なものとなっており、学生個人での Web サービス開発でも、手持ちの PC でサービスを構築し外部の VPS やクラウド等へデプロイするワークフローを学ぶ必要がある。</li> - <li>しかし外部のサービスを利用する場合に、学生が VM の管理を十分に行うことが難しく、コストの支払いも困難である。クラウド上で学生が使う VM の管理方法は、クラウドの運営者と協調して API などを通して実現する必要がある。</li> - <li>ここでは学校にあるブレードなどのサーバ機器を用いて<font color="red"> Web サービスを学生が構築、開発、運用する方法の実装</font>を行った。</li> +<div class='slide '> + <h1>目次</h1> + <ol> + <li>VM を用いた Web サービスの教育</li> + <li>授業 Operating System / Web サービスの学習で要求されること</li> + <li>ie-virsh 導入前の VM 管理システム</li> + <li>ie-virsh の実装</li> + <li>ie-virsh の動作するサーバ構成</li> + <li>ie-virsh の動作するブレードサーバの性能</li> + <li>ie-virsh の動作するブレードサーバの環境</li> + <li>ie-virsh の機能</li> + <li>ie-virsh の使用例</li> + <li>リソースの制限</li> + <li>Vagrant Box の使用</li> + <li>構成に使ったツールと他のツールとの比較</li> + <li>他の VM 管理ツールとの比較</li> + <li>ie-virsh の改善点</li> + <li>まとめと今後の課題</li> + </ol> </div> <div class='slide'> <!-- _S9SLIDE_ --> <h1>VM を用いた Web サービスの教育</h1> <ul> + <li>学生でも Web サービスを開発する技術は必須なものとなっており、学生個人での Web サービス開発でも、手持ちの PC でサービスを構築し外部の VPS やクラウド等へデプロイするワークフローを学ぶ必要がある。</li> + <li>しかし外部のサービスを利用する場合に、学生が VM の管理を十分に行うことが難しく、コストの支払いも困難である。クラウド上で学生が使う VM の管理方法は、クラウドの運営者と協調して API などを通して実現する必要がある。</li> + <li>ここでは学校にあるブレードなどのサーバ機器を用いて<font color="red"> Web サービスを学生が構築、開発、運用する方法の実装</font>を行った。</li> <li>本学の情報工学科で提供している Operating System という授業で、OS について学習し課題を提出させる。課題では VM の環境を学生が設定し、情報工学科の持つブレードサーバ上にアップロードし、プログラムの実装や計測を行う。</li> <li>これを教師あるいはシステム管理者が学生の<font color="red">一つ一つの VM に対して対応を行うのは現実的ではない</font>。</li> <li>情報工学科のブレードサーバ上に VM に対する適切な権限を学生に委譲し、VM の起動・停止等の操作をさせる必要がある。また、VM 上で動く OS のセキュリティを適切に管理する必要がある。</li> </ul> </div> - -<div class='slide '> - <h1>ie-virsh 導入前の VM 管理システム</h1> - <p>ie-virsh を実装し適用する前に、VMWare ESXI / vSphere Client を利用していた。</p> - <h2>VMWare ESXI / vSphere Client</h2> - <ul> - <li>vSphere Client は仮想環境の統合管理をするプラットフォーム vCenter Server と接続し、管理する</li> - <li>vSphere Client は詳細な権限の設定が可能で、複数の学生に対して VM を配布し権限を管理する事ができる</li> - </ul> - <h2>KVM / ie-virsh への変更</h2> - <ul> - <li>手動で権限を移譲する場合は管理者側の操作が増え、学生への権限の配布に手間と時間が掛かる。</li> - <li>ie-virsh は権限を移譲するという操作が必要なく、機能も学生が VM を操作するには十分である。</li> - <li>KVM / ie-virsh はオープンソースであり、導入コストやランニングコストがかからない</li> - </ul> - <p>授業 Operating System に使用するために、VMWare ESXI / vSphere Client の代わりに<font color="red">ie-virsh を実装した</font>。授業 Operating System で使用する。</p> -</div> - -<div class='slide '> - <h1>目次</h1> - <ol> - <li>授業 Operating System で要求されること</li> - <li>ie-virsh の実装</li> - <li>OCFS2 を使った構成</li> - <li>ホストのブレードサーバの構成</li> - <li>ie-virsh の機能</li> - <li>リソースの制限</li> - <li>Vagrant Box の使用</li> - <li>他の管理ツールとの比較</li> - <li>ie-virsh の改善点</li> - <li>まとめと今後の課題</li> - </ol> -</div> - <div class='slide'> - <h1>授業 Operating System で要求されること</h1> - <p>授業 Operating System では、VM を使って課題や実験を行う。VM を学生が操作するにあたっての基本的な要件を満たす必要があり、また教師や管理者側の負担を減らさなければならない。</p> + <h1>授業 Operating System / Web サービスの学習で要求されること</h1> + <p>授業 Operating System では、VM での課題や実験を行う。Web サービスの学習では、VM を用いて構築した Web サービスを公開する。そのためには VM を学生が操作するにあたっての基本的な要件を満たす必要があり、また教師や管理者側の負担を減らさなければならない。</p> <table> <tr> <td> @@ -127,18 +119,37 @@ </td> <td> <ul> - <li>学生のノート PC で環境設定したイメージを、ブレードサーバ上で VM として動作させることができる</li> - <li>作成した VM を、VM を持つ学生だけが削除することができる</li> - <li>学生自身の VM のみを<font color="red">起動・停止することができる</font>。</li> - <li>VM へ <font color="red">ssh でのアクセスが可能</font>である</li> - <li><font color="red">パスワードやフィルタリングなどの安易な設定をチェックし、設定し直す</font>よう勧告する</li> + <li>学生のノート PC で環境設定したイメージを、本学科のブレードサーバ上で VM として動作させることができる</li> + <li>作成した VM を、VM を持つ学生だけが削除できる</li> + <li>学生自身の VM のみを<font color="red">起動・停止できる</font>。</li> + <li>VM へ ssh でのアクセスが可能である</li> + <li>パスワードやフィルタリングなどの安易な設定をチェックし、設定し直すよう勧告する</li> + <li>授業 Operating System で使われる場合は実験後に電源入れたままの VM を、停止するように勧告する</li> </ul> </td> </table> - <p>以上のことを行えるように実装する必要がある。</p> + <p>以上のことを行えるように管理ツールを実装する必要がある。</p> </div> <div class='slide '> + <h1>ie-virsh 導入前の VM 管理システム</h1> + <p>授業 Operating System では、ie-virsh を実装し適用する前に VMWare ESXI / vSphere Client を利用していた。</p> + <h2>VMWare ESXI / vSphere Client</h2> + <ul> + <li>vSphere Client は仮想環境の統合管理をするプラットフォーム vCenter Server と接続し、VMWare ESXI 上の VM を管理する</li> + <li>vSphere Client は詳細な権限の設定が可能で、複数の学生に対して VM を配布し権限を管理する事ができる</li> + </ul> + <h2>KVM / ie-virsh への変更</h2> + <ul> + <li>vSphere Client は手動で権限を移譲する場合は管理者側の操作が増え、学生への権限の配布に手間と時間が掛かる。</li> + <li>ie-virsh は権限を移譲するという操作が必要なく、機能も学生が VM を操作するには十分である。</li> + <li>KVM / ie-virsh はオープンソースであり、導入コストやランニングコストがかからない</li> + </ul> + <p>授業 Operating System に使用するために、VMWare ESXI / vSphere Client の代わりに <font color="red">ie-virsh を実装した</font>。</p> +</div> + + +<div class='slide '> <h1>ie-virsh の実装</h1> <p>virsh をラップし、複数の学生が学生自身の VM のみを操作できるように実装した。virsh の個々の VM を操作するのに必要な機能だけを抜き出し、学生に提供する。</p> <h2>libvirt</h2> @@ -153,23 +164,74 @@ </div> <div class='slide '> - <h1>OCFS2 を使った構成</h1> - <p>OCFS2 とは汎用の共有ディスククラスタファイルシステムであり、一つのブロックデバイスを複数の PC から同時に読み書きすることができる。</p> + <h1>ie-virsh の動作するサーバ構成</h1> + <h2>OCFS2</h2> + <p>分散ファイルシステム Oracle Cluster FileSystem 2(OCFS2) を利用した。OCFS2 とは汎用の共有ディスククラスタファイルシステムであり、一つのブロックデバイスを複数の PC から同時に読み書きでき、整合性を保つことが可能である。</p> + <h2>サーバ構成</h2> <table> <tr> <td> <img src="images/sanstructure.png"> </td> <td> - <p>ie-virsh は情報工学科のブレードサーバの一つで動作している。OCFS2 により、ストレージは複数のブレードサーバから同時に参照することができる。ブレードサーバ同士での VM の移動やコピーを容易に行うことができる。</p> + <ul> + <li>ie-virsh は情報工学科のブレードサーバの一つで動作している</li> + <li>OCFS2 により、ストレージは複数のブレードサーバから同時に参照・書き出しすることができる</li> + <li>ブレードサーバ同士での VM イメージの参照を容易に行うことができる</li> + </ul> </td> </tr> </table> - <p>またこのブレードサーバの一つを、学生に使用させる。</p> </div> <div class='slide '> - <h1>ホストのブレードサーバの構成</h1> + <h1>ie-virsh の動作するブレードサーバの性能</h1> + <table border=1> + <tr> + <td> + OS + </td> + <td> + debian + </td> + </tr> + <tr> + <td> + CPU + </td> + <td> + Intel(R) Xeon(R) CPU X5650 @ 2.67GHz + </td> + </tr> + <tr> + <td> + CPU数 + </td> + <td> + 2 + </td> + </tr> + <tr> + <td> + core 数 + </td> + <td> + 6 (論理 24) + </td> + </tr> + <tr> + <td> + Memory + </td> + <td> + 128GB + </td> + </tr> + </table> +</div> + +<div class='slide '> + <h1>ie-virsh の動作するブレードサーバの環境</h1> <p>学生は ie-virsh を使用するためにホスト OS へアクセスし、ie-virsh によって学生自身の VM を操作する。</p> <table> <tr> @@ -178,10 +240,9 @@ </td> <td> <ul> - <li>ie-virsh は情報工学科のブレードサーバの一つで動作している。</li> - <li>情報工学科の LDAP の情報を元に学生が ssh アクセスが可能である</li> - <li>学生は ssh でアクセスし、ie-virsh を使用して VM を操作することができる</li> - <li>情報工学科の IP アドレス配布に対応するため、仮想ブリッジで外部ネットワークと接続する。</li> + <li>学生は学科のアカウントを用いて ssh でブレードサーバにアクセスし、ie-virsh を使用して VM を操作することができる</li> + <li>情報工学科の IP アドレス配布に対応するため、仮想ブリッジで外部ネットワークと接続する</li> + <li>設定した IP アドレスやドメイン名を使用して、VM へ ssh アクセスすることができる</li> </ul> </td> </tr> @@ -190,7 +251,7 @@ <div class='slide '> <h1>ie-virsh の機能</h1> - <p>ie-virsh は virsh にある機能を制限し、学生に VM に必要な基本的な操作を提供する。またこれらの操作を、学生自身の VM 以外の VM に対して適応不可にする。</p> + <p>ie-virsh は virsh にある機能を制限し、学生に VM に必要な基本的な操作を提供する。</p> <table border=1 align=left> <tr> <th>command</th> @@ -223,111 +284,130 @@ </table> </div> -<!-- <div class='slide '> - <h1>ie-virsh - 使用手順</h1> + <h1>ie-virsh の使用例</h1> + <p>授業 Operating System で学生にさせた操作の例を挙げる。</p> + <h2>VM の作成</h2> <ol> <li>学生のノート PC で VMWare や VirtualBox を使用して Linux をインストール</li> - <li>作成したイメージをブレードサーバへアップロード</li> - <li>イメージを OVF 形式から qcow2 形式へ変換し、指定のディレクトリへ配置</li> - <li>ie-virsh define [domain name] で domain name を定義</li> - <li>ie-virsh start [domain name] でイメージを元に VM を起動</li> + <li>作成したイメージを OVF 形式から qcow2 へ変換</li> + <li>ブレードサーバにアップロードし指定のディレクトリへ配置</li> + <li>ie-virsh define [domain name] で domain name の VM を作成</li> </ol> + <h2>VM の操作</h2> + <ul> + <li>ie-virsh start [domain name] で VM を起動</li> + <li>ie-virsh destroy [domain name] で VM を停止</li> + <li>ie-virsh delete [domain name] で [domain name] を削除</li> + </ul> </div> ---> <div class='slide '> <h1>マルチユーザへの対応</h1> - <p>各個人のリソースや操作を制限することによって、<font color="red">複数の学生の VM 使用を管理</font>することができる。</p> + <p>ie-virsh では各個人の操作を制限することによって、<font color="red">複数の学生の VM 使用を管理</font>することができる。</p> <ul> - <li>学生の Web サービス構築の学習や、授業 Operating System での課題をさせるためにはマルチユーザに対応する必要がある。</li> - <li>ホストを、情報工学科の LDAP サーバの情報を利用して、学生が情報工学科のアカウントで ssh ログイン可能な状態に設定した。</li> - <li>そうすることで独自にアカウントを登録させる必要がなく、またアカウントは学籍番号で登録されているため管理が用意になる。</li> + <li>学生の Web サービス構築の学習や、授業 Operating System での課題を少数のブレードサーバでさせるためには、マルチユーザに対応する必要がある</li> + <li>ブレードサーバを情報工学科の LDAP サーバの情報を利用して、学生が情報工学科のアカウントで ssh ログイン可能な状態に設定した</li> + <li>ie-virsh では学生がログインに用いたアカウントの持つ VM 以外は操作することができない</li> + <li>そうすることで独自にアカウントを登録させる必要がなく、またアカウントは学籍番号で登録されているため管理が容易になる</li> </ul> </div> <div class='slide '> - <h1>リソースの制限</h1> - <p>限られたリソースをマルチユーザとして複数の学生に配布するためには、学生が個人で大量のリソースを取らないよう、制限する必要がある。</p> + <h1>学生が持つことのできるリソースの制限</h1> + <p>限られたリソースをマルチユーザとして複数の学生に配布するためには操作を制限するだけでなく、学生が個人で大量のリソースを取らないようにすることも必要である。</p> <h2>XML template</h2> - <p>libvirt は VM を、XML の設定ファイルを使用して管理している。ie-virsh ではその XML ファイルを template として用意することにより、リソースを制限した。</p> + <p>libvirt は VM を XML の設定ファイルを使用して管理している。ie-virsh ではその XML ファイルを事前に作成して template として用意することで、リソースを制限した。各学生が使用できる VM は、</p> <ul> <li>CPUの量: 1 core</li> <li>メモリ: 1 GB</li> </ul> - <p>これらの設定を学生が使用する template XML ファイルに記述し、domain の作成時に学生に使用させる。</p> + <p>となっている。これらの設定を学生が使用する template XML ファイルに記述し、domain の作成時に自動的に適用する。</p> <h2>ドメイン数の制限</h2> - <p>学生は VM のインスタンスを最大4つまで作ることができる。これは学生が大量にVM を起動し、メモリや CPU を消費することを防ぐためである。</p> + <p>学生は VM のインスタンスを最大4つまで作ることができる。これは学生が大量に VM を作成・起動し、ブレードサーバのメモリや CPU を消費することを防ぐためである。</p> </div> <div class='slide '> <h1>Vagrant Box の使用</h1> + <h2>Vagrant</h2> <ul> - <li>VM を使用する際は学生の PC で VM を設定させ、VM イメージをアップロードさせるという形をとった。授業 Operating System では VM を学ぶ環境として学生の PC で Vagrant を使用させた。</li> - <li>Vagrant Box は Vagrant での、仮想マシンのベースとなるイメージファイルである。</li> - <li>Vagrant Box イメージは簡易なパスワードとユーザ名で Vagrant から管理されており、そのままブレードサーバへアップロードしグローバル IP アドレスを割り当ててしまうと、外部からの攻撃を受けてしまう。そのためブレードサーバへアップロードしたイメージを検知し、攻撃されないような設定かどうかを確認する必要がある。</li> + <li>テスト用の仮想マシン作成や、環境設定などを自動化するツールである</li> + <li>仮想環境の作成、破棄をコマンド実行で簡単に行える</li> + </ul> + <h2>Vagrant Box</h2> + <ul> + <li>Vagrant Box は Vagrant での、仮想マシンのベースとなるイメージファイルである</li> + <li>Vagrant を使って仮想マシンを操作するためには、Vagrant Box が必要</li> + </ul> + <h2>Vagrant Box の問題点</h2> + <ul> + <li>学生の PC で Vagrant を使って VM の設定し、設定した Vagrant Box からイメージファイルを抜き出して変換し、ブレードサーバにアップロードさせた</li> + <li>Vagrant Box イメージは簡易なパスワードとユーザ名で Vagrant から管理されており、そのままブレードサーバへアップロードしグローバル IP アドレスを割り当ててしまうと、<font color="red">簡単に外部からの攻撃を受けてしまう</font></li> + <li>そのためブレードサーバへアップロードしたイメージを<font color="red">起動して検査しセキュアな設定かどうかを確認する</font>必要がある</li> </ul> </div> <div class='slide '> - <h1>他のツールとの比較</h1> + <h1>構成に使ったツールと他のツールとの比較</h1> <h2>OCFS2 と NAS</h2> <ul> - <li>ie-virsh の動作するサーバ構成では SAN へ複数の PC がアクセスし、同時にアクセスするため ext3・ext4 のようなファイルシステムでフォーマットを行うと整合性が取れない。</li> - <li>OCFS2 は SAN 上の複数の PC から書き込まれてもファイルは整合性を保てる。</li> + <li>ie-virsh の動作するサーバ構成では SAN へ複数のブレードサーバ が同時にアクセスするため ext3・ext4 のようなファイルシステムでフォーマットを行うと整合性が取れない</li> + <li>OCFS2 は SAN に接続している複数の PC から同時に書き込まれてもファイルの整合性を保てる</li> + <li>KVM から NFS で NAS に接続する、あるいは NFS 経由で自身の filesystem にアクセスすることでも同様なことが実現できるが、余計なネットワークトラフィックが出てしまう</li> </ul> <h2>KVM と VMWare ESXI</h2> <ul> - <li>ie-virsh はハイパーバイザとして KVM を使用している。</li> - <li>情報工学科では VMWare ESXI を利用しているが VMWare を使用するためにはコストがかかる。</li> - <li>KVM であれば Linux ベースの OS で利用できるため、無償で利用可能である。</li> + <li>ie-virsh はハイパーバイザとして KVM を使用している</li> + <li>情報工学科では VMWare ESXI を利用しているが VMWare を使用するためにはコストがかかる</li> + <li>KVM であれば Linux ベースの OS で利用できるため、無償で利用可能である</li> + <li>性能的にもほぼ同等であるが、VMWare の方が若干高速である</li> </ul> </div> <div class='slide '> - <h1>他の管理ツールとの比較 [1/2]</h1> + <h1>ie-virsh と他の VM 管理ツールとの比較 [1/2]</h1> <h2>Vagrant</h2> <ul> - <li>KVM をプロバイダとするプラグインを持っているため、KVM を VirtualBox の用にプロバイダとして使用できる。</li> - <li>Vagrant をマルチユーザへ対応させ、学生が使えるように設定できるか試したが、Vagrant の KVM プラグイン vagrant-kvm が複数でネットワークを使用できるように実装されていなかった。</li> - <li>また ie-virsh と できることがほぼ同じであり、既存の Box を使える以外の利点はない。</li> + <li>KVM をプロバイダとするプラグインを持っているため、KVM を VirtualBox のようにプロバイダとして使用できる</li> + <li>Vagrant をマルチユーザへ対応させ、学生が使えるように設定できるか試したが、Vagrant の KVM プラグイン vagrant-kvm が複数の VM でネットワークを使用できるように実装されていなかった</li> + <li>また Vagrant を KVM で動かせたとしても、ie-virsh とできることがほぼ同じであり既存の Vagrant Box を使える以外の利点はない</li> </ul> <h2>OpenStack</h2> <ul> - <li>クラウド基盤ソフトウエアであり、仮想サーバやブロックストレージ、仮想ネットワークなどのリソースを提供する。</li> - <li>OpenStack はマルチユーザではないため、今回の複数の学生の権限を管理するツールとしては適さない。</li> + <li>クラウド基盤ソフトウエアであり、仮想サーバやブロックストレージ、仮想ネットワークなどのリソースを提供する</li> + <li>OpenStack はマルチユーザではないため、今回の複数の学生の権限を管理するツールとしては適さない</li> </ul> </div> <div class='slide '> - <h1>他の管理ツールとの比較 [2/2]</h1> + <h1>ie-virsh と他の VM 管理ツールとの比較 [2/2]</h1> <h2>Web サービス実装</h2> <ul> - <li>ie-virsh とは別に、vSphere の API を使用した Web サービスが情報工学科で利用されている。</li> - <li>情報工学科の VMWare ESXI に VM を作成し、起動、停止することができる。</li> - <li>Web サービスは GUI を操作するためにブラウザを起動しなければならず、また新しく GUI の操作になれる必要がある。</li> - <li>情報工学科の Web サービスは IP アドレスの配布と連携しているため IP アドレスの登録を自動で行う。ie-virsh は IP アドレスの登録は情報工学科のサービスを利用して行うため、新規に VM を作成する際には複数のサービスにまたがって比較する必要がある。</li> - <li>VM を管理するツールとして、webvirt が複数の VM を管理するために実装されている。仮想環境の Web 管理ツールである。</li> - <li>シングルノードのみを管理する目的で開発されているため、複数の学生が使用するにはそういったように実装する必要がある。</li> + <li>ie-virsh とは別に、<font color="red">vSphere の API を使用した Web サービス</font>が情報工学科で利用されている</li> + <li>情報工学科の VMWare ESXI に VM を作成し、起動、停止することができる</li> + <li>Web サービスは GUI を操作するためにブラウザを起動しなければならず、また新規に使用する際は GUI の操作になれる必要がある</li> + <li>情報工学科の Web サービスは IP アドレスの配布と連携しているため VM 作成時に VM の IP アドレスの登録を自動で行う。ie-virsh は IP アドレスの登録は情報工学科のサービスを利用して行うため、新規に VM を作成する際には複数のサービスにまたがって操作する必要がある</li> + <li>VM を管理するツールとして、<font color="red">webvirt</font> が本研究室で実装されている。仮想環境の Web 管理ツールである</li> + <li>シングルノードのみを管理する目的で開発されているため、複数の学生が使用するにはマルチユーザ対応・リソースの制限ができるように実装する必要がある</li> </ul> </div> <div class='slide '> - <h1>ie-virsh の改善点</h1> - <p>ie-virsh を実装し使用して発見した改善点を挙げる</p> + <h1>ie-virsh の改善点 [1/2]</h1> + <p>ie-virsh を実装し使用して発見した ie-virsh の改善が必要な点を挙げる。</p> <h2>VM のセキュリティチェック</h2> <p>学生が VM のセキュリティ設定をしているか確認し、また VM に対して攻撃や不正なアクセスがないかを検査する機能が ie-virsh に必要である。</p> <ul> - <li>簡単に VM へ侵入されてしまうことを防ぐために、簡易なパスワードやユーザ名が設定されている VM のパスワードやユーザ名を変更するように促す。</li> - <li>侵入後に他の VM や外部へ攻撃しているかをチェックするために、VM までのトラフィックを監視し、学生の VM が外部へ不正なトラフィックを送っていないかをみる。</li> - <li>外部からの不正なトラフィックを受け取らないように、ファイアウォールなどの機能が適切に設定されているかをチェックする。</li> + <li>簡単に VM へ侵入されてしまうことを防ぐために、Vagrant Box のような簡易なパスワードやユーザ名が設定されている VM のパスワードやユーザ名を変更するように促す</li> + <li>外部からの不正なトラフィックを受け取らないように、ファイアウォールなどの機能が適切に設定されているかをチェックする</li> + <li>侵入後に他の VM や外部へ攻撃しているかをチェックするために、VM までのトラフィックを監視し、学生の VM が外部へ不正なトラフィックを送っていないかを監視する</li> </ul> </div> <div class='slide '> - <h1>ie-virsh の改善点</h1> + <h1>ie-virsh の改善点 [2/2]</h1> <h2>クラウドへのデプロイ</h2> <p>学生が Web サービスを構築し、運用を続けるためには遠方からのアクセスにも対応する必要が出てくる。そのためには AWS やさくら VPS などの外部のクラウドサービスへ VM をデプロイできるようにする。</p> <table> @@ -336,8 +416,8 @@ <img src="images/workflow.png"> </td> <td> - <p>始めに学生は学生の PC 上の VM を設定し、ブレードサーバへアップロードする。Web サービスの構築を終わらせ、ブレードサーバでの運用が可能になると、遠方からのアクセスに対応しなければならない。</p> - <p>遠方からのアクセスはネットワークの速度が遅く、クラウドサービスを利用する必要がある。そのため、ブレードサーバから外部のクラウドサービスへ Web サービスをデプロイする仕組みが必要である。</p> + <p>始めに学生は学生の PC 上の VM を設定し、ブレードサーバへアップロードする。Web サービスの構築を終わらせ、ブレードサーバでの運用が可能になると、次は遠方からのアクセスに対応しなければならない。</p> + <p>遠方からのアクセスはネットワークの速度が遅く、ネットワーク的に近いクラウドサービスを利用しなければならない。そのため、ブレードサーバから外部のクラウドサービスへ Web サービスをデプロイする仕組みが必要である。</p> </td> </tr> </table>