CentOS Stream 9
Sponsored Link

OpenStack Bobcat : Cinder バックアップサービスを利用2023/10/25

 
Cinder が提供するブロックストレージのバックアップサービスを設定します。
当例ではバックアップ用ストレージのバックエンドとして NFS を利用します。
なお、NFS の他にも、GlusterFS や Ceph, Object Storage (Swift) 等もバックエンドに利用可能です。
------------+--------------------------+--------------------------+------------
            |                          |                          |
        eth0|10.0.0.30             eth0|10.0.0.50             eth0|10.0.0.51
+-----------+-----------+  +-----------+-----------+  +-----------+-----------+
|   [ dlp.srv.world ]   |  | [ network.srv.world ] |  |  [ node01.srv.world ] |
|     (Control Node)    |  |     (Network Node)    |  |     (Compute Node)    |
|                       |  |                       |  |                       |
|  MariaDB    RabbitMQ  |  |      Open vSwitch     |  |        Libvirt        |
|  Memcached  Nginx     |  |     Neutron Server    |  |      Nova Compute     |
|  Keystone   httpd     |  |      OVN-Northd       |  |      Open vSwitch     |
|  Glance     Nova API  |  |  Nginx  iSCSI Target  |  |   OVN Metadata Agent  |
|  Cinder API           |  |  Cinder Volume/Backup |  |     OVN-Controller    |
+-----------------------+  +-----------------------+  +-----------------------+

-----------+-------------------------------------------------------------------
       eth0|10.0.0.35
+----------+-----------+
|   [ nfs.srv.world ]  |
|       NFS Server     |
+----------------------+

[1]
こちらを参考に、ローカルネットワーク内に NFS サーバーを稼働させておきます
なお、当例では [nfs.srv.world] 上の [/var/lib/cinder-backup] ディレクトリをバックアップ保管用ディレクトリとして設定します。
[2] Storage ノードの設定です。
[root@network ~]#
dnf -y install nfs-utils
[root@network ~]#
vi /etc/idmapd.conf
# 5行目 : コメント解除して自ドメイン名に変更

Domain =
srv.world
[root@network ~]#
vi /etc/iscsi/initiatorname.iscsi
# 新規作成
# 任意の InitiatorName を設定

InitiatorName=iqn.2023-10.world.srv:network.initiator01
[root@network ~]#
vi /etc/cinder/cinder.conf
# [DEFAULT] セクション内の任意の場所へ追記

backup_driver = cinder.backup.drivers.nfs.NFSBackupDriver
backup_mount_point_base = $state_path/backup_nfs
backup_share = nfs.srv.world:/var/lib/cinder-backup
[root@network ~]#
systemctl enable --now openstack-cinder-backup

[root@network ~]#
chown -R cinder. /var/lib/cinder/backup_nfs
# Firewalld 稼働中の場合はサービス許可

[root@network ~]#
firewall-cmd --add-service=nfs

[root@network ~]#
firewall-cmd --runtime-to-permanent

[3] 任意のユーザーで自身が所有するボリュームのバックアップを取得します。作業場所はどこでもよいですが、当例では Control ノード上で行います。
[cent@dlp ~(keystone)]$
openstack volume list

+--------------------------------------+----------+-----------+------+-------------+
| ID                                   | Name     | Status    | Size | Attached to |
+--------------------------------------+----------+-----------+------+-------------+
| a16a79f3-970a-4ca9-9db7-498675f182b4 | disk-nfs | available |   10 |             |
| d9030e21-70c9-4f6e-8701-0c4543d01c40 | disk-lvm | available |   10 |             |
+--------------------------------------+----------+-----------+------+-------------+

# [disk-nfs] のバックアップを [bk-disk-nfs] という名称で作成

[cent@dlp ~(keystone)]$
openstack volume backup create --name bk-disk-nfs disk-nfs

+-----------+--------------------------------------+
| Field     | Value                                |
+-----------+--------------------------------------+
| id        | f0dc4036-2dec-467e-8044-cb2cf7ac11d3 |
| name      | bk-disk-nfs                          |
| volume_id | a16a79f3-970a-4ca9-9db7-498675f182b4 |
+-----------+--------------------------------------+

# 作成中は [Status] が [creating] 状態

[cent@dlp ~(keystone)]$
openstack volume backup list

+--------------------------------------+-------------+-------------+----------+------+
| ID                                   | Name        | Description | Status   | Size |
+--------------------------------------+-------------+-------------+----------+------+
| f0dc4036-2dec-467e-8044-cb2cf7ac11d3 | bk-disk-nfs | None        | creating |   10 |
+--------------------------------------+-------------+-------------+----------+------+

# 作成完了すると [Status] が [available] となる

[cent@dlp ~(keystone)]$
openstack volume backup list

