環境学研究科におけるサーバリプレースの実施

牧野輝
情報通信技術支援室 情報システム構築技術グループ

はじめに
情報通信技術支援室では環境学研究科 都市環境学専攻 建築学系からの依頼を受けて、建築学教室サーバのサーバ 1 台、環境・設備工学系のサーバ 1 台、構造・材料工学系のサーバ 1 台を管理している。建築学教室サーバで稼働している Web システムは、Web デザインの老朽化に加え、長期にわたり属人的な運用を行っていたため、保守が難しい問題があった。また、メール、メーリングリスト、DNS の機能が各サーバで稼働しており、機能別にサーバを集約できないかとの要望が利用者側から出てきていた。
これらのサーバで使用している OS のサポート期限が 2020 年 11 月と近づいてきていることから、サーバのリプレース作業を実施するにあたり、上記にあげた問題点を解決し、機能集約を行う計画をたてた。今回は、既に実施済みの作業内容と、計画の全体について報告する。

1

サーバリプレースの概要

サーバリプレースの概要図を図 1 に示す。メールについては、現行の建築学教室（建築学系全体）や各系のサーバでメールサーバが稼働しており、建築学教室で統一されたメールドメインを用いる運用になっていなかった。そのため、利用者側から統一したいという要望が出てきた。そこでサーバリプレースを行うと共に、統一されたメールドメインを用いて、運用する方針をたてた。具体的には、1) 建築学教室のメールドメイン（@nuac.nagoya-u.ac.jp）のみを扱う”建築学教室メールサーバ”と、2) 各系の既存のメールドメイン（@xxx.nuac.nagoya-u.ac.jp）を扱うための”各系用メール転送サーバ”を運用する構成とした。

図 1. サーバリプレースの概要図

また、DNS については、3) 建築学教室で扱うドメインや各系で扱うサブドメインのゾーン情報を集約した”
建築学教室 DNS サーバ”を運用する方針とした。
Web については、4) 現行の建築学教室サーバがもつ静的コンテンツ、動的コンテンツを管理する”建築学教室 Web サーバ” および 5) 各系サーバがもつ静的コンテンツを一括管理する”各系用 Web サーバ”を構築する方針とした。なお、建築学教室のメーリングリスト機能については、Web を用いた管理を行う必要があるため、4)に移設することとした。
サーバリプレース計画の実施順序については、利用者側と協議した結果、4) ”建築学教室 Web サーバ”、3) ”
建築学教室 DNS サーバ”、1) ”建築学教室メールサーバ”、2) ”各系用メール転送サーバ”、5) ”各系用 Web サーバ”の順序で行うこととなった。なお、現行の建築学教室サーバでは、動的コンテンツとして、就職情報掲示板システムや会議室予約システムが稼働している。これらの Web システムは、Web デザインの老朽化に加え、属人的な運用による保守が難しい問題があったため、サーバリプレースの際に、Web システムの改修も併せて行うこととした。以降では、改修した就職情報掲示板システム、会議室予約システムの内容について述べた後、既に実施済みのサーバリプレースについて述べる。

2

就職情報掲示板システム

本システムは、就職担当教員が就職情報を登録し、学生がその情報を閲覧できるシステムである。この就職情報掲示板システムを一部改良し、リプレース後の建築学教室 Web サーバで使用する新しいバージョンのOS での動作検証を行った。現行システム及び新システムの動作環境を表 1 に示す。現行システムでは、Webページのスタイルを指定する CSS を独自に定義し、使用していたが、新システムでは CSS フレームワークの1 つである Bootstrap を用いて Web デザインを刷新した。また、就職情報を閲覧する Web ページについては、デザインの刷新に加え、機能拡張を行った。

表 1. 就職情報掲示板システムの動作環境
項目
OS
開発言語
CSS フレームワーク

2.1

現行システムCentOS 6.4
PHP 5.3
なし

新システム
CentOS 7.6
PHP 5.4
Bootstrap 3.3

管理用 Web ページのデザイン刷新

管理用 Web ページの一例として、現行システムと新システムにおける、担当教員が就職情報を投稿するた
めの Web ページを図 2、図 3 に示す。大きく Web デザインを変更した点は、ユーザインタフェースとページレイアウトである。ユーザインタフェースについては、Bootstrap が定義しているクラスを用いて入力フォーム、ボタン等を作成した。ページレイアウトについては、Bootstrap の特徴であるグリッドシステムを取り入れることで、レスポンシブデザインを実現した。レスポンシブデザインを採用することで、Web ページを閲覧するデバイスの表示幅に応じてページレイアウトを変更することができる。例えば、タブレットサイズ以上の場合は、項目名と項目名に対する入力フォームなどが横に並んで表示され、それ未満の場合は縦に並んで表示される（図 4）。また、ナビゲーションバーを Web ページの上部に設置し、ドロップダウンメニューを追加した。タブレットサイズ未満の場合、ナビゲーションバーは画面右上に 3 本の横線のアイコンとして表示される。メニュー項目が多い場合、一度に表示する項目が抑制されるため、簡潔なページレイアウトにすることができる。

