閲覧ありがとうございます。本記事は旧仕様のため、更改版は以下になります。
はじめまして、この春に新卒で入社した新米です。今回はこれから取り扱うであろう技術にふれるため、Azureに仮想マシン(CentOS)を構築した際に行った手順、初心者である自分が感じた疑問など、投稿させていただきます。
目的とAzureについて
今回の目的は Azure に仮想マシンを構築することです。使用OSは CentOS を採用しました。
なぜ、CentOS なのかは SIOS の一員だからです。
Azureとは
Azure は Microsoft が提供しているクラウドソリューションです。
クラウドというと、ただデータを保存するだけと思われている方もいるかもしれませんが、現在ではクラウド上で仮想サーバを立ち上げられます。
仮想マシンは Azure が提供しているクラウドサービスの一つで、マシンインスタンスや OS をある程度自由に設定できます。
仮想マシンの構築に必要なもの
今回、Azureに仮想マシンを構築するのに必要なものは
1. Microsoft アカウント
2. Microsoft Azure サブスクリプション
3. ターミナルソフト
この3つとなります。上の2つはAzureを利用するため必要なものです。
サブスクリプションとは、Azureの利用権利をさします。
もし、この2つをお持ちでない場合、下記のURLにて登録を行うことができます。
https://azure.microsoft.com/ja-jp/pricing/free-trial/
また、Azureは1か月間の無料評価期間があるため、試しに利用してみてから継続するか、しないかを決めることができます。
最後のターミナルソフトは構築した仮想マシンを手元のデバイスから操作する際に使用します。
ターミナルソフトは数多くありますが、今回はオープンソースで開発されている「 Tera Term 」を使用しています。「 Tera Term 」は下記のURLよりダウンロード可能です。
https://osdn.jp/projects/ttssh2/
仮想マシンの構築手順
では、実際に仮想マシンを構築していきましょう。
Azure 管理ポータルの「スタート画面」にアクセス
まず、 Azure 管理ポータルの「スタート画面」にアクセスしましょう。
下記のURLにアクセスし、Azureにサインインすると管理ポータルの「スタート画面」にアクセスできます。
この画面が管理ポータルの「スタート画面」になります。
新たなリソースグループを作成
リソースグループとは、これから構築されていく仮想マシンや仮想ネットワークなどをまとめて管理するためのグループのことです。
すでに、リソースグループを作成してあり、その中に仮想マシンを構築する場合はこの手順は不要です。
では、リソースグループを作成していきましょう。
まず、左上にある「新規」をクリックし、その中の「管理」を選択します。
そうすると、「リソースグループ」の項目が出てきます。
これをクリックすると、リソースグループの設定画面が表示されますので、設定を入力して「作成」をクリックします。
今回の設定は以下のようになります。
リソースグループ名 | SinmaiTestRGroup (任意の名前を付ける) |
サブスクリプション | 入力されているものをそのまま使用 |
リソースグループの場所 | 東日本 (近いデータセンターを選択) |
ダッシュボードにピン留め | ノーチェック (チェックした場合このグループがダッシュボードに表示されます。) |
注:1か月の評価版の場合、東日本のデータセンターを選択できません。
その場合、西日本を選択するのをおすすめします。
これでリソースグループが作成されました。次は仮想ネットワークを作成していきます。
仮想ネットワークを設定
仮想マシンを所属させる仮想ネットワークを作成します。
まず、左上にある「新規」をクリックし、「ネットワーキング」を選択します。
そうすると、「Virtual Network」の項目が出てきます。
これを選択すると、作成画面が表示され、デプロイモデルを選択します。ここでは、「リソースマネージャー」を選択します。
リソースマネージャーとは、先ほど作成したリソースグループを一元管理してくれる存在です。データだけでなく、IPアドレスなども管理してくれます。
リソースマネージャーを選択したら、「作成」をクリックします。
次に、仮想ネットワークの設定画面が表示されますので設定を入力して、作成をクリックして作成を行います。
今回の設定は以下のようになります。
名前 | SinmaiTestVNet (任意の名前を付ける) |
アドレス空間 | 10.6.0.0/16 (仮想ネットワーク全体のアドレス空間) |
サブネット名 | SinmaiTestSubVNet (任意の名前を付ける) |
サブネットアドレス範囲 | 10.6.1.0/24 (サブネットのアドレス空間) |
サブスクリプション | 入力されているものをそのまま使用 |
リソースグループ | SinmaiTestRGroup (先ほど作成したリソースグループを設定) |
場所 | 東日本 (近いデータセンターを選択) |
ダッシュボードにピン留め | ノーチェック (チェックした場合この仮想ネットワークがダッシュボードに表示されます。) |
これで仮想ネットワークが作成されました。いよいよ仮想マシンを構築しましょう。
サブネットについて
サブネットとは、一つの仮想ネットワークの中に複数のネットワークを構築したい場合、役に立つ機能です。今回は仮想マシンを1つしか構築しないため、便利さを感じませんが、仮想マシンが増えたとき、サブネットを設定しておくと、IPアドレスの管理がとても楽になります。
仮想マシンをCentOSで構築する
今回は、CentOSを搭載した仮想マシンを構築していきます。
まず、左上にある「新規」をクリックし、「Virtual Machines」を選択します。
そうすると、おすすめアプリが表示されますが、残念ながらCentOSがないので「すべて表示」をクリックします。
そうすると、様々なサービスの一覧が表示されます。ここで上の方の検索にCentOSと入力し、検索結果から自分がインストールしたいバージョンを選択します。
私は、当時の最新バージョン(CentOS-based 7.2)を選択しました。
選択すると作成画面が表示されます。ここでデプロイモデルを選択します。
ここでは、リソースマネージャーを選択します。
次に、仮想マシンの基本設定画面が表示されますので、入力していきましょう。
すべての入力を終えたら「 OK 」をクリックします。
今回の設定は以下のようになります。
名前 | SinmaiTestMachine (任意の名前を付ける) |
ユーザー名 | SinnmaiAdmin (管理者のユーザー名となります。) |
認証の種類 | パスワード (認証の種類の設定です。今回はパスワードを選択します。) |
パスワード | 任意のパスワード (管理者のパスワードを設定してください。 なお、大文字、小文字、数字を一文字ずつ含む必要があります。) |
サブスクリプション | 入力されているものをそのまま使用 |
リソースグループ | SinmaiTestRGroup (先ほど作成したリソースグループを設定) |
場所 | 東日本 (近いデータセンターを選択) |
次に、仮想マシンのサイズを設定します。ここで「すべて表示」をクリックします。
すると、インスタンスの種類がすべて表示されます。
インスタンスとは、簡単に表すと仮想マシンのスペックを決められます。
種類、グレード共に、様々なニーズに答えられるようになっています。
価格も変わってくるので、自分が求めているスペックに合わせて選択してください。
インスタンスの種類は以下のURLで確認できます。
https://azure.microsoft.com/ja-jp/pricing/details/virtual-machines/
今回は Standard の A1 を選択します。
選択したら、「選択」をクリックします。
次に、仮想マシンの設定を行っていきます。
設定画面が表示されますので、入力していきましょう。
すべての入力を終えたら「 OK 」をクリックします。
今回の設定は以下のようになります。
ディスクの種類 | Standard (インスタンスによって選択できる項目が違います。種類: Standard:HDD , Premium:SSD) |
ストレージアカウント | 入力されているものをそのまま使用 |
仮想ネットワーク | SinmaiTestVNet (仮想マシンが接続する仮想ネットワークを設定します。) |
サブネット | SinmaiTestSubVNet (仮想ネットワークのサブネットを指定します。) |
パブリックIPアドレス | 「新規作成」→ Sinmai-IP(任意) (仮想マシンに割り当てるパブリックIPアドレスを設定します。) |
ネットワークセキュリティグループ | 「新規作成」→ Sinmai-NSG(任意) (仮想マシンのファイアウォールの規則です。) |
診断 | 有効 (1分ごとに様々な項目で状態を解析してくれます。) |
診断ストレージアカウント | 入力されているものをそのまま使用 |
可用性セット | なし |
可用性セットについて
可用性セットとは、複数の仮想マシンを構築した際に障害や計画済みメンテナンスなどで、それらが同時に停止することをさけることができる機能です。
複数の可用性セットに仮想マシンを振り分けることで、停止しにくいシステムを構築することができます。
設定項目がすべて入力されていることを確認したら「 OK 」をクリックします。
すると、概要が表示されますので、改めて確認し、問題がなければ「 OK 」をクリックします。
これで、仮想マシンが構築されました。さっそく手元のデバイスから操作してみましょう。
(仮想マシンの構築には、時間がかかる場合があります。)
仮想マシンにターミナルソフトで接続する
構築した仮想マシンには、手元のデバイスからターミナルソフトを用いてSSH接続することで操作を行います。
SSH接続とは、簡単に表すと通信の内容を暗号化することで機密を維持したり、不正なアクセスを防ぐ通信方式です。
今回はターミナルソフトとして「 Tera Tarm 」を使用して接続していきます。
仮想マシンの「パブリックIPアドレス」を調べる
SSH接続を行うためには、仮想マシンのIPアドレスを知らなければなりません。
そのため、まずIPアドレスを調べましょう。
Azureの仮想マシンには、仮想ネットワーク内で扱われる「プライベートIPアドレス」と外部のネットワークに対して扱われる「パブリックIPアドレス」の2種類が割り当ててあります。
今回必要なのは「パブリックIPアドレス」ですので調べていきましょう。
まず、「スタート画面」から左側の「 Virtual Machines 」を選択します。
そうすると、仮想マシンの一覧が表示されますので構築した仮想マシンをクリックします。
(場合によってはスタート画面に仮想マシンが表示されていることもあります。
その場合、そちらをクリックしても問題ありません。)
クリックすると、仮想マシンの「要点」が表示され、「パブリックIPアドレス」が確認できます。
これを、メモしておきましょう。
仮想マシンのIPアドレスについて
Azureに割り当てられる2つのIPアドレスは常に同じIPアドレスが割り当てられていません。
仮想マシンを停止し、起動するたび新たなIPアドレスが割り当てられます。そのため、SSH接続を行うためには、起動するたび、「パブリックIPアドレス」を調べる必要があります。
しかし、固定のIPアドレスを割り当てることもできます。詳しくはこの章最後に記述します。
「 Tera Tarm 」で仮想マシンに接続する
本来、SSH接続を行う場合は22番のアクセスポートを解放する必要があります。
しかし、Azureの仮想マシンでは、デフォルトで22番ポートが解放されています。
そのため、なにか特別な操作は必要ありません。
では、「 Tera Tarm 」を用いて仮想マシンに接続してみましょう。
まず、「 Tera Tarm 」を起動し「 file 」から「 new connection 」を選択します。
表示された画面の「 Host 」の項目に先ほど調べた「パブリックIPアドレス」を記述し、「 OK 」をクリックします。
「 TCP port 」などは変更する必要はありません。
「 OK 」をクリックすると、セキュリティ警告が表示されるので「 Continue 」をクリックします。
「Continue」をクリックすると、「 SSH Authentication 」が表示されますので、入力欄に先ほど作成した仮想マシンのユーザー名とパスワードを入力し、「 OK 」をクリックします。
そうすると、CentOS のコンソール画面が表示されます。
あとは、自分の好きなように仮想マシンをカスタマイズしていけばいいと思います。
IPアドレスの固定化
「パブリックIPアドレス」は動的割り当てになっており、ユーザーが値を指定することはできません。そのため、常に同じIPアドレスで仮想マシンにアクセスしたい場合は、「インスタンスレベルパブリックIP 」を取得し、それを用いることで常に同じIPアドレスで仮想マシンにアクセスできます。「インスタンスレベルパブリックIP 」については下記のURLに詳しい説明が書かれています。
https://azure.microsoft.com/ja-jp/documentation/articles/virtual-networks-instance-level-public-ip/
最後に
今回は、自社が扱っている技術に触れるためにAzureの仮想マシンを構築しました。
自分のデバイスの中に仮想マシンを構築するのと比較してもかなり簡単に構築することができるのでみなさんもチャレンジしてみてください。
また、この記事では、ほとんど触れませんでしたが、Azureには優れた機能がたくさんあるのでそれらにも是非、触れてみてください。