今日は満月だった。

毎日を楽しく(。・ω・。)


【さくらクラウド】CentOS7 ディスク拡張で失敗する


f:id:truth_clothes:20180508120342j:plain

↑アネモネ

 

さくらクラウドにて、CentOS7の場合?ディスク拡張で失敗するようなので、やり方を記載しておきます。

 

knowledge.sakura.ad.jp

↑この手順でやっても、「失敗」となり、作成できません。

アーカイブのタグに、「@size-extendable」を入力しても駄目でした。

 

問い合わせてみたところ、以下の回答がありました。

アーカイブからのディスク作成を何度行っても「失敗」となるとの事で、
下記の方法を提案させて頂きます。
お手数にはなりますが、有効状態が「失敗」のディスクは削除いただけますでしょうか。
また、予め、アーカイブのタグ [@size-extendable] は削除をお願いします。

 ------------------
1)新しいディスクの作成を行う
  ▼ディスクの作成
  https://manual.sakura.ad.jp/cloud/storage/disk.html#id3
  ディスクソース → 「マイアーカイブ」を選択
  マイアーカイブ選択 → インストールしたい作成済みアーカイブを選択
  ディスクサイズ → 希望容量のディスクサイズを選択
  接続先サーバー → 任意
  ディスク修正 → チェック不要
  説明、タグ、アイコン は任意入力
  以上を設定し、作成ボタンを押下
2)コントロールパネル > ディスク からインストール済みディスクの詳細画面を開き
  右上の「その他のディスクの操作」から「パーティションサイズの拡張」
  https://manual.sakura.ad.jp/cloud/storage/modifydisk/resize-partition.html
  を実施(※事前に記事内容をご一読ください)
 ------------------
上記操作を行ったディスクをサーバーに接続いただき、パーティションが拡張されたかの
確認をお願いいたします。

※上記手順で作成されたディスクのネットワーク設定は、該当アーカイブ作成上の設定のままです。
 起動ディスクとして使用される場合は、ネットワーク設定など適宜修正をお願いします。

 

これを実行してみたところ、

「パーティションサイズの拡張」で、以下のエラーとなりました。

エラー
PUT: cloud/1.1/disk/11111111111/resize-partition

APIエラーメッセージ
サービスが利用できません。ディスクにパーティションが存在しないため、パーティションサイズの最適化が利用できません

 

再度問い合わせてみたところ、以下の回答がありました。

 

「パーティションサイズの拡張」を行った際に上記のメッセージが表示される場合は

▼パーティションサイズの拡張
https://manual.sakura.ad.jp/cloud/storage/modifydisk/resize-partition.html

に記載されている条件に合致していない可能性が考えられます。

ディスク作成のインストール元のアーカイブがさくらのクラウドのパブリックアーカイブから
作成されたディスクではない場合や、
アーカイブ自体が破損している可能性が考えられます。

[resize2fs] につきましては、弊社で動作確認を行っておりません。
お客様側でバックアップを取ったうえで、お試しいただければと存じます。

内容についてのサポートは行っておりませんが、参考までにさくらのナレッジの
記事を紹介させて頂きます。

▼resize2fsでディスク容量を拡張する
https://knowledge.sakura.ad.jp/925/

また、別の方法として、「Parted Magic」を使用したパーティションの変更方法を
紹介させて頂きます。
※ [Parted Magic] で起動する前に拡張させたいディスクを2番目のディスクとして
 接続しておく必要があります。
 そうする事で、 [vdb] という名前で認識されるかと存じます。

 ------------------
 ※本手順は「Parted Magic」利用方法の一例となります。より詳細な
  手順についてお手数ですが、お客様にて各種専門書籍や「Parted Magic」
  公式サイトなどをご確認ください。

1. 該当サーバのシャットダウンを行って下さい。

2. 該当サーバの詳細画面を開いてください。

3. 詳細画面の[ISOイメージ]タブをクリックし、挿入を選択、
    ISOイメージとして「Parted Magic 2013_08_01」を挿入して下さい。

