综合项目内容:
部署数据库服务MySQL、部署共享存储NFS、配置网站服务、测试配置
一、项目拓扑结构
PROJECT1回顾:
PROJECT2-DAY1拓扑:
服务器IP及角色规划:
主机名 |
IP地址 |
角色 |
mysql11 |
192.168.4.11 |
MySQL数据库服务器 |
mysql22 |
192.168.4.22 |
MySQL数据库服务器 |
maxcale77 |
192.168.4.77 |
读写分离服务器 |
nfs30 |
192.168.4.30 |
共享存储服务器 |
web33 |
192.168.4.33 |
网站服务器 |
涉及技术点:
① 逻辑卷
② 数据库服务
③ MySQL主从同步
④ 数据读写分离
⑤ NFS共享存储
案例1:配置逻辑卷
因数据库服务器在未来数据量不断增大,需要为2台数据库服务器分别添加2块5G磁盘,且配置逻辑卷支持扩容;
具体配置如下:
- ① 添加磁盘
- ② 磁盘分区
- ③ 创建PV、VG、LV
- ④ 格式化LV(文件系统类型:xfs)
步骤1:磁盘分区
mysql11为例操作
① 给2台数据库服务器添加2块5G的磁盘
[root@mysql11 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb 8:16 0 5G 0 disk
sdc 8:32 0 5G 0 disk
② 磁盘分区,每块磁盘分1个区即可
[root@mysql11 ~]# fdisk -l /dev/sdb //检查磁盘分区大小
磁盘 /dev/sdb:5368 MB, 5368709120 字节,10485760 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
[root@mysql11 ~]# fdisk -l /dev/sdc //检查磁盘分区大小
磁盘 /dev/sdc:5368 MB, 5368709120 字节,10485760 个扇区
Units = 扇区 of 1 * 512 = 512 bytes
扇区大小(逻辑/物理):512 字节 / 512 字节
I/O 大小(最小/最佳):512 字节 / 512 字节
[root@mysql11 ~]# fdisk /dev/sdb //进行磁盘分区
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0x8fa4682c 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-10485759,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-10485759,默认为 10485759):
将使用默认值 10485759
分区 1 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
[root@mysql11 ~]# fdisk /dev/sdc //进行磁盘分区
欢迎使用 fdisk (util-linux 2.23.2)。
更改将停留在内存中,直到您决定将更改写入磁盘。
使用写入命令前请三思。
Device does not contain a recognized partition table
使用磁盘标识符 0x04a10884 创建新的 DOS 磁盘标签。
命令(输入 m 获取帮助):n
Partition type:
p primary (0 primary, 0 extended, 4 free)
e extended
Select (default p): p
分区号 (1-4,默认 1):1
起始 扇区 (2048-10485759,默认为 2048):
将使用默认值 2048
Last 扇区, +扇区 or +size{K,M,G} (2048-10485759,默认为 10485759):
将使用默认值 10485759
分区 1 已设置为 Linux 类型,大小设为 5 GiB
命令(输入 m 获取帮助):w
The partition table has been altered!
Calling ioctl() to re-read partition table.
正在同步磁盘。
③ 查看分区情况
[root@mysql11 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb 8:16 0 5G 0 disk
└─sdb1 8:17 0 5G 0 part
sdc 8:32 0 5G 0 disk
└─sdc1 8:33 0 5G 0 part
…
步骤2:创建LV逻辑卷
① 安装提供命令的软件(lvm2)
[root@mysql11 ~]# rpm -q lvm2 || yum -y install lvm2
lvm2-2.02.177-4.el7.x86_64
② 创建PV
[root@mysql11 ~]# pvcreate /dev/sdb1 /dev/sdc1
Physical volume "/dev/sdb1" successfully created.
Physical volume "/dev/sdc1" successfully created.
[root@mysql11 ~]# pvscan
PV /dev/sda2 VG centos lvm2 [<19.00 GiB / 0 free]
PV /dev/sdb1 lvm2 [<5.00 GiB]
PV /dev/sdc1 lvm2 [<5.00 GiB]
Total: 3 [28.99 GiB] / in use: 1 [<19.00 GiB] / in no VG: 2 [<10.00 GiB]
③ 创建VG
[root@mysql11 ~]# vgcreate vg0 /dev/sdb1 /dev/sdc1 //创建vg(名称vg0)
Volume group "vg0" successfully created
[root@mysql11 ~]# vgdisplay vg0
--- Volume group ---
VG Name vg0
System ID
Format lvm2
Metadata Areas 2
Metadata Sequence No 1
VG Access read/write
VG Status resizable
MAX LV 0
Cur LV 0
Open LV 0
Max PV 0
Cur PV 2
Act PV 2
VG Size 9.99 GiB //总大小
PE Size 4.00 MiB //PE总个数
Total PE 2558
Alloc PE / Size 0 / 0
Free PE / Size 2558 / 9.99 GiB
VG UUID WAR13a-umgc-C5tX-yLXa-M3o2-N35N-FGq7b1
④ 创建LV
[root@mysql11 ~]# lvcreate -L 9.99G -n lv0 vg0 //创建LV名称为lv0大小9.99G
Rounding up size to full physical extent 9.99 GiB
Logical volume "lv0" created.
[root@mysql11 ~]# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sdb 8:16 0 5G 0 disk
└─sdb1 8:17 0 5G 0 part
└─vg0-lv0 253:2 0 10G 0 lvm
sdc 8:32 0 5G 0 disk
└─sdc1 8:33 0 5G 0 part
└─vg0-lv0 253:2 0 10G 0 lvm
...
[root@mysql11 ~]# lvdisplay /dev/vg0/lv0 //查看lv0信息
--- Logical volume ---
LV Path /dev/vg0/lv0
LV Name lv0
VG Name vg0
LV UUID R4q7uX-K96d-9Nw2-9HPV-u0lb-FeDs-Qs8N0i
LV Write Access read/write
LV Creation host, time mysql11, 2021-06-22 10:32:19 +0800
LV Status available
# open 0
LV Size