こんにちは、ラーニングエクスペリエンス課の小倉です。
私は相変わらず、AWSトレーニングの講師をしています。
サーバーワークスでは、自由に勉強会を開催してスキルアップをしています。その中で私は毎週月曜日の朝、「30分AWSハンズオン」という30分でできるAWSハンズオンを1年以上継続して開催しています。その内容をブログで定期的に紹介していきます。AWSをご利用のみなさまのスキルアップにお役立ていただければと考えています。
今回は、「Amazon EBSのディスクサイズの拡張をしてみよう(Windows)」をやります。
ハンズオンの内容は、EC2の作成、EBSの拡張、EC2のOSにログインしてファイルシステムの設定です。AWS上の操作だけでEBSのディスクサイズは簡単に拡張できるのですが、OSが拡張したディスクを認識しないと利用することができないため、OSでの設定も必要となります。またディスクサイズの拡張はEC2(仮想サーバー)を起動したまま(無停止)でできます。
使用するAWSサービス
Amazon EBS
仮想サーバーで使うことができるストレージ(データを保存できるところ)です。AWSでは仮想サーバーを停止することなくEBSのディスクサイズを拡張することができます。ただし、AWSの機能では拡張はできますが縮小はできませんので、拡張のしすぎにはご注意ください。
参考サイト: [AWS Black Belt Online Seminar]Amazon Elastic Block Store
Amazon VPC
VPCとはAWS内で作成できる仮想ネットワークです。今回はデフォルトVPC(AWSアカウントを作成したときに最初からあるVPC)を使用します。もしデフォルトVPCを削除してしまった方は、以下の手順を参考にしてデフォルトVPCを作成してください。
参考サイト: [AWS Black Belt Online Seminar]Amazon VPC
Amazon EC2
AWS上に仮想サーバーを提供するためのサービスです。インスタンスという単位で仮想サーバーが管理され、マネジメントコンソールから数クリックで、VPCのサブネット内にすぐに作成することができます。
参考サイト: [AWS Black Belt Online Seminar]Amazon EC2
構成図
今回の構成図です。
EC2で使用しているEBSのディスクサイズを拡張します。
ハンズオン手順
1. EC2を作成します
AWSマネジメントコンソールにログインし、画面上の検索窓で「EC2」と入力し、サービスの下に表示された [EC2] をクリックしEC2のコンソール画面を開きます。また今回のハンズオンは東京リージョンで実施しますので、右上のリージョンが東京になっていない場合は東京に変更しておきましょう。
ナビゲーションペイン(左メニュー)の [インスタンス] をクリックしてインスタンス一覧の画面を表示した後、右上の [インスタンスの作成] をクリックします。
インスタンスを起動の画面が表示されますので、どのようなEC2をつくるのかを設定していきます。
名前とタグでインスタンスの名前をつけます。今回は yyyymmdd-handson-ec2 としておきます(yyyymmdd は年月日で、例えば2023年1月24日なら 20230124 となります)。
画面を下にスクロールして、アプリケーションおよび OS イメージ (Amazon マシンイメージ) で、[Windows] をクリックします。
ここで起動するOSを選択できます。Windowsのなかでも Microsoft Windows Server 2019 など他のバージョンを選択することもできます。今回は変更せずに Microsoft Windows Server 2022 Base のままにしておきます。
画面を下にスクロールして、インスタンスタイプは、t2.micro のままにしておきます。
ここではインスタンスのスペックを指定しています。スペックが低いと価格が安く、スペックが高いと価格も高くなります。インスタンスタイプの中に料金が書かれていますので、間違えて料金の高いインスタンスを作ってしまうと高額請求がきてしまうかもしれませんので、注意しましょう。
画面を下にスクロールして、Key pair (login) でキーペアの指定をします。キーペアの作成手順を記載しますが、すでにキーペアを作成したことのあるかたは、キーペア名をクリックして選択することで、作成済みのキーペアを使用することができます。
[Create new key pair] をクリックしてキーペアを作成します。
キーペアを作成の画面が表示されるので、キーペア名を入力して、[キーペアの作成] をクリックします。クリックすると秘密鍵(<キーペア名>.pem)がダウンロードされます。この秘密鍵はインスタンスにログインするときに使いますので、漏洩しないよう厳重に保管しておきましょう。
作成されたキーペアが選択されていることを確認します。
画面を下にスクロールして、ネットワーク設定の横にある [編集] をクリックします。
ネットワーク設定が編集できようになったら、まず VPC をデフォルトVPCにします。VPCの右に (デフォルト) と記載されていたらOKです。サブネットとパブリックIPの自動割り当ては変更せずそのままにしておきます。
次にセキュリティグループの設定をします。セキュリティグループは仮想ファイアウォールです。ルールに合致する通信のみ許可することができます。
セキュリティグループを作成するを選択し、セキュリティグループ名と説明を入力します(例: yyyymmdd-handson-ec2-sg)。インバウンドセキュリティグループのルールでソースタイプを 自分のIP に変更します。
インバウンドは外からインスタンスへの通信を表しています。自分のIPはみなさんのパソコンがインターネットに接続するときに使っているグローバルIPアドレスを設定しています。ですから、このルールではみなさんのパソコンからインスタンスへRDP(Remote Desktop)通信を許可する設定をしています。
画面を下にスクロールして、ストレージを設定 は変更せずにそのままにしておきます。
このストレージがあとでディスクサイズを拡張するEBSです。
ここまで入力できたら画面右か下にある [インスタンスを起動] をクリックします。
クリックするとインスタンスの作成がはじまり、5分程度で利用可能になります。
以下の画面が表示されるので、 [すべてのインスタンスを表示] をクリックし、インスタンス一覧の画面を表示します。
作成したインスタンスのステータスチェックが、2/2のチェックに合格しました と表示されれば起動完了です。
これでEC2の作成が完了しました。次はEBSの拡張を行います。
2. EBSを拡張します
EBSボリュームを表示します。
先ほど作成したインスタンスにチェックを入れ、画面下の ストレージ タブをクリックし、ボリュームIDの下のリンクをクリックします。
表示されたEBSボリュームにチェックを入れ、[アクション] - [ボリュームの変更] をクリックします。
ボリュームの変更の画面が表示されるので、サイズを 30 → 40 へ変更し、右下の [変更] をクリックします。
確認の画面が表示されるので、右下の [変更] をクリックします。
ボリューム一覧より、サイズが 40 、ボリュームの状態が 使用中 になっていることを確認します(使用中になるまで数分かかります)。
これでEBS自体のディスクサイズの拡張は完了しました。
ただ、ディスクサイズは増えているのですが、OSが増えた分を認識していないため、最後はOSにログインして作業を行います。
3. OSでファイルシステムの設定をします
ファイルシステムの設定はWindows Serverにログインして作業します。まずは、Windows Serverにログインするためのユーザー名、パスワード、接続先IPアドレスを確認します。
ナビゲーションペイン(左メニュー)の [インスタンス] をクリックしてインスタンス一覧の画面を表示した後、先ほど作成したインスタンスにチェックを入れ、画面上部の [接続] をクリックします。
インスタンスに接続の画面が表示されるので、RDPクライアント タブをクリックし、[パスワードを取得] をクリックします。
Windowsパスワードを取得の画面が表示されるので、[プライベートキーファイルのアップロード] をクリックし、EC2を作成したときに使用したキーペアの秘密鍵(<キーペア名>.pem)を選択します。選択後、右下の [パスワードを復号化] をクリックします。
インスタンスに接続の画面が表示され、パスワードが表示されます。パスワードを確認したら右下の [キャンセル] をクリックします。
インスタンス一覧画面で、作成したインスタンスにチェックを入れ、詳細 タブをクリックし、パブリックIPv4アドレス を確認します。
ユーザー名、パスワード、接続先IPアドレスの情報を取得したので、Windows Serverにログインします。
使用しているPCがWindowsで説明します。リモートデスクトップ接続のアプリがインストールされているので、アプリを起動します。デスクトップの左下の検索窓に RDP と入力して、表示された リモートデスクトップ接続 をクリックします。
リモートデスクトップ接続のログイン画面が表示されるので、コンピューターに インスタンスのIPアドレスを入力して、[接続] をクリックします。
資格情報を入力してくださいの画面が表示されます。ユーザー名がAdministratorであればそのままパスワード欄に取得したパスワードを入力すればログインできます。ユーザー名が違う場合(画像は小倉大がユーザー名)は、[その他] をクリックして展開し、[別のアカウントを使用する] をクリックします。
ユーザー名が入力できるようになるので、先ほど取得したユーザー名、パスワードを入力して [OK] をクリックします。
リモートデスクトップ接続の警告が表示されますが、[はい] をクリックしてログインを進めます。
Windows Serverにログインすることができました。新しく作成したWindows Serverにログインすると右にNetworksが表示されますので、[No] をクリックします。
ディスクの状態を確認します。タスクバーにある エクスプローラー のアイコンをクリックしてエクスプローラーを開きます。This PC をクリックして現在のCドライブのディスク容量を確認します。
EBSのサイズは30→40に変更しましたが、まだOS上では認識されていない状態です。確認が終わったら右上の×をクリックしてエクスプローラーを閉じます。
拡張したディスクを認識させます。左下のウインドウズのマークを右クリックし、[Disk Management] をクリックします。
Disk Managementの画面が表示されます。Cドライブの隣に認識していない10GBが表示されているのが確認できます。(C:)で右クリックをして、[Extend Volume...] をクリックします。
Extend Volume Wizardが開くので、[Next]をクリックして画面を進め、最後の画面で[Finish] をクリックします。途中のパラメータは、追加したディスクをすべて拡張する設定になっているので、変更の必要はありません。
Disk Managementの画面を確認すると(C:)が40GBになっています。
もう一度エクスプローラーで確認してみるとディスクサイズが増えていることが確認できます。
これでOS側でも追加したディスクを認識して使えるようになり、EBSディスク拡張作業は完了しました。左下の [ウインドウズのマーク] - [Administrator] - [Sign out] をクリックし、Windows Serverからサインアウトします。サインアウトするとリモートデスクトップ接続が切断されます。
4. 後片付け
AWSのリソースは従量課金のため、作ったまま放置しておくとお金がかかってしまいます。そのため、ハンズオンが終わったら不要なリソースは削除しておきましょう。
EC2インスタンスを削除します。
EC2のコンソール画面を開き、ナビゲーションペイン(左メニュー)の [インスタンス] をクリックしてインスタンス一覧を開きます。今回作成したインスタンスにチェックを入れ、右上の [インスタンスの状態] - [インスタンスの終了] をクリックします。
確認の画面が表示されるので、 [終了] をクリックします。
インスタンスの削除が始まり、数分経つとインスタンスの状態が終了済みに変わり、削除が完了します。また今回はEBSも一緒に削除されています。
セキュリティグループを削除します。セキュリティグループは無料で使用できるので、削除しなくても影響はありません。ただ、不要な設定を残し続けると、後々使いにくくなりますので、削除しておきましょう。
EC2のコンソール画面で、ナビゲーションペイン(左メニュー)を下にスクロールして、[セキュリティグループ] をクリックします。セキュリティグループ一覧の画面から削除するセキュリティグループにチェックを入れ、上の [アクション] - [セキュリティグループを削除] をクリックします。
確認画面が表示されるので、 [削除] をクリックします。
削除が完了しました。
これで今回のハンズオンは以上となります。
まとめ
今回はEBSのディスクサイズの拡張を行いました。長くEC2を利用しているとディスクを使い切ってしまうことがありますが、EBSはEC2を停止せずにディスクサイズを拡張できることがこのハンズオンで確認できました。この手順を参考に本番稼働しているEC2でも同様に対応していただければと考えています。
社内で毎週実施している30分AWSハンズオンの内容をブログに書き出しました。社内であれば実施しているハンズオンは録画しているので、動画を見ればよいのですが、動画をそのまま外にだすことができないのでブログにしました。引き続き、いろいろなAWSハンズオンを書いていきますので、AWSをご利用のみなさまのスキルアップにつながれば幸いです。
参考サイト
小倉 大(記事一覧)
アプリケーションサービス部ラーニングエクスペリエンス課 札幌在住
AWSトレーニングの講師をしています。
最近は5歳の息子と遊ぶのが楽しいです!
Twitter: @MasaruOgura