+--------------------------------------+-------------+-------------+-----------+------+
| ID                                   | Name        | Description | Status    | Size |
+--------------------------------------+-------------+-------------+-----------+------+
| f0dc4036-2dec-467e-8044-cb2cf7ac11d3 | bk-disk-nfs | None        | available |   10 |
+--------------------------------------+-------------+-------------+-----------+------+
[4] バックアップ対象ボリュームのバックアップがすでに存在する場合、インクリメンタルバックアップが利用できます。
また、バックアップ対象のボリュームが特定のインスタンスにアタッチされている場合は、[--force] オプションを付加することでバックアップ実行可能です。
[cent@dlp ~(keystone)]$
openstack volume backup list

+--------------------------------------+-------------+-------------+-----------+------+
| ID                                   | Name        | Description | Status    | Size |
+--------------------------------------+-------------+-------------+-----------+------+
| f0dc4036-2dec-467e-8044-cb2cf7ac11d3 | bk-disk-nfs | None        | available |   10 |
+--------------------------------------+-------------+-------------+-----------+------+

[cent@dlp ~(keystone)]$
openstack volume list

+--------------------------------------+----------+-----------+------+-------------+
| ID                                   | Name     | Status    | Size | Attached to |
+--------------------------------------+----------+-----------+------+-------------+
| a16a79f3-970a-4ca9-9db7-498675f182b4 | disk-nfs | available |   10 |             |
| d9030e21-70c9-4f6e-8701-0c4543d01c40 | disk-lvm | available |   10 |             |
+--------------------------------------+----------+-----------+------+-------------+

[cent@dlp ~(keystone)]$
openstack volume backup create --name bk-disk-nfs-01 --incremental --force disk-nfs

+-----------+--------------------------------------+
| Field     | Value                                |
+-----------+--------------------------------------+
| id        | 229696f4-964b-4aa9-afca-a74240629a54 |
| name      | bk-disk-nfs-01                       |
| volume_id | a16a79f3-970a-4ca9-9db7-498675f182b4 |
+-----------+--------------------------------------+

[cent@dlp ~(keystone)]$
openstack volume backup list

+--------------------------------------+----------------+-------------+-----------+------+
| ID                                   | Name           | Description | Status    | Size |
+--------------------------------------+----------------+-------------+-----------+------+
| 229696f4-964b-4aa9-afca-a74240629a54 | bk-disk-nfs-01 | None        | available |   10 |
| f0dc4036-2dec-467e-8044-cb2cf7ac11d3 | bk-disk-nfs    | None        | available |   10 |
+--------------------------------------+----------------+-------------+-----------+------+
[5] バックアップボリュームのリストアです。
リストア時はリストア対象ボリュームがインスタンスからデタッチされている必要があります。
[cent@dlp ~(keystone)]$
openstack volume backup list

+--------------------------------------+----------------+-------------+-----------+------+
| ID                                   | Name           | Description | Status    | Size |
+--------------------------------------+----------------+-------------+-----------+------+
| 229696f4-964b-4aa9-afca-a74240629a54 | bk-disk-nfs-01 | None        | available |   10 |
| f0dc4036-2dec-467e-8044-cb2cf7ac11d3 | bk-disk-nfs    | None        | available |   10 |
+--------------------------------------+----------------+-------------+-----------+------+

[cent@dlp ~(keystone)]$
openstack volume list

+--------------------------------------+----------+-----------+------+-------------+
| ID                                   | Name     | Status    | Size | Attached to |
+--------------------------------------+----------+-----------+------+-------------+
| a16a79f3-970a-4ca9-9db7-498675f182b4 | disk-nfs | available |   10 |             |
| d9030e21-70c9-4f6e-8701-0c4543d01c40 | disk-lvm | available |   10 |             |
+--------------------------------------+----------+-----------+------+-------------+

# リストア実行

[cent@dlp ~(keystone)]$
openstack volume backup restore bk-disk-nfs-01 disk-nfs_restored


# リストア中は [restoring-backup] ステータス

[cent@dlp ~(keystone)]$
openstack volume list

+--------------------------------------+-------------------+------------------+------+-------------+
| ID                                   | Name              | Status           | Size | Attached to |
+--------------------------------------+-------------------+------------------+------+-------------+
| 1ce913ab-96ac-4dd1-9443-92571d08ddd7 | disk-nfs_restored | restoring-backup |   10 |             |
| a16a79f3-970a-4ca9-9db7-498675f182b4 | disk-nfs          | available        |   10 |             |
| d9030e21-70c9-4f6e-8701-0c4543d01c40 | disk-lvm          | available        |   10 |             |
+--------------------------------------+-------------------+------------------+------+-------------+

# リストア完了すると [available] ステータスになる

[cent@dlp ~(keystone)]$
openstack volume list

+--------------------------------------+-------------------+-----------+------+-------------+
| ID                                   | Name              | Status    | Size | Attached to |
+--------------------------------------+-------------------+-----------+------+-------------+
| 1ce913ab-96ac-4dd1-9443-92571d08ddd7 | disk-nfs_restored | available |   10 |             |
| a16a79f3-970a-4ca9-9db7-498675f182b4 | disk-nfs          | available |   10 |             |
| d9030e21-70c9-4f6e-8701-0c4543d01c40 | disk-lvm          | available |   10 |             |
+--------------------------------------+-------------------+-----------+------+-------------+
関連コンテンツ