近況
先日発売されたFF7 Rebirthをずっとプレイしています。
まだストーリーが80%くらいで、終わる気配がありません。終わらないでほしい。
2週目のハードモードクリアやトロコンまでやる予定なので、4月に入ってもまだまだ楽しみます!
デートイベントはユフィでした...
2週目はティファの好感度を上げに行かねば...
経緯
お客さんのAWS環境を運用・保守しているチームの方から「拡張したEBSのボリュームが認識されないんですけど、何か情報ありますか?」と投稿があったので、調べてみた際の話になります。
起こった事象と環境
起こった事象は記事の題名の通り、「拡張したEBSボリュームがOS上で認識されない」です。
詳しく書くと、AWS上に起動しているEC2インスタンスにくっついているEBSボリュームを拡張した際、AWSコンソール上では問題なく完了したけど、Windowsにログインし、[ディスクの管理]から見ても反映されていなかった...そうです。
なお、EC2作成時にくっついているボリュームをCドライブ、別のEBSボリュームをくっつけてDドライブとしているようです。(今回はDドライブの拡張時にうまくいかなかった)
また、環境としてはm6i.xlargeのインスタンスタイプで、古いインスタンスファミリーというわけでもありませんでした。OSはWindows Server 2016です。
調べたこと
AWSのEBS拡張手順に従っているか確認していきました。
↓EBS拡張手順↓
https://docs.aws.amazon.com/ja_jp/ebs/latest/userguide/recognize-expanded-volume-linux.html
また、[ディスクの管理]でディスクの再スキャンを実行しても特に状況は変わらずでした。
(普通の場合はこれで認識される)
いろんな記事を見ていくと、「EC2にちゃんとNVMeドライバー入っていますか?」といった内容がヒットしました。
https://repost.aws/ja/knowledge-center/ec2-windows-volumes-not-showing
なので、下記のコマンドを打ってもらいました。
(コマンドの内容は、 EC2に入っているENAとNVMeドライバーの一覧とバージョンを見るものです)
Get-WmiObject Win32_PnpSignedDriver | Select-Object DeviceName, DriverVersion, InfName | Where-Object {$_.DeviceName -like "*AWS*" -OR $_.DeviceName -like "*Amazon*"}
するとどうやら、ENAしか入っていないようでした。
なので、NVMeドライバーが認識されていないことが原因だとわかりました。
原因と解決法
【原因】
まずは事象が起きた原因ですが、おそらくこのEC2はオンプレからAWS MGNで移行してきた仮想マシンでした。
なので、NVMeドライバーがもともと入っていませんでした。
【解決法】
ずばりEC2の再起動です。AWSのドキュメントにもしっかり記載されていました。
以下抜粋です。
AWS NVMe ドライバーがないインスタンスで NVMe ボリュームのサイズを増やす場合、インスタンスを再起動して Windows を有効にし、新規のボリュームサイズを表示する必要があります。
再起動を試せなかった原因としては、お客さんの本番環境のEC2であることから、無許可に再起動できなかったためです。
幸い、このEC2はEventBridgeのスケジュール機能で毎日再起動するように設定してあったので、次の日には拡張したディスクが認識されていました。
(NVMeドライバーも認識されていました)
念のため、NVMeドライバーに関するAWSのドキュメントURLも置いておきます。
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/WindowsGuide/aws-nvme-drivers.html
さいごに
最近AWSに触れていなかったので、また触っていこうかと思います。
(早くControl Towerの記事も書かねば...)
それではまだどこかで。