図 2. 現行システムの投稿用Web ページ

2.2

図 3. 新システムの投稿用 Web
ページ（タブレットサイズ以上）

図 4. 新システムの投稿用 Web
ページ（タブレットサイズ未満）

閲覧用 Web ページの開発

現行システム及び新システムにおいて学生が就職情報を閲覧する Web ページを図 5、図 6 に示す。現行システムでは、左カラムに就職情報のタイトルのみを縦一列に全件表示し、右カラムに就職情報の詳細を表示する 2 カラム構成であった。これに対して新システムでは、レスポンシブデザインを採用しつつ、1 カラム構成とした。1 カラム構成にすることで、デバイスのサイズに関係なく同じようなレイアウトで表示できるので、学生が就職情報を閲覧しやすくなると考えた。また、利便性を向上させるために、就職情報を 10 件ずつ表示するページング機能と検索機能を実装した。

図 5. 現行システムの就職情報閲覧 Web ページ

3

図 6. 新システムの就職情報閲覧 Web ページ

会議室予約システム

本システムは、建築学系で管理している会議室を利用者が予約するためのシステムである。現行システム
及び新システムの動作環境を表 2 に示す。現行システムは、前担当者が独自に開発したものであり、保守・運用コストが高かった。そこで新システムにおいては、継続的に開発が行われているオープンソースソフトウェアの MRBS(Meeting Room Booking System) [1]を利用することで、セキュリティ対策などの保守・運用業務を軽減する方針とした。MRBS は会議室を予約するための無料の Web アプリケーションであり、日本語対応、ログイン認証、予約に関する詳細な設定、メール通知などができる特徴をもつ。ただし、一般利用者が予約状況を確認する Web ページについては、前章で述べた就職情報掲示板システムの閲覧用 Web ページのデザインに統一するために、別途開発することとした。

表 2. 会議室予約システムの動作環境
項目
OS
開発言語
CSS フレームワーク
予約システム本体
データベース

3.1

現行システムCentOS 6.4
PHP 5.3
なし
なし
PostgreSQL 8.4

新システム
CentOS 7.6
PHP 5.4
Bootstrap 3.3
MRBS 1.6
MySQL 5.5

MRBS を用いた新システムへの移行の流れ

以下の方法・手順により、現行システムから MRBS を用いた新システムへ移行が可能なことを確認した。
1) リプレース後の建築学教室 Web サーバを想定し、CentOS7.6 を用いてテストサーバを構築し、MRBS をインストールした。2) 現行のシステムの仕様を踏襲するために、MRBS の Web 管理画面から予約対象の会議室の登録や予約可能な時間帯の変更などを行った。3) MRBS の設定ファイルを編集し、表 3 に示す項目について設定変更を行った。4) 現行の会議室予約システムで登録されている予約情報の移行を行った。このとき、現行システムと MRBS ではデータベースのテーブル構造が異なっていたため、PHP で作成した変換スクリプ
トを用いて予約情報のフォーマット変換を行った。最後に、5) MRBS の管理画面から会議室の新規予約、編集、取り消しなどの操作を行い、会議室予約システムの動作として問題ないことを確認した。

表 3. MRBS の設定変更項目
項目
一般ユーザが予約できる最大の数
曜日の始まり一般ユーザに他のユーザを見せない設定
ログインしていないユーザに予約状況を見せない設定

3.2

設定内容
30
日曜日あり
あり

会議室の予約状況閲覧用 Web ページの開発

建築学教室の Web サイト全体のデザインを就職情報掲示板システムの Web デザインに近づけて欲しいとの要望が利用者側から出てきたことから、2 つのシステムの一般利用者が閲覧する Web ページについてはデザインを統一することにした。具体的には、現行システムに合わせて、カレンダ形式（1 ヶ月分の表示）と日付単位での表示について開発を行った。
現行システム及び新システムで予約状況をカレンダ形式で表示する Web ページを図 7、図 8 に示す。PHPを用いて現在の月のカレンダを表示する Web ページを作成し[2]、MRBS 上で行われた会議室の予約の情報をカレンダに表示させる機能、表示月や会議室の切り替え機能を実装した。

図 7. 現行システムでの予約状況の閲覧用Web ページ（カレンダ形式表示）

図 8. 新システムでの予約状況の閲覧用 Web ページ（カレンダ形式表示）

日付単位の表示形式による現行システム、新システムでの予約状況閲覧 Web ページを図 9、図 10 に示す。
現行システムでは、時間を横軸、会議室名を縦軸としていたため、予約時間が短い場合に予約時間の表示が崩れてしまっていた。そこで新システムでは、時間を縦軸、会議室名を横軸としたテーブル形式に変更した。
縦軸の時間は現行システムと同様に 30 分単位とし、各会議室の予約時間が一目でわかるように色付きの縦線を表示させた。

図 9. 現行システムでの予約状況の閲覧用Web ページ（日付単位表示）4

図 10. 新システムでの予約状況の閲覧用 Web ページ（日付単位表示）

