仮想マシン立ち上げは最初の一歩、いよいよWebサイトを立ち上げる

先行者利益が大きくなっている現代において、ITインフラ構築の有力な選択肢として注目されているIaaS。本連載では、国内IaaS(Infrastructure as a Service)の代表例として「ニフティクラウド」を取り上げ、これまで同サービスを使ったことのない筆者が、何も調べない状態でどこまで作業できるかに挑戦している。

前回は仮想マシンの立ち上げまでを行った。詳細は記事で確認してほしいが、結果としては、何も調べなくても容易に導入作業を終えられることがわかった。

さて、実務を考えると、当然ながら、仮想マシンを立ち上げただけでは何も動かない。次は仮想マシンの上に、なんらかのサービスを構築することになる。

IaaSの最も多いユースケースの1つが、キャンペーンサイトの構築だろう。こうした業務命令は、担当エンジニアがクラウドサービスに詳しくなくても下りてくる。ニフティクラウドが"構築の容易さ"を謳うのであれば、そうしたスキルを持たないエンジニアでも、さらに言えばBINDやUnboundといったDNSサーバーの設定ファイルをすらすらと書けなくても、容易にサイトを立ち上げられるはずだ。

そこで、今回は、ニフティクラウドにてキャンペーンページを想定したWebサイトの立ち上げを行ってみたい。なお、今回も前回同様、何も調べず事前知識ゼロの状態で、ヘルプやマニュアルを見ることもなく作業を進めてみる。これでどの程度容易なサービスなのかが見えてくるだろう。

Webサーバーのセットアップ

Webサイトを立ち上げるうえで必要なものは大きく2つある。「Webサーバー」と「DNS」だ。今回はこの2つのセットアップを行ってみよう。

まず、ニフティクラウドにログインする(仮想サーバーの作成までの手順は第1回を参照)。

ニフティクラウドダッシュボード

Webサーバーには最近流行の「Nginx」を選択。これは立ち上げたUbuntuからapt-get(8)で次のようにインストールする。

Nginxをインストール

Ubuntu 12.04 LTSでは、Nginxの設定ファイルが/etc/nginx/nginx.confにデプロイされているので、この設定ファイルを例えば次のように変更する。

Ubuntu 12.04 TLS / Nginxの設定ファイルの例( /etc/nginx/nginx.conf)

設定ファイルで/home/www/index.htmlをトップページとして指定しているので、同様の構成でディレクトリとファイルを作成したうえで、持ち主をwww-dataユーザに設定して次のような内容で用意した。

コンテンツの作成

Nginxの設定とコンテンツの用意はこれで完了したので、続いてservice(1)コマンドを使ってNginxサーバーを起動する。

Nginxの起動

細かいフィルタリングルールは本番運用の前に設計する()として、とりあえずは次のようにiptables(8)を実行して起動したサーバーにアクセスできるようにする。

※(編集部注) 本番運用に際しては事前にファイアウォールを設定するなど、安全なサーバー環境の構築が必要となります(詳しくは、2014年3月公開予定の第3回をご参照ください)。

iptables(8)を実行

この状態で用意したIPアドレスを直接指定してアクセスすると、次のようにサーバーが動作していることを確認できた。

Webサーバーの動作を確認

ここまではニフティクラウドというよりは、LinuxやFreeBSDの操作スキルだ。Webサーバーのセットアップを経験しているエンジニアならばそれほど時間はかからないはずだ。実際、ここまでの作業に要した時間は10分程度だった。

DNSのセットアップ

ECサイトの構築となると、ドメイン名の購入および設定が欠かせない。ドメイン名の購入や設定は個別にやると結構面倒な作業であるうえ、適切にDNSサーバーをセットアップするにはそれなりにスキルを必要とする。しかも頻繁に行うものではないので、以前経験した方でも設定方法を忘れているケースも少なくない。

そうした状況を考慮してか、ニフティクラウドではDNSがサービスとして提供されているらしい。ということで、まずは管理画面からそれを探してみることにした。

管理メニューから一通りリンクをクリックしたが、それらしい表示は見当たらなかった。途方に暮れかけたが、サイトの左上にある下向きの記号をクリックしたら「DNS」という項目が表れた。おそらくこれだろう。どうやら仮想マシンの管理メニューとは切り離され、別のサービスメニューとして提供されているらしい。

コントロールパネルで見つけたDNSの項目

こちらのサービスでは、ドメインの取得、ゾーンの設定などの項目が表示されている。本連載では、キャンペーンサイトを立ち上げるという設定であるものの、ドメインは用意していないので、まずは「ドメイン新規取得」をクリックした。