4. 該当サーバに「@boot-cdrom」のタグ設定を行って下さい。
  ▼ 特殊タグ一覧 既存のサーバへの設定 をご参考ください。
  http://cloud-news.sakura.ad.jp/special-tags/

5. 該当サーバを起動し、コンソールより
 「4. Live with default settings 64」の下にあるLanguageを
  実行後、「japanese 64」を選択し起動してください。

6. Parted Magic起動後、デスクトップの「パーティションエディタ」を
  実行してください。
  ※起動時に警告メッセージが表示されますので、
   キャンセルして下さい。

7. 対象ボリューム、パーティションを選択し「リサイズ/移動」にて拡張し保存して下さい。

8. 該当サーバのシャットダウンを行って下さい。

9. 該当サーバにISOイメージ「Parted Magic 2013_08_01」の取り出し
  及び「@boot-cdrom」のタグ削除を行い該当サーバを起動して下さい。

10.ディスク領域の変更が行われているかご確認下さい。

 

どれをやってみても、全くうまくいかず。。

 

kurochan-note.hatenablog.jp

↑CentOS7では、partedからresizepartが無くなっていて、これも駄目。。

 

 

 

最終的に以下のやり方で対応しました。

 

 

【修正前】

[root@aaa homepage]# df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
/dev/vda3 16G 3.6G 12G 24% /
devtmpfs 483M 0 483M 0% /dev
tmpfs 497M 0 497M 0% /dev/shm
tmpfs 497M 6.6M 490M 2% /run
tmpfs 497M 0 497M 0% /sys/fs/cgroup
/dev/vdb 20G 18G 1.4G 93% /home
tmpfs 100M 0 100M 0% /run/user/1000
tmpfs 100M 0 100M 0% /run/user/0

 

【fdiskでパーテーションの拡張】
[root@aaa homepage]# fdisk /dev/vdb
Welcome to fdisk (util-linux 2.23.2).

Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Device does not contain a recognized partition table
Building a new DOS disklabel with disk identifier 0xcb37210d.

コマンド (m でヘルプ): p

Disk /dev/vdb: 42.9 GB, 42949672960 bytes, 83886080 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
Disk label type: dos
ディスク識別子: 0xcb37210d

デバイス ブート 始点 終点 ブロック Id システム

コマンド (m でヘルプ): d ←パーテーションがあれば、これで削除する
No partition is defined yet!

コマンド (m でヘルプ): n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
パーティション番号 (1-4, default 1):
最初 sector (2048-83886079, 初期値 2048):
初期値 2048 を使います
Last sector, +sectors or +size{K,M,G} (2048-83886079, 初期値 83886079):
初期値 83886079 を使います
Partition 1 of type Linux and of size 40 GiB is set

コマンド (m でヘルプ): w
パーティションテーブルは変更されました!

ioctl() を呼び出してパーティションテーブルを再読込みします。

WARNING: Re-reading the partition table failed with error 16: デバイスもしくはリソースがビジー状態です.
The kernel still uses the old table. The new table will be used at
the next reboot or after you run partprobe(8) or kpartx(8)
ディスクを同期しています。

 

 

完了後、

# shutodown -r

で再起動する。

 

 

【ファイルシステムの拡張】

[root@aaa homepage]# resize2fs /dev/vdb
resize2fs 1.42.9 (28-Dec-2013)
Filesystem at /dev/vdb is mounted on /home; on-line resizing required
old_desc_blocks = 3, new_desc_blocks = 5
The filesystem on /dev/vdb is now 10485760 blocks long.

 

 

 【修正後】

[root@aaa homepage]# df -h
ファイルシス サイズ 使用 残り 使用% マウント位置
/dev/vda3 16G 3.6G 12G 24% /
devtmpfs 483M 0 483M 0% /dev
tmpfs 497M 0 497M 0% /dev/shm
tmpfs 497M 6.6M 490M 2% /run
tmpfs 497M 0 497M 0% /sys/fs/cgroup
/dev/vdb 40G 18G 21G 46% /home
tmpfs 100M 0 100M 0% /run/user/1000

 

お疲れ様でした。