データディスクを Elastic Compute Service (ECS) インスタンスからデタッチすることで、他のインスタンスへのアタッチやリリースが可能です。データディスクのデタッチにより、柔軟なデータ移行とストレージリソースの効率的な管理が実現されます。
仕組み
データディスクのデタッチには、以下の 2 つの主要ステップが必要です。
オペレーティングシステム内のファイルシステムをアンマウントする:これは、USB ドライブを物理的に抜く前に安全に取り外す操作に相当します。この操作により、オペレーティングシステムにアンマウントコマンドが送信され、デタッチ中の読み取り/書き込み操作の中断によるデータ破損を防止します。
インスタンスからデータディスクをデタッチする:これは、安全に取り外された USB ドライブを物理的に抜く操作に相当します。この操作により、クラウドディスクと ECS インスタンス間の接続が切断されます。
注意事項
サブスクリプション課金のクラウドディスクは直接デタッチできません。デタッチする前に、まず課金方法を従量課金に変更してください。
ローカルディスクのデタッチはサポートされていません。
操作手順
データ損失を防ぐため、開始前に、データディスクに対するすべての読み取りおよび書き込み操作を一時停止し、そのディスクを使用しているプロセスを停止してください。
ステップ 1:オペレーティングシステム内のファイルシステムをアンマウントする
データ整合性を確保するため、まずオペレーティングシステムによるデータディスクへのアクセスを防止する必要があります。インスタンスの状態が 停止済み の場合、ステップ 2「データディスクのデタッチ」に進んでください。
Linux
以下の手順は標準的な Linux コマンドであり、CentOS、Ubuntu、Debian などの主要なディストリビューションに適用されます。
ECS インスタンスにログインします。
ECS コンソール - インスタンス に移動します。上部ナビゲーションバーで対象リージョンおよびリソースグループを選択します。
インスタンス詳細ページに移動します。接続 をクリックし、ワークベンチ を選択します。画面の指示に従ってログインし、ターミナルを開きます。
sudo df -hコマンドを実行し、FilesystemおよびMounted on列からデバイス名およびマウントディレクトリを取得します。この例では、対象デバイス
/dev/vdb1が/mntにマウントされています。$ sudo df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 868M 0 868M 0% /dev tmpfs 879M 0 879M 0% /dev/shm tmpfs 879M 508K 878M 1% /run tmpfs 879M 0 879M 0% /sys/fs/cgroup /dev/vda1 40G 2.4G 36G 7% / /dev/vdb1 40G 49M 38G 1% /mnt tmpfs 176M 0 176M 0% /run/user/0ファイルシステムをアンマウントします。
コマンド内の
<device name>変数を、前のステップで取得したデバイス名に置き換え、コマンドを実行します。sudo umount <device name>パーティションを正しくマウントできないことによるインスタンスの再起動失敗を防ぐため、自動マウント構成を確認・削除します。
cat /etc/fstabコマンドを実行し、ステップ 2 のマウントディレクトリ情報が存在するか確認します。存在しない場合は、「ステップ 2: データディスクのデタッチ」に進んでください。
存在する場合は、
sudo vi /etc/fstabコマンドを実行してファイルを編集します。マウントディレクトリを含む行の先頭に#を追加してコメントアウトし、ファイルを保存した後、「ステップ 2: データディスクのデタッチ」に進んでください。この例では、
UUID=32532395-51a7-46f7-b83d-181158b009a0 /mnt ext4 defaults 0 0をコメントアウトする必要があります。# /etc/fstab # Created by anaconda on Fri Jun 28 04:16:23 2024 # # Accessible filesystems, by reference, are maintained under '/dev/disk' # See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info # UUID=c8b5b2da-5565-4dc1-b002-2a8b07573e22 / ext4 defaults 1 1 UUID=32532395-51a7-46f7-b83d-181158b009a0 /mnt ext4 defaults 0 0 ~
Windows
本トピックでは Windows Server 2022 を例として説明します。
ECS インスタンスにログインします。
ECS コンソール - インスタンス に移動します。上部ナビゲーションバーで対象リージョンおよびリソースグループを選択します。
インスタンス詳細ページに移動します。リモート接続 をクリックし、ワークベンチ経由での接続 を選択します。接続方法を ターミナル接続 に設定し、ユーザー名とパスワードを入力してグラフィカルターミナルにログインします。
ディスクをオフラインにします。
アイコンを右クリックし、ディスクの管理 を選択します。ディスクの管理 ウィンドウで、対象ディスクを右クリックし、オフライン を選択します。

