teratail新年度特別企画 - 学習チュートリアル 超入門編

サーバを作って動かしてみよう

チュートリアルをはじめるなら

無料クーポンでさくらのクラウドを触ってみよう!

詳細を見る

2017/5/12まで期間限定プレゼント

さくらのクラウド2万円分無料クーポン

※初めてさくらのクラウドをご利用される方、または現在クーポンをご利用されていない方のみ適用可能です。

さくらのクラウドで使える2万円分クーポンを期間限定でプレゼント!さくらのクラウドを実際に触りながらチュートリアルを進めることでわかりやすく学習できます。

さくらのクラウドでクーポンを使う手順

クーポン取得には、teratailへの会員登録またはログインが必要です。

本チュートリアルは、teratail新年度応援企画「 インフラ技術を極めろ!クラウドマスター認定試験 」の一部として作成されました。

2017年、teratail新年度応援企画の超入門編です。

本企画では、"さくらのクラウド"を使いながら、ITインフラ構築に必要な基礎知識から、Webサービスの基本アーキテクチャの構築方法に至るまで、6回にわたるチュートリアルで解説します。最終的には、「そのまま実践でも使えるITインフラを構築できる」ところを目指します。

インフラ構築の基本は「作る」と「繋げる」

インフラ構築とは、とても大雑把に言うと、サーバやルータなどを「作る」こと、作ったものをネットワークとして「繋げる」こと。この2つです。インフラを組むには、さらに「どのようなサーバを立てるのか」「何と何を、どのように繋げるのか」「どのように設定するのか」という知識を加え、求められる要件に合わせて構築します。

超入門編では、インフラ構築の第一歩としてサーバ1台を「作る」体験をしましょう。続く入門編では、2台のサーバとスイッチを作成し、「繋げる」部分(ネットワーク構築)を行います。

そして、応用編では、そのまま実践で使えるレベルのインフラ構築をめざします。そのために必要となる前提知識を解説するとともに、実用的なクラウドを構築します。このチュートリアルを全て終えた時点で、「あとは、PHPやRubyなどの開発環境の準備 + サーバ / フロントエンドのコードを書くだけで、たいていのWebサービスを始められる」というレベルまで到達しましょう。

超入門編のゴールを確認

超入門編のゴールは、サーバ1台のシンプルなインフラを構築します。下図のように、1台のサーバをインターネット回線に接続した状態でサーバを起動します(「さくらの専用サーバ」や「さくらのVPS」を1台契約するのと同様の構成を作るイメージです)。

今回作成するサーバのスペックは「CPU:1個、メモリ:1GB、ディスク:SSD 20GB、NIC(※Column参照):1個、OS:CentOS 7.3 64bit」です。

【Column】NIC(ニック)とは?

Network Interface Card(ネットワーク・インターフェース・カード)の略です。ネットワークに繋がる窓口の役割を果たします。

事前準備(無料クーポンの入手)

実際の作業に移る前に、まずは"さくらのクラウド"のアカウントを作成しましょう。作成までの全体の流れはこちらから確認できます。次の4つのステップで完了です。

なお、今回はさくらインターネットさんのご厚意で、2017/04/12〜2017/05/12までのお申し込みに限り、teratail上で2万円のクーポンIDを獲得できるようになりました。(クーポンIDは本文の冒頭から取得可能です。クーポンIDの適用方法はこちらからご確認ください。)期間中は、teratailアカウントをお持ちの方は1人1枚獲得できるので、ぜひこの機会に入手してください。

※初めてさくらのクラウドをご利用される方、または現在クーポンをご利用されていない方のみ適用可能です。

※クーポンIDの登録期限は5/31(水)までです。クーポンIDを取得したら、期限までにご自身のアカウントにIDを登録するようにしてください。ID登録より2ヶ月間、2万円分の割引が有効となります。

サーバを1台作成する

さていよいよサーバの作成に入ります。”さくらのクラウド”のトップページの右上「コントロールパネルログイン」より、コントロールパネルにログインしてください。下図のように、コントロールパネルのホーム画面が表示されますので「さくらのクラウド(IaaS)」をクリックします。

