view paper/chapter/old_system.tex @ 37:e567e87d19f5

update conclusion
author Ken Miyahira <e175733@ie.u-ryukyu.ac.jp>
date Mon, 08 Feb 2021 20:19:13 +0900
parents 26a9f492bb21
children 5637b4972373
line wrap: on
line source

\chapter{旧システム}

本章では, 2020年8月まで使用されていたシステムの環境, 演習や研究用に利用できるVM管理システムについて述べる。

\section{オンプレミス環境}
旧システムは, KVMを利用したVMベースのシステムを構築していた。
VMは本コースのWebやDNS等の基幹システムや, 学生が演習や研究用で利用できる貸出VMで利用されていた。
そのため, 利用者が必要とする十分なスペックを提供するため, 表\ref{tb:oldserver}のスペックの汎用サーバを4台導入した。
\begin{table}[H]
  \begin{center}
    \caption{旧システムの物理サーバ}
    \begin{tabular}{|c|c|} \hline
	CPU & Intel Xeon E5-2699 v3 (2.30GHz/18Core) \\ \hline
    CPUユニット数 & 2 \\ \hline
	メモリ & 768GB\\ \hline
    HDD & 600GB \\ \hline
    \end{tabular}
	\label{tb:oldserver}
  \end{center}
\end{table}

次にVMのイメージを保存するために表\ref{tb:oldsandisk}のストレージを2台導入した。
ハードディスクドライブの故障が想定されるため, RAID6を採用し信頼性及び可用性の向上を行った。
ストレージと汎用サーバとの接続プロトコルはiSCSIを採用した。
KVMは標準でライブマイグレーションに対応している。
そこで, クラスタファイルシステムとして利用可能なファイルシステムである, GFS2を採用した。

\begin{table}[H]
  \begin{center}
    \caption{旧システムのSAN用ストレージ}
    \begin{tabular}{|c|c|} \hline
	HDD & SAS 1.2TB x 24 \\ \hline
    回転数 & 15000rpm \\ \hline
	RAID & 6 \\ \hline
    実行容量 & 19.7TB \\ \hline
    \end{tabular}
	\label{tb:oldsandisk}
  \end{center}
\end{table}

最後にシステムのバックアップを行うために表\ref{tb:olddisk}の大容量ストレージを2台導入した。
大容量ストレージには本コースのWebやデータベース, ユーザのホームディレクトリなどを月に一度バックアップを行う。

% こいつ...もしかしたら Netgea ????
\begin{table}[H]
  \begin{center}
    \caption{旧システムの汎用ストレージ}
    \begin{tabular}{|c|c|} \hline
	HDD & SAS 4.0TB x 24 \\ \hline
    回転数 & 7200rpm \\ \hline
	RAID & 6 \\ \hline
    実行容量 & 68.5TB \\ \hline
    \end{tabular}
	\label{tb:olddisk}
  \end{center}
\end{table}

\subsection{Akatsuki}
Webコントロールパネルから有線LAN接続サービスやVM貸出サービスを管理している。
利用者はシステム管理チームへVMの利用申請を行い, VM作成の権限を取得する。
権限を取得後, WebコントロールパネルよりVM作成, 電源操作を行えるようになっている。
VMのリソースはCPU1コア, メモリ1GB, ストレージ10GBとなり, 申請を行うことでリソースを増やすことができる。
VM貸出サービスの概要を図\ref{fig:akatsuki}に示す。

\begin{figure}[H]
    \begin{center}
        \includegraphics[width=150mm]{fig/akatsuki.pdf}
    \end{center}
    \caption{Akatsukiの概要}
    \label{fig:akatsuki}
\end{figure}

\subsection{ie-virsh}
ie-virsh は手元のPCで作成したVMを学科のブレードサーバにデプロイできるサービスである。
ユーザのUID及びGID情報を取得することで, マルチユーザに対応している。
表\ref{tb:ie-virsh}は ユーザが利用できる ie-virsh の機能である。
ie-virshは手元のPCで作成したVMを実行できるため, ユーザが好みのOSや環境を構築できるなど自由度が高い。
\begin{table}[htb]
  \begin{center}
  \caption{ie-virsh のコマンド}
  \begin{tabular}{c|l} \hline
    define  & XML の template を下に domain を作成 \\ \hline
    undefine & define で作成した domain を削除 \\ \hline
    list & define で作成した domain の一覧表示 \\ \hline
    start & 指定した domain 名の VM を起動 \\ \hline
    destroy & 指定した domain 名の VM を停止 \\ \hline
    dumpxml & domain の XML を参照 \\ \hline
    \end{tabular}
  \label{tb:ie-virsh}
  \end{center}
\end{table}

\subsection{ie-docker}
ie-dockerはDocker をラップしたツールであり, ユーザは学科のブレードサーバへsshで接続を行いCUIから利用することができる。
ie-virshと同じく, ユーザのUID及びGID情報を取得することで, マルチユーザに対応している。
表\ref{tb:ie-docker} は ie-docker で利用できる機能である。
コンテナで使用するイメージを管理者が用意する必要がある。

\begin{table}[htb]
  \begin{center}
  \caption{ie-docker のコマンド}
  \begin{tabular}{c|l} \hline
    ps  & 起動中のコンテナの一覧を表示する \\ \hline
    run & コンテナを作成する \\ \hline
    start & コンテナを起動する \\ \hline
    stop & コンテナを停止する \\ \hline
    attach & 起動しているコンテナに attach する \\ \hline
    cp & コンテナにファイルを送信する \\ \hline
    rm & コンテナを削除する \\ \hline
    \end{tabular}
  \label{tb:ie-docker}
  \end{center}
\end{table}

\subsection{問題点}

旧システムでは, 学生が演習などで利用できる環境として貸出VMのみであった。そのため以下のような問題が生じた。

\begin{itemize}
    \item 仮想環境の貸出サービスにおいて, 新しく仮想環境を作成するにはシステム管理チームへ申請が必要であった。
        そのため, 一部学生は申請の方法が分からなかったり, 貸出サービスがあることが周知されていなかったため, 旧システムのリソースが余っていた。
    \item 機械学習の演習ではGPUが求められる。だが, 旧システムにはGPUが搭載されていないため, 要求されるリソースを提供できない。
        そのため, 貸出サービスではなく研究室ごとの機器が多く利用された。
\end{itemize}

% 簡単に 1ページ未満にしよう
% 無理でした ^_^;)