ドメイン名を新規取得

購入を希望するドメイン名を聞かれたので「mynavitryniftycloud.jp」と入力。

購入を希望するドメイン名を入力

入力したドメイン名を購入できることを確認。

そのドメイン名が購入可能であるか確認

サービスの利用規約が表示されたので、一通り読んでから同意して次に進んだ。

サービスの利用規約

購入者の情報入力を求められるので一通り入力。

購入者の情報を入力

入力した情報を確認。

入力情報の確認

どうやら購入が完了したようだ。ドメイン名の項目が0から1に変わっている。

ドメイン購入完了

購入したドメインを使いたいので、ドメイン情報をDNSゾーンに設定する。

ゾーン名として購入したドメイン名を入力

これでDNSゾーンの設定も完了したようだ。DNSゾーン数が0から1に変わっている。

ゾーン設定完了

DNSゾーン管理をクリックすると先ほど追加したDNSゾーンが表示されている。当然ながらレコード数は0だ。

ゾーンを表示

「www.mynavitryniftycloud.jp」でサーバーにアクセスできるようにしたいので、レコード新規作成をクリック。

レコードの新規作成

Aレコードとして必要な情報を入力。

レコード情報の入力

最終確認。

レコード登録の最終確認

これでレコードが追加された。

レコード登録完了

先ほどの画面に戻るとレコード数が0から1になっていることを確認できる。

レコードを確認

ためしに他のホストからdrill(1)で登録したレコードの正引きを実施してみると、すぐに結果が返ってきた。新規購入したドメイン名と登録したばかりのレコードであってもすぐに反映されるようだ。

ほかのホストから正引きで確認

これまでの作業もやはり10分かかっているかどうかというところ。表示されるリンクを辿りながら値を入力して次に進むといった作業をしただけだ。実用的に利用できるUIになっていると言えそうだ。

WebサーバーとDNSの連動

DNSのセットアップも完了したので、このドメイン名でWebサーバーにアクセスできるように、Nginxの設定を変更する。

直接IPアドレスを書いていた部分を登録したレコード「www.mynavitryniftycloud.jp」に変更する。

Nginxの設定ファイルを変更

設定ファイルを更新してからNginxを再起動。

Nginxを再起動

ドメイン名でアクセスして、サーバーに到達できることを確認。

正常にアクセスできる

実際に作業をはじめてからここまで30分も経過していない。ニフティクラウドの売りとして謳われている「機能構築の容易性」が実現されていることがわかる。

すぐに実現できるという便利さ

ニフティクラウドでは、一般的な用途で必要になるサービスは一通り提供されている印象を受ける。今回の想定のように、必要になったときに簡単にDNSの購入と設定ができるのはとても大きなアドバンテージと言えるだろう。

しかも操作するにあたってマニュアルを読まなければならないとか、検索エンジンで操作方法を調べるとかも必要なく、感覚に任せて作業するだけでWebサーバーを立ち上げられた。なかなか便利なサービスだ。

また料金体系が明確なところも特長の1つだろう。特に稟議書の作成が求められる企業ユースでは、見積りの作成が不可欠。このように金額が明瞭に表示されると作業を進めやすい。短期的にサービスを提供する必要がある場合などは特に重宝するだろう。

次回は、クラウドの特徴を生かし、運用中のアクセス急増を想定してサーバーリソースの拡大などを試してみたい。

ちょっと嬉しい「新しいお知らせ」機能

IaaSをはじめとするデータセンターサービスを使っている場合、サービス事業者から「システムからのお知らせ」といった通知が届く。システム停止のお知らせや、メンテナンスの通知、機能変更や新機能追加などの連絡と内容はさまざまだが、いずれも重要な通知であることが多く、管理者であれば必ず目を通なければならない。

しかし、人間、何事も慣れが生じ、緊張感が薄れると、面倒なことは後回しにしてしまうものである。システムからのお知らせも、忙しいときなどは、ついつい読まないまま溜め込みがちだ。

ログイン時に表示される「新しいお知らせ」

そうした問題もニフティクラウドでは心配無用である。

ニフティクラウドではログイン時に「新しいお知らせ」が表示されるようになっている。通知のみに目が行くUIになっており、見逃すことはないだろう。

「ログインする」ということは、そのシステムで「何かをしよう」という意思を持って操作しはじめたタイミングであるため、通知内容は直後の作業に影響する可能性があり、自然と真剣に読み込んでしまう。細かいことかもしれないが、こうした気遣いはシステム管理者にとってとてもありがたい。