~ディスク追加・削除とリバランスの基礎を学ぼう~
Oracle ASM(Automatic Storage Management)では、ディスクグループに対して稼働中でもディスクの追加・削除が可能です。これは、運用中のストレージ容量の増減やメンテナンスを柔軟に行うために重要な機能です。
さらに、ディスク構成を変更した際に自動的に実行されるリバランス処理により、ASMは常に最適なストレージ配置を維持します。
本記事では、ディスクの追加・削除方法と、リバランスの仕組みと確認方法について簡潔に解説します。
💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?
Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?
■ 想定環境
- ASMディスクグループ名:
ARCH - 既存ディスク:
/dev/sdc - 追加予定ディスク:
/dev/sdd - gridユーザー使用、udev設定済み
■ 1. 現在のディスクグループ構成を確認
SQL> SELECT name, state, type, total_mb, free_mb
2 FROM v$asm_diskgroup
3 WHERE name = 'ARCH';
SQL> SELECT group_number, disk_number, name, path
2 FROM v$asm_disk
3 WHERE group_number = (SELECT group_number FROM v$asm_diskgroup WHERE name = 'ARCH');
■ 2. ディスクを追加する
◾ 追加前にディスクの状態を確認
SQL> SELECT path, header_status, mount_status
2 FROM v$asm_disk
3 WHERE path LIKE '%sdd%';
PATH HEADER_STATUS MOUNT_STATUS
---------- -------------- -------------
/dev/sdd CANDIDATE CLOSED
◾ ディスクグループに追加
SQL> ALTER DISKGROUP ARCH ADD DISK '/dev/sdd';
✅ このコマンド実行と同時に リバランス処理が自動開始されます。
■ 3. リバランスとは?
リバランス(Rebalance) とは、ディスクグループ内のデータを、構成変更後も均等に分散させるための再配置処理です。
🔧 例:
- 新しいディスクを追加した場合 → データを新しいディスクにも分散
- ディスクを削除した場合 → 削除されるディスクのデータを他のディスクに移動
Oracle ASMが自動でこの処理を実行するため、運用中でも手動でデータを移す必要はありません。
■ 4. リバランス進行状況を確認する
SQL> SELECT operation, state, power, actual, sofar, est_work, est_minutes
2 FROM v$asm_operation;
出力例:
OPERATION STATE POWER ACTUAL SOFAR EST_WORK EST_MINUTES
--------- ------ ------ ------ ------ -------- -----------
REBAL RUN 11 2 2 4 3
💡 リバランスが完了するとこのビューは空になります。
💰 【PR】Oracleエンジニアの市場価値、調べてみませんか?
Oracleのスキルは需要が高く、特定の資格や経験を持っていると年収が大幅にアップするケースがあります。まずはIT専門のエージェントで非公開求人をチェックしてみませんか?
■ 5. ディスクを削除する
◾ 削除対象のディスク名を確認
SQL> SELECT name, path
2 FROM v$asm_disk
3 WHERE path = '/dev/sdc';
◾ ディスク削除
SQL> ALTER DISKGROUP ARCH DROP DISK ARCH_0000;
📌 ディスク名は
v$asm_disk.nameの値を使用します。
削除時もリバランスが自動実行され、データは他のディスクへ安全に再配置されます。
■ テキスト図:リバランス処理のイメージ
[追加時]
+--------+ +--------+
| /sdc | | /sdd | ← 新規
+--------+ +--------+
↓ 自動分散
+--------+---------+--------+
| /sdc | 50% | /sdd | 50%
[削除時]
+--------+---------+--------+
| /sdc | 50% | /sdd | 50%
↓ リバランス
+----------------------------+
| /sdd | 100%
■ 6. まとめ:ディスク追加・削除の流れ
| 操作 | コマンド例 |
|---|---|
| ディスク確認 | SELECT * FROM v$asm_disk |
| 追加 | ALTER DISKGROUP ARCH ADD DISK '/dev/sdd'; |
| 削除 | ALTER DISKGROUP ARCH DROP DISK <ディスク名>; |
| リバランス進捗 | SELECT * FROM v$asm_operation; |
■ よくある質問
| 質問 | 回答 |
|---|---|
| リバランスの影響は? | CPUやI/Oに影響するが、powerパラメータで制御可能 |
| リバランスはキャンセルできる? | 基本的にはできない。完了を待つ |
| ディスク追加後すぐに使える? | リバランス進行中でも使用可能だが、完了後が望ましい |
[参考]
Clusterware管理およびデプロイメント・ガイド




コメント