インフラエンジニアXの備忘

とある企業のシステム部門のインフラエンジニアです。忘れっぽい自分のメモ書きとしてこのブログを使用します。

Proxmoxに外付HDDを追加してバックアップ用ストレージとする。

あまっているわけではないが、3TBのディスクを利用してProxmoxの親ノードに追加し
バックアップなどいろいろ実施してみようという作業のメモ

参照サイト
http://ahirustudio.sblo.jp/article/57110343.html
http://mkit2009.hatenablog.com/entry/2013/02/03/013357

Diskの追加やパーティショニングなど参考にさせていただきました。
とてもわかりやすくまとまっていて勉強させていただきました。
ありがとうございました。

目的

Proxmoxに外付けで3TBのディスクを追加してストレージとしてマウントしてみる。
その後、VMやCTをスナップショットバックアップを取得してみる。

外付HDDの取り付けとフォーマット関連

一応メモ

ProxmoxVEにてどのドライブとして認識されたかを確認する。

# tail -n 100 /var/log/messages | more

今回は/dev/sdcとして認識されている。

まずはそのディスクをpartedを利用してフォーマット

# parted /dev/sdc
GNU Parted 2.3
Using /dev/sdc
Welcome to GNU Parted! Type 'help' to view a list of commands.
(parted)

状態を確認する。

(parted) print
Model: Generic  (scsi)
Disk /dev/sdc: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start   End     Size    File system  Name   Flags
1      17.4kB  82.9kB  65.5kB
2      82.9kB  8590MB  8590MB               swap3
3      8590MB  3001GB  2992GB  zfs          disk3

この3TBのディスクはとあるマシンでzfsファイルシステムで利用しているものだったので
このような表示になっていた。

すべてのパーティションを削除する。

(parted) rm 1
(parted) print
Model: Generic  (scsi)
Disk /dev/sdc: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start   End     Size    File system  Name   Flags
2      82.9kB  8590MB  8590MB               swap3
3      8590MB  3001GB  2992GB  zfs          disk3

→1のパーティションが消えたので、2と3も消去する。

(parted) rm 2
(parted) rm 3

新規のパーティションを作成する。

(parted) print
Model: Generic  (scsi)
Disk /dev/sdc: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start  End  Size  File system  Name  Flags

→すべてのパーティションが削除されていることを確認

(parted) mklabel gpt → GPTのパーティションテーブルを作成
(parted) unit GB   → print時の表示単位をGBにする
(parted) print free
Model: Generic  (scsi)
Disk /dev/sdc: 3001GB
Sector size (logical/physical): 512B/4096B
Partition Table: gpt

Number  Start   End     Size    File system  Name  Flags
        0.00GB  3001GB  3001GB  Free Space

(parted) mkpart extended 1 3001 →パーティションを作成する。
(parted) quit
Information: You may need to update /etc/fstab.

直前のprint freeコマンドで確認した3001までを指定して作成する。
※丁寧?にfstabへの記載を忘れんなよっとメッセージが表示されます。

ext4でフォーマット、ディレクトリを作成して、そこにマウントする。

# mkfs.ext4 -m 0 /dev/sdc1
# mkdir /data
# chmod 0777 /data
# mount -t ext4 /dev/sdc1 /data

fstab追加して起動時に読み込まれるようにしておく。

# blkid /dev/sdc1
/dev/sdc1: UUID="4b5155d6-11c0-41d5-9591-2f2d39687b41" TYPE="ext4"

# vi /etc/fstab
UUID=4b5155d6-11c0-41d5-9591-2f2d39687b41 /data ext4 defaults 0 0

USBの機器を複数さしているような場合に、
起動によっては外付HDDが/dev/sddなどに名前が変わってしまうようなこともあるため
UUIDでマウントするように記載しておき、再起動時に/dataとしてマウントしてくるかを確認する。

Proxmoxのストレージとして追加

上記の作業にてproxmoxに外付HDDを追加できたので
/data/pvebackupというディレクトリを作成して
とりあえずはバックアップだけ取得できるようにストレージを追加する。

f:id:hajimenovic:20140731205307p:plain

データセンターを選択して、ストレージタブを選択。
追加から「Directory」を選択。

f:id:hajimenovic:20140731205340p:plain

Directory追加画面が表示される。

ID:       今回はpvebackupとする。   →任意のIDを記入する。
ディレクトリ: 今回は/data/pvebackupとする。→今回追加するディレクトリを記入する。
内容:     →選択する内容によって/data/pvebackupに作成されるディレクトリが変化する。

  Images   このディレクトリにVMの仮想HDDを保存して稼動させる場合には選択する
        /data/pvebackup/imagesディレクトリが自動的に作成される。

  ISO    OSインストール時などに必要なイメージの保存先にする場合は選択する
        /data/pvebackup/template/isoディレクトリが自動的に作成される。

  Templates このディレクトリにCTのテンプレートやOSのテンプレートなどを保存する場合は選択する
        /data/pvebackup/template/cacheディレクトリが自動的に作成される。

  Backups  バックアップを保存する場合は選択する。
        /data/pvebackup/dumpディレクトリが自動的に作成される。
       
  Containers このディレクトリにCTを保存して稼動させる場合には選択する。
        /data/pvebackup/privateディレクトリが自動的に作成される
       
ノード:    接続されている機器のみ選択する。
有効:     デフォルトチェックされているのでこのまま
共有:     デフォルトチェックされていないのでこのまま →
Max Backups:  とりあえず1のままでいく   →これが何を表しているのかが謎なので検証する必要あり。

f:id:hajimenovic:20140731205428p:plain

追加を押すと、ストレージの画面に追加されて、ツリーにもpvebackupのストレージが表示される。

f:id:hajimenovic:20140731205506p:plain

CTのバックアップ

ストレージを追加し、内容にBackupsを追加したので
CTのバックアップを実施する。

f:id:hajimenovic:20140731205516p:plain

バックアップを取得したCT(今回は1006)を選択した状態で、バックアップタブを開く。
「今すぐバックアップ」を選択。

f:id:hajimenovic:20140731205534p:plain

バックアップ設定画面にて

ストレージ: 今回追加したpvebackupを選択する。 

→ストレージに追加してあって、内容でBackupsが選択されているものがプルダウンに表示される。

モード:   今回はスナップショットを選択 他には停止と一時停止がある。
圧縮:    今回は早さを重視してLTOを選択 他にはGZIPとNoneがある。

f:id:hajimenovic:20140731205547p:plain

TASK OK
となったらバックアップは終了。
今回のCT1006は4.4Gのサイズだったが、LTOに圧縮されて1.0GBになった。
ログの一番最初に記入してあるが、CTのバックアップはvzdumpを利用している模様。
SSHで同様のコマンドをコマンドラインで入れても同様のディレクトリにバックアップ取得可能。