実施中のサーバリプレースについて

1 章で述べた方針に従ったサーバリプレースは当初、2018 年度末までに段階的に行う予定をたてていた。
しかし 2018 年度中頃に、建築学教室のサーバ管理担当教員と協議した際、各系の利用者との調整に時間がかかることが予想されるという話を受けて、リプレースの業務は一時中断となった。その後、2018 年末にリプレースを進めたいと再度教員側から打診があり、一部の作業を実施することになった。リプレース計画のうち、2019 年 2 月までに行った内容について述べる。

4.1

建築学教室 Web サーバ

リプレース後の Web サーバは、CentOS7.6 を用いて新規にサーバを構築し、建築学教室の Web サイト、就職情報掲示板システム、会議室予約システムおよびメーリングリストを稼働させる。機能ごとに必要なソフトウェアを表 5 に示す。建築学教室 Web サイトの移行では、旧サーバの Web コンテンツが使用していた文字コードを UTF-8 に変換する作業を行った。次に改修した就職情報掲示板システムと会議室予約システムを前章までに述べた方法で移行し、システムが問題なく動作することを確認した。現行サーバで運用されていた22 個のメーリングリストは、Mailman のコマンドを用いて新規に作成し、移行した。メーリングリスト機能の動作確認を行うために、手元の PC からテスト用メーリングリスト宛にメールを送信し、会員のメールアドレスへメールが配送されることを確認した。

表 5. 建築学教室の Web サーバに用いたソフトウェア
機能
建築学教室の Web サイト
就職情報掲示板システム
会議室予約システム
メーリングリストの機能

4.2

ソフトウェアApacheApache、PHP
Apache、PHP、MariaDB、MRBS
Mailman、Postfix

建築学教室 DNS サーバ

正引き用 DNS ゾーンファイルは、現行の建築学教室 DNS サーバに 1 つ、3 つの各系サーバにそれぞれ 1つの計 4 つある。このうち各系サーバにあるゾーンファイルの 1 つは系で引き続き管理することから、管理権限を委譲し、残りは 1 つのゾーンファイルに集約して、情報通信技術支援室で管理している DNS サーバへ移行した。移行に必要な設定を DNS サーバで行った後、上位ドメインの管理者へ連絡し、サーバのリプレースが完了した。

4.3

建築学教室メールサーバ

リプレース後の建築学教室メールサーバは、建築学教室のドメイン（@nuac.nagoya-u.ac.jp）宛のメールを扱う。現行サーバではユーザ登録やメール転送設定は、管理者が UNIX コマンドを用いて作業する必要があったが、新サーバでは Postfixadmin を用いて、利用者側でも Web の GUI でユーザ登録や転送設定を行うことができるようにした。新規ユーザのメールアドレスについては、建築学教室のドメインを利用する予定のた
め、将来的には建築学系のメールアドレスの集約が進むと考える。また、メール配送にかかる利用者からの問い合わせ先も集約されるというメリットがある。
なお、現行サーバで運用しているメーリングリスト(xxx@nuac.nagoya-u.ac.jp)宛に送られるメールについて
は、4.1 節で述べたメーリングリストサーバにメールを転送する必要がある。そのため、運用中の全てのメーリングリストアドレスについて、Postfixadmin を用いてメーリングリストサーバへ転送する設定を行った。現
在は、利用するメールサーバについて、教員側からの切り替え指示を待っているところである。

4.4

各系用 Web サーバ

現行の各系サーバは、それぞれが静的な Web コンテンツを扱っていたが、リプレース後は、新規に構築した Web サーバにコンテンツを集約するようにするように計画した。既に教員と打ち合わせを行い、計画内容については了承を得ているため、新年度早々にリプレースを実施する予定である。

4.5

各系用メール転送サーバ

4.3 節 で 建 築 学 教 室 の メ ー ル サ ー バ を 構 築 し た が 、 教 員 か ら 各 系 の 既 存 の メ ー ル ド メ イ ン(@xxx.nuac.nagoya-u.ac.jp)も当面維持して欲しいという要望があったため、各系用メール転送サーバを構築することにした。各系用メール転送サーバは CentOS7.6 を用いて系毎に 4 台構築する予定である。

5

まとめ環境学研究科 都市環境学専攻 建築学系から依頼を受けて管理しているサーバのリプレースの実施にあたり、現行サーバの問題点や利用者側からの要望を踏まえたサーバリプレースを計画し、一部実施した。リプレースが完了していないサーバについては、2019 年 2 月現在、教員と協議しつつ、リプレース作業を進めているところである。

参考文献
[1]

“MRBS Introduction” https://mrbs.sourceforge.io/ （参照 2019-01-24）[2]“PHP：php で簡単なカレンダを作成する方法” raining
http://raining.bear-life.com/php/php で簡単なカレンダを作成する方法（参照 2018-07-19）[3]

相澤裕介 Bootstrap ファーストガイド カットシステム (2014)[4]

大重美幸 詳細! PHP 7+MySQL 入門ノート ソーテック社 (2016)