【Azure】30分でAzureを体験 ~Apache(httpd)を立てるまで~

[Microsoft Learn](https://docs.microsoft.com/ja-jp/learn/)というMicrosoftの無償利用可能な学習プログラムを使って、Azureを体験してみます。

必要なものは2つです。

- マイクロソフトアカウント
- SSHクライアント

マイクロソフトアカウントが必要ですので、お持ちでない場合は[こちら](https://account.microsoft.com/account?lang=ja-jp)から作成してください。
SSHクライアントは例として、[Tera Term](https://eng-entrance.com/teraterm-install)を使用します。

# 準備

[Azure Virtual Machines の概要](https://docs.microsoft.com/ja-jp/learn/modules/intro-to-azure-virtual-machines/)というコンテンツをもとに、ubuntuの仮想サーバを構築します。Azureでは仮想サーバのことを、Azure VMと呼びます。

今回は、[ユニット3](https://docs.microsoft.com/ja-jp/learn/modules/intro-to-azure-virtual-machines/3-create-a-vm)からの手順を一部変更して進めていきます。

**※Azure VMについて詳しく知りたい方は、[ユニット2](https://docs.microsoft.com/ja-jp/learn/modules/intro-to-azure-virtual-machines/2-compile-a-checklist-for-creating-a-vm)を参照してください。**

## Azure体験環境をアクティブ化

Microsoft Learnで無償利用できるAzure環境は**サンドボックス**と呼ばれています。
時間制限と回数制限(10回/日)がありますが、マイクロソフトアカウントがあれば誰でも利用できます。

[ユニット3](https://docs.microsoft.com/ja-jp/learn/modules/intro-to-azure-virtual-machines/3-create-a-vm)を開いて下さい。

以下の画面が表示されると思うので、「サインインしてサンドボックスをアクティブにする」を押下してください。
Microsoftのログイン画面が出ると思いますので、ログインします。
![図1.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/70a905cf-b631-4255-e918-98300f749826.png)

ログインが完了すると、サンドボックスのアクティブ化が実行されますので、完了するまで待ちます。
![図2.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/1e39635c-916f-43f5-0118-6cca00ce5715.png)

「サンドボックスがアクティブ化されました!」と表示されたら完了です。
![図3.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/d8fd33f3-68e8-6632-0949-ee2774880cdf.png)

# Azureを体験

## Azure上にUbuntuサーバーをデプロイ

先ほどログインしたアカウントで、[Azure Potal](https://portal.azure.com/#home)を開きます。
![図4.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/3d353bda-f23a-5124-c36d-ba2c23b1dd17.png)

左上のAzureサービスの「リソースの作成」を押下します。
![図5.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/adb8383f-ebf1-152d-e789-2ce8baa5943b.png)

Marketplaceが開きます。ここでは、予め作成されたアプリケーションのイメージ(テンプレート)を探して使うことができます。
「Ubuntu Server 18.04 LTS」と入力してEnterを押下して検索します。
![図6.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/b11bc838-2107-2e66-f871-ef8829bec232.png)

検索結果から「Ubuntu Server 18.04 LTS」を探して押下してください。
![図7.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/c0d8a786-9f75-4569-7dc9-997009d187fe.png)

「作成」を押下してください。
![図8.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/8cac3c43-53e6-d3c0-d17d-9b4e3880ebf4.png)


仮想マシン(VM)の基本設定を行います。
以下の通りに設定してください。

| 設定名 | 値 |
|:-:|:-:|
| サブスクリプション  | Concierge Subscription  |
|  リソースグループ | learn-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx  |
|  仮想マシン名 | <任意の値>  |
| 地域  | (Asia Pacific) 東日本  |
|  可用性オプション |  インフラストラクチャの冗長性は必要ありません |
|  イメージ | Ubuntu Server 18.04 LTS - Gen1  |
| サイズ  | Standard D2s V3  |
| 認証の種類  | パスワード  |
| ユーザー名  | <任意の値>  |
|  パスワード | <任意の値>  |
|パブリック受信ポート|選択したポートを許可する|
|受信ポートを選択|HTTP(80), SSH(22)|
![図9.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/e76b4ef3-86c4-2d93-3e0d-c6a09d236e10.png)
![図10.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/939d6779-31e6-2793-3acf-7700dc6390ac.png)

他にも設定項目がありますが、今回はこれで完了です。
「確認および作成」を押下します。
![図11.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/1deac9f2-95e2-bbae-7830-1a8badf544be.png)
「検証に成功しました」と表示されたら、「作成」を押下します。
![図12.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/9d2c84b7-1884-b984-b5d5-e1de287e8e6e.png)

デプロイの状況が右上に表示されます。
詳しく状況を見るには通知マークを押下します。
![図13.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/7bbf0646-64c5-50bf-d3d1-96684ae76828.png)

「展開が成功しました」と表示されていることを確認して、「リソースに移動」を押下します。
![図14.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/d8f99662-4c66-00fe-96a4-ef06ee1f37b3.png)

SSH接続を行うために、パブリックIPアドレスをコピーしてください。
![図15.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/65f7dbf8-fa91-04e5-a268-565293c15e62.png)

## UbuntuサーバーにApacheをセットアップ

Tera Team(SSHクライアント)を起動して、先ほどコピーしたIPアドレスに、SSH接続を行います。
![図16.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/0339d726-4540-8a0b-1e82-dd746059177c.png)

警告が出たら、「続行」を押下してください。
![図17.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/284198b8-7894-15b1-170d-3ef606eef608.png)

ubuntuに設定したユーザー名とパスワードを入力してログインします。
![図18.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/61ecb8dd-4ebf-4b97-cfb5-de139b3ebce2.png)

以下が出れば成功です。
![図19.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/4176c9fd-a691-4147-ba07-ed317c2c7957.png)

以下のコマンドで、パッケージ一覧を更新します。

```bash:パッケージ一覧の更新
$ sudo apt update
```
![図20.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/e1516617-561f-0e75-22d0-037732f1ae5e.png)


以下のコマンドで、Apacheをセットアップしてください。

```bash:Apacheのセットアップ
$ sudo apt install apache2
```

::: note info
Do you want to continue? [Y/n]と聞かれたら、Yを入力してください。
:::
![図21.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/2948a013-6fc3-8093-5722-a61533c92349.png)

## 動作確認

完了したら、`http://<パブリックIPアドレス>:80`にブラウザでアクセスします。
以下の画面が開けば正常に動作しています！
![図22.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/b645fdfb-d346-753c-326c-f503aec38967.png)

# おまけ

IPアドレスだとわかりづらいので、DNS名を設定してみます。

[Azure Potal](https://portal.azure.com/#home)から、先ほど作成したubuntuの詳細を開いて、DNS名の「未構成」を押下します。
![図23.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/742a9461-ae6a-34ec-7814-e6952c16c14e.png)

DNS名ラベルに任意の値を入力して「保存」を押下してください。
![図24.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/c6fa43f7-df96-8dd5-60ad-793740824889.png)

設定が完了したことを通知から確認します。
![図25.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/a5233fbf-8b5b-28bf-2510-cb91fe90a179.png)

`<DNS名ラベル>.japaneast.cloudapp.azure.com`でブラウザからアクセスします。
IPアドレスでアクセスしたときと同じく、以下の画面が表示されれば成功です！
![図26.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/1166959/ba241f8f-12e8-804e-d717-cce13a5a5b7e.png)

# さいごに

Microsoft Learnの力を借りながら、UbuntuサーバーにApacheをセットアップしてみました。
Azureを全然知らなくても、簡単にデプロイまで出来てしまうのはとても便利ですね。

Microsoft Learnには、他にも良いコンテンツがあるので、ひと工夫加えながらAzureを学んでいきましょう。

# 参考

[演習 - Azure portal を使用して VM を作成する](https://docs.microsoft.com/ja-jp/learn/modules/intro-to-azure-virtual-machines/3-create-a-vm?source=learn)
[【ゼロからわかる】Teratermのインストールと使い方](https://eng-entrance.com/teraterm-install)
[Ubuntu 20.04にApache Webサーバーをインストールする方法](https://www.digitalocean.com/community/tutorials/how-to-install-the-apache-web-server-on-ubuntu-20-04-ja)