すると、下図のようにサーバ作成やネットワークに繋げる操作を行う画面に切り替わります。

コントロールパネルの左サイドメニューから「サーバ」をクリックします。(すでに作成済みのサーバがあればメイン画面内のサーバ一覧に表示されます)続いて、右上の「追加」ボタンをクリックします。

すると追加するサーバの設定画面が表示されるので、先に決めておいたサーバのスペック通りに各項目を選択します。OSは「CentOS 7.3(1611) 64bit」(このチュートリアル作成時点における最新バージョン)を選択し、「サーバプランを選択」は「1GB/1仮想コア」を選びます。ちなみにここに書いてある「1GB / 1 仮想コア」といった表記は、左の「1GB」がメモリのサイズ、「1 仮想コア」はCPUを1個用意する、というイメージを持っていてください。(正確には、仮想コアの数=CPUの数ではありません。)

続いて「ディスクプランを選択」については「20 GB SSDプラン」(※Column参照)を選択します。

【Column】SSDプランと標準プランの違い

SSDプランは、ディスクにSSDを、標準プランはHDDを使用するプランです。ファイル転送速度やIOPS(毎秒の入出力処理)において高い性能が要求される場合はSSDプランを、比較的大容量のディスクを求める場合は標準プランを選択しましょう。

また、「接続先のネットワーク」は「インターネット」を選択しましょう。次回以降のチュートリアルの内容になりますが、「スイッチ」や「ルータ+スイッチ」を作成すると、「接続先」で「スイッチ」を選択したとき、作成済みのものが候補として選べます。

「サーバの設定」では、root権限のパスワードを設定します。このパスワードはサーバにログインする時に使います。「管理ユーザのパスワード」の部分に、自分でパスワードを入力しましょう。なお「公開鍵」は今回は「なし」を選びます。

「ホスト名」は、今回は「web-server」と入力します。「作成数」は1のままです。最後に「作成」ボタンをクリックして、作成準備が完了します。

以下のように操作確認のポップアップが出ます。「作成」を選択しましょう。

※注意※ここで作成したサーバは課金対象となりますので、あらかじめ無料クーポンの獲得登録を済ませていてください。

それから次のようにサーバ追加画面となります。しばらく待ち、全てのステータスが「待機中」から「成功」に変わったらサーバの作成が完了します。あとは「閉じる」をクリックします。

作成の完了後、動作確認をしましょう。左サイドメニューから「サーバ」をクリックします。下の図のように「web-server」が表示されます(ホスト名の横が緑になっているのは、サーバが起動している状態を示します)。

サーバの情報を確認する

サーバ一覧画面から「web-server」をダブルクリックしましょう。下図のようにサーバの詳細情報を確認できます。

サーバの起動をpingコマンドで確認する

現在、作成したサーバは起動中ですが、まだ起動している実感があまりないと思います。そこで、pingコマンドを使って起動状態を確認します。

pingコマンドとは、自分のPCと指定したサーバがネットワーク通信可能かどうかを確認するコマンドです(※Column参照)。コマンドラインツールより、ping (通信確認したいサーバのIPアドレス)ping teratail.comコマンドを打つと、指定したサーバやホストが正常に動いている場合、応答時間などのレスポンスが返ります。

【Column】pingコマンドと疎通確認

コマンドを実行しますと、正確にはICMPプロトコルのECHO_REQUESTというエコー要求をネットワーク上のホストや機器に対して送信します。そして、受信したホストはECHO_RESPONSEをpingの送信元に返します。この働きにより、送信元と送信先がお互い通信可能かどうかを確認する手段として一般的に使われます。ただし、ファイアウォールなどでICMPプロトコルが使えない場合は応答できません。

まずは先ほどのサーバ情報画面から、「NIC(1)」のタブをクリックしてください。そうすると「IPv4アドレス」の欄に今回作成したサーバのIPアドレスが記載されています。

ではご自身のPCから、コマンドラインツール(Macならターミナル、Windowsならコマンドプロンプトなど)を立ち上げて、ping (今作成したサーバのIPアドレス)を入力してください。

次のように応答時間が表示されていればOKです。
※お使いの環境により、パケットが送信し続けられることがありますが、その場合はCtrl+Cで止められます。

