たった３ステップ、ProxmoxBackupServerでお手軽バックアップ 

こんにちは。
ALJの江口と申します。

皆さん、身の回りにたくさんVM環境があると思いますが、ちゃんとバックアップは取れてますか？

今回、自宅にProxmoxBackupServerをセットアップしたついでに、一連の作業をメモしたので、セットアップの流れについてご紹介したいと思います。

ProxmoxBackupServerは長いので、以降PBSと表記します。

:::note info
以下の記事は、現時点での最新のProxmoxBackupServer 3.1.5を用いて説明しています。
:::

# 最短３ステップで全てのVMのバックアップが取れます

PBSを使うと、以下の３ステップでバックアップ設定が終わります。
企業ユースの場合、root以外のユーザ作成が必用なので、もう１～２ステップ加わりますが、それでも難しくないと思います。

| 工程 | PBS作業 | ProxmoxVEデータセンター作業 |
|:-----------:|:------------:|:------------:|
| Step1       |  データストアの作成       | 　        |
| Step2     | 　      | ストレージにPBSを追加      |
| Step3       |         | バックアップジョブの作成         |

# Step1 データストアの作成

データストアとは、PBS内の実際の保存場所を指定する作業です。別のディスクをマウントしているなど、環境に応じて設定します。どこでもいいなら、深く考える必要はないと思います。

インストール直後のメニューは非常にシンプルで、「データストア追加」くらいしか機能がありません。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662107/40bb454d-e413-253a-fe40-a4ead92be1b2.png)

データストアを押すと以下の画面が出てきます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662107/4517fe88-a223-72c9-e2d0-b8e6492b6654.png)

| 項目 | PBS作業 | 
|:-----------|:------------|
| 名前       | データストアの名称。3文字以上じゃないと怒られる。   |
| Backup Path  | OSの実際のパス。      |
| GCスケジュール   | 不要なバックアップの掃除。    | 
| Pruneeスケジュール  | バックアップ世代の整理の実行間隔。  | 

:::note info
prune コマンドはバックアップ インデックス ファイルのみを削除し、データストアからデータは削除されません。未使用になったデータ削除はガベージ コレクション コマンドが実施します。
:::

上記の操作でデータストアを追加すると、ディレクトリとコンフィグファイル(datastore.cfg)が追加されます。

```console
root@pbs:~# ls /
bin   datastore  etc   lib    media  opt   root   run   srv  tmp  var
boot  dev        home  lib64  mnt    proc  rpool  sbin  sys  usr
root@pbs:~# ls /datastore/
r1
root@pbs:~# ls /datastore/r1/
root@pbs:~# cat /etc/proxmox-backup/datastore.cfg 
datastore: r1backup
        comment 
        gc-schedule daily
        path /datastore/r1
```

## データストアの削除
データストアを削除したい場合、コマンドから実行します。
```console
root@pbs:~# proxmox-backup-manager datastore remove r1backup 
Removing datastore from config...
TASK OK
```
上記コマンドを実行すると、コンフィグファイルから定義が削除されますが、実際のファイルは残るので、同じディレクトリで追加しようとすると以下のように怒られます。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662107/d3d2acbb-a274-b169-570b-eb40c2bdc038.png)

不要であれば、rmコマンドでディレクトリを削除してください。

# Step2 ストレージにPBSを追加  
バックアップを取得するデータセンターを開き、ストレージに追加します。フィンガープリントは、PBSのダッシュボードに表示するボタンがあります。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662107/ad4a5657-8088-5d5e-8219-2bc065ffd74e.png)

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662107/66923d25-e9b8-efe0-0f6d-e850187ebba6.png)

:::note info
今回の記事では接続ユーザーに**root@pan**を設定していますが、PBSとVEの管理者が別の場合、rootのパスワードを教えることになるため、企業で利用する場合は、接続ユーザーを別途作成することをお勧めします。
:::

# Step3 バックアップジョブの作成     
データセンターにバックアップという機能があるので、「追加」を押すことでジョブの追加ができます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662107/ccf60c9c-4c6a-f9dc-5a11-6b1767d8ded9.png)

追加ボタンを押すと以下の画面が表示されるので、バックアップを取りたい対象や、スケジュール、圧縮率などを指定します。
「全ノード」を指定すると、スケジュールを設定した後に追加したノードもバックアップされます。

下の例では、ストレージに「pbs」、時間は「毎日AM3:00」、「全ノード」、「スナップショット」を指定しています。

![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662107/d96ffbf7-7baf-811b-e882-10da745f9f46.png)


# 実行結果の確認
以上の操作で、基本的なバックアップのスケジューリングは終わりです。pruneなど、そのほかの設定については必要に応じて手順を追加してください。

実行結果は、データセンター側のタスクビューで確認できます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3662107/db4f1a5f-e189-82f5-1b2e-1241be8447ce.png)

PBSを使うと、ProxmoxVEのバックアップが簡単に取得できます。