🐡

RedHat8:Backup,WAL領域追加(PostgreSQL)

2022/06/03に公開

参照元:https://zenn.dev/piguolabo/articles/12097752dbf278

Database領域作成

HDD追加

VirtualBoxで50GBのHDDを追加する。

#HDD確認
[root@postest ~]# lsblk
NAME          MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda             8:0    0   30G  0 disk
tqsda1          8:1    0  600M  0 part /boot/efi
tqsda2          8:2    0    1G  0 part /boot
mqsda3          8:3    0 28.4G  0 part
  tqrhel-root 253:0    0 26.4G  0 lvm  /
  mqrhel-swap 253:1    0    2G  0 lvm  [SWAP]
sdb             8:16   0   50G  0 disk
sr0            11:0    1 1024M  0 rom
[root@postest ~]#

パーティション作成

HDDをWAL領域とBackup領域に分割する。

[root@postest ~]# fdisk /dev/sdb

fdisk (util-linux 2.32.1) へようこそ。
ここで設定した内容は、書き込みコマンドを実行するまでメモリのみに保持されます。
書き込みコマンドを使用する際は、注意して実行してください。

デバイスには認識可能なパーティション情報が含まれていません。
新しい DOS ディスクラベルを作成しました。識別子は 0xe25f7f76 です。

#WAL領域のパーティション作成
コマンド (m でヘルプ): n    #パーティション新規作成
パーティションタイプ
   p   基本パーティション (0 プライマリ, 0 拡張, 4 空き)
   e   拡張領域 (論理パーティションが入ります)
選択 (既定値 p): p    #基本パーティション
パーティション番号 (1-4, 既定値 1): 1    #パーティション番号
最初のセクタ (2048-104857599, 既定値 2048): 2048    #先頭セクタ位置
最終セクタ, +セクタ番号 または +サイズ{K,M,G,T,P} (2048-104857599, 既定値 104857599): +15GB    #15GB割当
新しいパーティション 1 をタイプ Linux、サイズ 14 GiB で作成しました。

#状態確認
コマンド (m でヘルプ): p
ディスク /dev/sdb: 50 GiB, 53687091200 バイト, 104857600 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0xe25f7f76

デバイス   起動 開始位置 終了位置   セクタ サイズ Id タイプ
/dev/sdb1           2048 29298687 29296640    14G 83 Linux

#Backup領域のパーティション作成
コマンド (m でヘルプ): n
パーティションタイプ
   p   基本パーティション (1 プライマリ, 0 拡張, 3 空き)
   e   拡張領域 (論理パーティションが入ります)
選択 (既定値 p): p
パーティション番号 (2-4, 既定値 2): 2
最初のセクタ (29298688-104857599, 既定値 29298688): 29298688
最終セクタ, +セクタ番号 または +サイズ{K,M,G,T,P} (29298688-104857599, 既定値 104857599): 104857599    #最後まで割当
新しいパーティション 2 をタイプ Linux、サイズ 36 GiB で作成しました

#状態確認
コマンド (m でヘルプ): p
ディスク /dev/sdb: 50 GiB, 53687091200 バイト, 104857600 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0xe25f7f76

デバイス   起動 開始位置  終了位置   セクタ サイズ Id タイプ
/dev/sdb1           2048  29298687 29296640    14G 83 Linux
/dev/sdb2       29298688 104857599 75558912    36G 83 Linux

#変更内容の適用
コマンド (m でヘルプ): w

パーティション情報が変更されました。
ioctl() を呼び出してパーティション情報を再読み込みします。
ディスクを同期しています。

[root@postest ~]#

#適用確認
[root@postest ~]# journalctl -k
  6月 03 19:44:10 postest kernel:  sdb: sdb1 sdb2
[root@postest ~]#

[root@postest ~]# fdisk -l /dev/sdb
ディスク /dev/sdb: 50 GiB, 53687091200 バイト, 104857600 セクタ
単位: セクタ (1 * 512 = 512 バイト)
セクタサイズ (論理 / 物理): 512 バイト / 512 バイト
I/O サイズ (最小 / 推奨): 512 バイト / 512 バイト
ディスクラベルのタイプ: dos
ディスク識別子: 0xe25f7f76

デバイス   起動 開始位置  終了位置   セクタ サイズ Id タイプ
/dev/sdb1           2048  29298687 29296640    14G 83 Linux
/dev/sdb2       29298688 104857599 75558912    36G 83 Linux
[root@postest ~]#

ファイルシステム作成

[root@postest ~]# mkfs -t ext4 /dev/sdb1 #WAL
mke2fs 1.45.6 (20-Mar-2020)
Creating filesystem with 3662080 4k blocks and 915712 inodes
Filesystem UUID: c97dbb94-ba58-4b0d-81ec-29f2e52caf2d
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208

