# HG changeset patch # User Ken Miyahira # Date 1596871358 -32400 # Node ID 07a725c4868d19d52b43e4c8d2fc9b9f7414a6e5 # Parent c17db5f554c606de6fca4d0def2fee7655806912 update tex diff -r c17db5f554c6 -r 07a725c4868d paper/mk-wm.pdf Binary file paper/mk-wm.pdf has changed diff -r c17db5f554c6 -r 07a725c4868d paper/mk-wm.tex --- a/paper/mk-wm.tex Sat Aug 08 14:11:05 2020 +0900 +++ b/paper/mk-wm.tex Sat Aug 08 16:22:38 2020 +0900 @@ -91,8 +91,8 @@ Docker は基本的に root 権限で動作する。また一般ユーザが docker コマンドを使用するには docker グループに追加する必要がある。 そのため Docker をマルチユーザ環境で使用すると, 他ユーザのコンテナを操作できるなどセキュリティの問題がある。\par そこで, 本論文では, Docker と マルチユーザ環境で利用しやすいコンテナプラットフォームである Singularity を利用したコンテナ貸出サービスを提案する。 -このコンテナ貸出サービスでは, Web コンソールからコンテナの操作を行うことで他ユーザのコンテナへの操作をさせない。また, 本コースの類似サービスの課題でもあったデータの永続化を -Singularity で, 外部リポジトリの利用を Docker の操作を HTTP API で提供することで解消する。 +このコンテナ貸出サービスでは, Web コンソールからコンテナの操作を行うことで他ユーザのコンテナへの操作をさせない。 +また, 本コースの類似サービスの課題でもあった外部リポジトリの利用は, Docker の機能を HTTP API で提供することで解消する。 \section{技術概要} 本研究で必要な技術概要を述べる。 @@ -401,12 +401,25 @@ そのため, Kubernetes 全体が停止したとしてもブレードサーバの Docker のみでサービスを提供することができる。 \subsection{クラウドサービス} - +なぜオンプレミスなのかとかを記述しようかな。 \section{今後の課題} - +本研究で実装したサービスでは学生が学習環境として利用するには, まだ必要な実装が不足している。\par +本サービスでは, 大量のデータを用いる時に Singularity を使用できる環境を用意している。だが, Web コンソールから作成した Docker や Kubernetes のコンテナでは +データの永続化が対応していないため, コンテナの削除時に共に削除されてしまう。学科のブレードサーバでは学生用ディレクトリがある。 +Docker ではそのディレクトリをコンテナ立ち上げ時にマウントすることで, コンテナ内のデータの永続化に対応できる。 +また, Kubernetes では Peresistent Volumes という永続ボリュームの仕組みがある。この Peresistent Volumes をユーザごとに管理することで, コンテナのデータの永続化に対応できる。 +このような対策でコンテナでデータの永続化に対応できるが, コンテナごとにデータの保存場所が違うなどの問題があるため, データを管理する仕組みが必要だと考える。\par +本サービスでは, 学生が自由に Docker イメージを作成できる。また, Docker イメージを Singularity 用のイメージに変換する。 +そのため, イメージの容量でブレードサーバのストレージを圧迫してしまう可能性があることから, 定期的にイメージを削除する必要がある。 +また, 本サービスではユーザごとにリソースの制限を行っていないため, 過剰なリソースの占有を防ぐための対策をする必要がある。 +GPU などの負荷がかかるプログラムの実行で使用されるリソースにはジョブ管理ソフトウェアなどで対策をとる。\par +本サービスは Docker Hub に登録されている Dokcer イメージを利用できるが, Docker Hub は誰でもイメージを登録することができる。 +そのため, Docker Hub に登録されているイメージにマルウェアが仕込まれている可能性がある。 +イメージの取得時にスキャンを行うなど, セキュリティ対策を考える必要がある。 \section{まとめ} +本稿では, 本コースで利用する新規サービスの設計と実装を行った。 \nocite{*} \bibliographystyle{ipsjunsrt}