▶Windows(コマンドプロンプト)の場合

▶Mac(ターミナル)の場合

サーバの電源のon/offを切り替える

サーバ一覧画面より、「web-server」の左にある□をクリックしましょう。すると右上の「電源操作」をクリックできます。そこから「起動」あるいは「シャットダウン」を選択し、サーバの電源状態を操作できます。試しに「シャットダウン」を選択しましょう。

するとシャットダウンの確認画面になります。

右上の「シャットダウン」をクリックしましょう。操作確認画面のポップアップが表示されるので「実行」をクリックします。

次のようにサーバ シャットダウンのステータスが「成功」になると、サーバの電源が停止状態になります。

「閉じる」をクリックします。左上の更新ボタンを押すと情報が更新され、下記のように、サーバ名の横がグレー(停止状態)に変わります。

それでは、先ほどのpingコマンドを使い、サーバが応答するかどうかを確認しましょう。コマンドラインツール(Macならターミナル、Windowsならコマンドプロンプトなど)を立ち上げて、ping (今作成したサーバのIPアドレス)を入力してください。次のようにタイムアウト(サーバからの応答がない)が表示されます。

▼Windows(コマンドプロンプト)の場合

▼Mac(ターミナル)の場合

マップを確認する

最後に、クラウドインフラ入門者にとってはとてもありがたい"さくらのクラウド"の特長的な機能を紹介しておきます。GUIで自分が構築したクラウドインフラの状態を確認できる「マップ」機能です。

左サイドメニューの「マップ」を選択してください。すると下記のようにサーバが1台表示された図が表示されます。

こちらでは、インフラ全体の構成を図(マップ)として確認できます。マップ中には先ほど追加したサーバの情報が表示されています。そして、サーバは共有セグメントと接続しています。共有セグメントとはインターネットに接続し、他の利用者と共有しているネットワークです。
また、マップでは、マウスの操作でサーバの表示位置の移動や、スイッチ(次回以降で扱います)を用意するとネットワーク接続の繋ぎかえもできます。ぜひ少し触ってみてください。「GUIでインフラ構築できる」片鱗を体験できるため、ワクワク感が出てきます。

まとめ

今回の超入門編チュートリアルでは、サーバを「作る」体験をしました。
スイッチやブリッジなど、他の要素("さくらのクラウド"では「リソース」と呼びます)を作成時も、基本操作は同じです。いずれも、左サイドメニューからリソースを選択し、右上「追加」ボタンをクリック→必要事項を記入&設定→「作成」の流れです。このように、必要なリソースを作成しながら、マップで接続を調整する流れを、イメージとして覚えておいてください。

ここまでの内容を理解できているか確かめよう!

閉じる

第1問/3

超入門編チェックテスト

サーバを構築するリソースの中で、ネットワークに繋がる窓口の役割を持つのは次のうちどれでしょう?

以下から回答を選択してください

閉じる

第2問/3

超入門編チェックテスト

下記文章において、●●●●に入るのはどれでしょう?
『インフラ構築の基本は「●●●●」と「繋げる」』

以下から回答を選択してください

閉じる

第3問/3

超入門編チェックテスト

pingコマンドについて説明したものとして、誤っているものはどれでしょう?

以下から回答を選択してください

解説

NIC は "ネットワーク・インターフェース・カード" の頭文字です。インターフェースとは接点や境界の意味であり、NICは名前通りネットワークとサーバをつなげる窓口の役割です。

解説を閉じる

解説

クラウド上でのインフラ構築は、何もない所からのスタートです。そのため、サーバやスイッチなど、何らかのリソースを作成し、リソースをつなぎあわせてシステムを作ります。

解説を閉じる

解説

”Request timeout”(リクエスト・タイムアウト)とは、pingの応答リクエストに対して指定したサーバから一定時間の反応がなく、タイムアウトした状態です。

解説を閉じる

閉じる

解答結果

第1問
×不正解 解説を見る
第2問
×不正解 解説を見る
第3問
×不正解 解説を見る

次のチュートリアルにも挑戦してみよう!

思考するエンジニアのためのQ&Aサイト「teratail」について詳しく知る