Allocating group tables: done
Writing inode tables: done
Creating journal (16384 blocks): done
Writing superblocks and filesystem accounting information: done

[root@postest ~]#

[root@postest ~]# mkfs -t ext4 /dev/sdb2 #Backup
mke2fs 1.45.6 (20-Mar-2020)
Creating filesystem with 9444864 4k blocks and 2362864 inodes
Filesystem UUID: ebb38eba-3515-4e59-8c0f-42125a15681c
Superblock backups stored on blocks:
        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
        4096000, 7962624

Allocating group tables: done
Writing inode tables: done
Creating journal (65536 blocks): done
Writing superblocks and filesystem accounting information: done

[root@postest ~]#

マウント

#マウントポイント作成
[root@postest ~]# mkdir {/backup,/wal}
[root@postest ~]#
[root@postest ~]# ls -ld /backup /wal
drwxr-xr-x 2 root root 6  63 19:49 /backup
drwxr-xr-x 2 root root 6  63 19:49 /wal
[root@postest ~]#

#UUID確認
[root@postest ~]# blkid
/dev/sda1: UUID="FB05-9721" BLOCK_SIZE="512" TYPE="vfat" PARTLABEL="EFI System Partition" PARTUUID="7c83529f-4ea0-4a52-a2c1-4fea677738e3"
/dev/sda2: UUID="51c6724f-2d16-445f-ba55-af02dd81c9ce" BLOCK_SIZE="512" TYPE="xfs" PARTUUID="2ac5ccbd-c4cf-43e5-a12d-e44534111395"
/dev/sda3: UUID="rjDjlL-ObCg-S1fc-C1LR-jqct-612G-jkhGyt" TYPE="LVM2_member" PARTUUID="f693a077-8cff-47fd-bd85-033b6a6ebbe9"
/dev/sdb1: UUID="c97dbb94-ba58-4b0d-81ec-29f2e52caf2d" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="e25f7f76-01"
/dev/sdb2: UUID="ebb38eba-3515-4e59-8c0f-42125a15681c" BLOCK_SIZE="4096" TYPE="ext4" PARTUUID="e25f7f76-02"
/dev/mapper/rhel-root: UUID="f9a57bdf-e004-464c-ab39-eb01a9eb2305" BLOCK_SIZE="512" TYPE="xfs"
/dev/mapper/rhel-swap: UUID="f8ed11fe-c911-4e93-bc5b-f0c7fa999764" TYPE="swap"
[root@postest ~]#

#マウント
[root@postest ~]# cp -ip /etc/fstab /etc/fstab.`date "+%Y%m%d"`
[root@postest ~]#
[root@postest ~]# ls -l /etc/fstab /etc/fstab.`date "+%Y%m%d"`
-rw-r--r--. 1 root root 666  63 18:09 /etc/fstab
-rw-r--r--  1 root root 666  63 18:09 /etc/fstab.20220603
[root@postest ~]#
[root@postest ~]# vi /etc/fstab
[root@postest ~]#
[root@postest ~]# diff /etc/fstab /etc/fstab.`date "+%Y%m%d"`
16,17d15
< UUID=c97dbb94-ba58-4b0d-81ec-29f2e52caf2d /wal         ext4     defaults        0 0
< UUID=ebb38eba-3515-4e59-8c0f-42125a15681c /backup        ext4     defaults        0 0
[root@postest ~]#
[root@postest ~]# mount -a
[root@postest ~]#
[root@postest ~]# df -Th
ファイルシス          タイプ   サイズ  使用  残り 使用% マウント位置
devtmpfs              devtmpfs   881M     0  881M    0% /dev
tmpfs                 tmpfs      901M     0  901M    0% /dev/shm
tmpfs                 tmpfs      901M  8.5M  892M    1% /run
tmpfs                 tmpfs      901M     0  901M    0% /sys/fs/cgroup
/dev/mapper/rhel-root xfs         27G  2.5G   24G   10% /
/dev/sda2             xfs       1014M  207M  808M   21% /boot
/dev/sda1             vfat       599M  5.9M  594M    1% /boot/efi
tmpfs                 tmpfs      181M     0  181M    0% /run/user/0
/dev/sdb1             ext4        14G   41M   13G    1% /wal
/dev/sdb2             ext4        36G   49M   34G    1% /backup
[root@postest ~]#

#権限変更
[root@postest ~]# chown postgres:postgres /backup
[root@postest ~]# chown postgres:postgres /wal
[root@postest ~]# ls -ld /backup /wal
drwxr-xr-x 3 postgres postgres 4096  63 19:48 /backup
drwxr-xr-x 3 postgres postgres 4096  63 19:48 /wal
[root@postest ~]#

Discussion