ステップ 2:データディスクのデタッチ
データディスクを ECS インスタンスからデタッチし、ディスクとインスタンス間の接続を切断します。
ECS コンソール - インスタンス に移動します。上部ナビゲーションバーで対象リージョンおよびリソースグループを選択します。
対象インスタンス ID をクリックしてインスタンス詳細ページに移動し、ブロックストレージ タブをクリックします。
対象ディスクの 操作 列で、デタッチ をクリックします。
表示されるダイアログボックスで、OK をクリックします。
デタッチ結果を確認します。
ディスクがデタッチされた後、ECS コンソール > ブロックストレージ > クラウドディスク ページに移動します。ディスクの ステータス が 未アタッチ に変更され、
acs:ecs:lastAttachedInstanceタグが付与されます。タグ値は、ディスクが最も最近アタッチされたインスタンスの ID です。

よくある質問
Linux インスタンスでデータディスクをデタッチした後に起動できなくなった場合の対処方法は?
この現象は、通常、
/etc/fstabファイルに残っているデタッチ済みデータディスクの自動マウントエントリが原因です。解決方法については、「Linux インスタンスの /etc/fstab ファイルの構成エラーによりシステム起動例外が発生した場合の対処方法」をご参照ください。
Windows インスタンスでクラウドディスクのステータスが デタッチ中 のままになる場合の対処方法は?
原因:これは、通常、ディスクのアンマウントを妨げるプロセスが存在する場合に発生します。解決方法は、インスタンスにログインして該当プロセスを手動で停止することです。
解決方法:
以下の手順では Windows Server 2022 を例として説明します。
ECS インスタンスにログインします。
ECS コンソール - インスタンス に移動します。上部ナビゲーションバーで対象リージョンおよびリソースグループを選択します。
インスタンス詳細ページに移動します。接続 をクリックし、ワークベンチ を選択します。接続方法を ターミナル に設定し、ユーザー名とパスワードを入力してグラフィカルターミナルにログインします。
ディスクを使用しているプロセスを特定します。
アイコンを右クリックし、イベントビューアー を選択します。イベントビューアーウィンドウで、 を選択します。
システムログで警告イベントを検索し、ディスクを使用しているプロセスの名前および PID を特定します。
この例では、プロセス名は OpenHardwareMonitor.exe、PID は 3980 です。

プロセスを終了します。
重要プロセスを終了すると、データ損失やサービス中断が発生する可能性があります。影響を十分に評価し、該当プロセスが重要でなく、保留中の書き込み操作がないことを確認してください。
アイコンを右クリックし、タスクマネージャー を選択します。詳細情報の表示 をクリックし、プロセス名または ID で終了するプロセスを特定します。
対象プロセスを右クリックし、タスクの終了 をクリックします。その後、再度データディスクをデタッチ してください。
ディスクが最後にアタッチされたインスタンスを確認する方法は?
未アタッチ ステータスのディスクを検索します。タグ 列で、
アイコンにカーソルを合わせます。ディスクにアタッチ情報がない場合、そのディスクはこれまで ECS インスタンスにアタッチされたことがありません。
ディスクにアタッチ情報がある場合、タグキー
acs:ecs:lastAttachedInstanceを確認します。その対応するタグ値が、ディスクが最後にアタッチされた ECS インスタンスのインスタンス ID です。
参考情報
DetachDisk API 操作を使用してデータディスクをデタッチします。
デタッチしたディスクを、同一可用性ゾーン内の別の ECS インスタンスにアタッチできます。
クラウドディスクが不要になった場合は、まず単一スナップショットを手動で作成してデータをバックアップし、その後ディスクをリリースできます。