RHCS

基础配置:

172.25.44.250             物理机[rhel7.2]

172.25.44.1      server1.example.com(node1)[rhel6.5]

172.25.44.2      server2.example.com(node2)[rhel6.5]

172.25.44.3      server3.example.com(luci)[rhel6.5]

 

1.安装基础所需服务:

node1 node2:

# yum install -y ricci

# /etc/init.d/ricci start                                  开启ricci

# chkconfig ricci on                                     设置开机自启

 

Luci:

# yum install -y luci

# /etc/init.d/luci start                                   开启luci

# chkconfig luci on                                            设置开机自启

 

2.利用浏览器访问 luci的8084端口:


rhcs_第1张图片

 

 

3.在客户端进行基础配置:

rhcs_第2张图片


 

4.设置外部fence(物理机)

# yum install -yfence-virtd-multicast fence-virtd-libvirt

# systemctl start fence_virtd       开启fence

# mkdir /etc/cluter/

# dd if=/dev/urandomof=/etc/cluter/fence_xvm.key  制作key文件

# fence_virtd -c

Module search path[/usr/lib64/fence-virt]:

 

Available backends:

   libvirt 0.1

Available listeners:

   multicast 1.2

 

Listener modules are responsible foraccepting requests

from fencing clients.

 

Listener module [multicast]:

 

The multicast listener module isdesigned for use environments

where the guests and hosts maycommunicate over a network using

multicast.

 

The multicast address is the addressthat a client will use to

send fencing requests tofence_virtd.

 

Multicast IP Address [225.0.0.12]:

 

Using ipv4 as family.

 

Multicast IP Port [1229]:

 

Setting a preferred interface causesfence_virtd to listen only

on that interface.  Normally, it listens on all interfaces.

In environments where the virtualmachines are using the host

machine as a gateway, this *must* beset (typically to virbr0).

Set to 'none' for no interface.

 

Interface [virbr0]:

 

The key file is the shared keyinformation which is used to

authenticate fencing requests.  The contents of this file must

be distributed to each physical hostand virtual machine within

a cluster.

 

Key File[/etc/cluster/fence_xvm.key]:

 

Backend modules are responsible forrouting requests to

the appropriate hypervisor ormanagement layer.

 

Backend module [libvirt]:

 

Configuration complete.

 

=== Begin Configuration ===

fence_virtd {

      listener= "multicast";

      backend= "libvirt";

      module_path= "/usr/lib64/fence-virt";

}

 

listeners {

      multicast{

           key_file= "/etc/cluster/fence_xvm.key";

           address= "225.0.0.12";

           interface= "virbr0";

           family= "ipv4";

           port= "1229";

      }

 

}

 

backends {

      libvirt{

           uri= "qemu:///system";

      }

 

}

 

=== End Configuration ===

Replace /etc/fence_virt.conf withthe above [y/N]? Y

 

# scp fence_xvm.key [email protected]:/etc/cluter/ 发送给node1 node2

# scp [email protected]:/etc/cluter/

rhcs_第3张图片

rhcs_第4张图片

 添加node1 node2 的 uuid进入fence


5.添加apache:

1)配置集群:

rhcs_第5张图片

 

2)配置集群所需服务:

【1】VIP

rhcs_第6张图片

 【2】HTTPD

rhcs_第7张图片

3)建立服务组

rhcs_第8张图片

 

客户端(node 1 2 )

yum install -y httpd                            安装测试服务

 

vim /var/www/html/index.html                    测试文件

『server1.example.com』

『server2.example.com』

6.测试

 # /etc/init.d/httpd stop (server1或server2)       关闭服务

观测结果:

访问vip的web界面切换

 

#echo c >/proc/sysrq-trigger                    挂掉内核

观测结果:

访问vip的web界面切换,且重新开启被夯住的虚拟机

 

 

 

 

7.服务端(server 3)

添加虚拟内存

rhcs_第9张图片

### yum install scsi-* -y                                      安装必要服务

 

###vim /etc/tgt/targets.conf                               修改配置文件

 38

 39    backing-store /dev/vdb

 40    initiator-address 172.25.17.10

 41    initiator-address 172.25.17.11

 42

 

###/etc/init.d/tgtd  start                                          开启服务

 

[root@server3 ~]# tgt-admin -s                          显示所有目标(远程客户端)

Target 1:iqn.2017-o2.com.example:server.target1

   System information:

        Driver: iscsi

        State: ready

   I_T nexus information:

   LUN information:

        LUN: 0

            Type: controller

            SCSI ID: IET     00010000

           SCSI SN: beaf10

            Size: 0 MB, Block size: 1

            Online: Yes

            Removable media: No

            Prevent removal: No

            Readonly: No

            Backing store type: null

            Backing store path: None

           Backing store flags:

        LUN: 1

            Type: disk

            SCSI ID: IET     00010001

            SCSI SN: beaf11

            Size: 8590 MB, Block size: 512

            Online: Yes

            Removable media: No

            Prevent removal: No

            Readonly: No

            Backing store type: rdwr

            Backing store path: /dev/vdb

            Backing store flags:

   Account information:

   ACL information:

        172.25.17.10

        172.25.17.11

 

 

 

客户端(server 1 2)

###yum install -y iscsi-*                                       安装必要服务

iscsiadm -m discovery -t st -p172.25.17.20        客户端远程发现存储

Starting iscsid:                                          [  OK  ]

172.25.17.20:3260,1iqn.2017-o2.com.example:server.target1

 

###iscsiadm -m node -l                                       列出所有存储节点

Logging in to [iface: default,target: iqn.2017-o2.com.example:server.target1, portal: 172.25.17.20,3260](multiple)

Login to [iface: default, target:iqn.2017-o2.com.example:server.target1, portal: 172.25.17.20,3260] successful.

 

###[root@server1 ~]# fdisk -l

 

Disk /dev/vda: 21.5 GB, 21474836480bytes

16 heads, 63 sectors/track, 41610cylinders

Units = cylinders of 1008 * 512 =516096 bytes

Sector size (logical/physical): 512bytes / 512 bytes

I/O size (minimum/optimal): 512bytes / 512 bytes

Disk identifier: 0x0008e924

 

  Device Boot      Start         End      Blocks  Id  System

/dev/vda1   *          3        1018      512000  83  Linux

Partition 1 does not end on cylinderboundary.

/dev/vda2            1018       41611   20458496   8e  Linux LVM

Partition 2 does not end on cylinderboundary.

 

Disk /dev/mapper/VolGroup-lv_root:19.9 GB, 19906166784 bytes

255 heads, 63 sectors/track, 2420cylinders

Units = cylinders of 16065 * 512 =8225280 bytes

Sector size (logical/physical): 512bytes / 512 bytes

I/O size (minimum/optimal): 512bytes / 512 bytes

Disk identifier: 0x00000000

 

 

Disk /dev/mapper/VolGroup-lv_swap:1040 MB, 1040187392 bytes

255 heads, 63 sectors/track, 126cylinders

Units = cylinders of 16065 * 512 =8225280 bytes

Sector size (logical/physical): 512bytes / 512 bytes

I/O size (minimum/optimal): 512bytes / 512 bytes

Disk identifier: 0x00000000

 

 

Disk /dev/sda: 8589 MB, 8589934592bytes

64 heads, 32 sectors/track, 8192cylinders

Units = cylinders of 2048 * 512 =1048576 bytes

Sector size (logical/physical): 512bytes / 512 bytes

I/O size (minimum/optimal): 512bytes / 512 bytes

Disk identifier: 0x00000000

 

 

*『仅server 1』

###fdisk -cu /dev/sda                                                分区

Device contains neither a valid DOSpartition table, nor Sun, SGI or OSF disklabel

Building a new DOS disklabel withdisk identifier 0x76bc3334.

Changes will remain in memory only,until you decide to write them.

After that, of course, the previouscontent won't be recoverable.

 

Warning: invalid flag 0x0000 ofpartition table 4 will be corrected by w(rite)

 

Command (m for help): n

Command action

  e   extended

  p   primary partition (1-4)

p

Partition number (1-4): 1

First sector (2048-16777215, default2048):

Using default value 2048

Last sector, +sectors or+size{K,M,G} (2048-16777215, default 16777215):

Using default value 16777215

 

Command (m for help): t

Selected partition 1

Hex code (type L to list codes): 8e

Changed system type of partition 1to 8e (Linux LVM)

 

Command (m for help): p

 

Disk /dev/sda: 8589 MB, 8589934592bytes

64 heads, 32 sectors/track, 8192cylinders, total 16777216 sectors

Units = sectors of 1 * 512 = 512bytes

Sector size (logical/physical): 512bytes / 512 bytes

I/O size (minimum/optimal): 512bytes / 512 bytes

Disk identifier: 0x76bc3334

 

  Device Boot      Start         End     Blocks   Id  System

/dev/sda1            2048    16777215    8387584   8e  Linux LVM

 

Command (m for help): w

The partition table has beenaltered!

 

Calling ioctl() to re-read partitiontable.

Syncing disks.

 

 

客户端(server 1 2)

###fdisk -l                                                 查看分区是否一致

Device Boot      Start         End      Blocks  Id  System

/dev/sda1               2        8192    8387584   8e  Linux LVM

 

[root@server1 ~]# pvcreate /dev/sda1         【server 1】创建pv

 Physical volume "/dev/sda1" successfully created

[root@server1 ~]# pvs                                   刷新

 PV         VG       Fmt Attr PSize  PFree

 /dev/sda1           lvm2 a--   8.00g 8.00g

 /dev/vda2  VolGroup lvm2 a--  19.51g   0

 

[root@server1 ~]# vgcreate clustervg/dev/sda1     【server 1】创建vg

 Clustered volume group "clustervg" successfully created

[root@server1 ~]# vgs                                               刷新

 VG        #PV #LV #SN Attr   VSize VFree

 VolGroup    1   2   0wz--n- 19.51g    0

 clustervg   1   0   0wz--nc  8.00g 8.00g

 

[root@server1 ~]# lvcreate -L 4G -ndemo clustervg     【server 1】创建lv

 Logical volume "demo" created

[root@server1 ~]# lvs                                           刷新

 LV      VG        Attr       LSize  Pool Origin Data%  Move LogCpy%Sync Convert

 lv_root VolGroup  -wi-ao----  18.54g                                            

 lv_swap VolGroup  -wi-ao----992.00m                                            

 demo    clustervg -wi-a-----   4.00g                                         

 

[root@server1 ~]# mkfs.ext4/dev/clustervg/demo  【server 1】格式化磁盘

mke2fs 1.41.12 (17-May-2010)

Filesystem label=

OS type: Linux

Block size=4096 (log=2)

Fragment size=4096 (log=2)

Stride=0 blocks, Stripe width=0blocks

262144 inodes, 1048576 blocks

52428 blocks (5.00%) reserved forthe super user

First data block=0

Maximum filesystem blocks=1073741824

32 block groups

32768 blocks per group, 32768fragments per group

8192 inodes per group

Superblock backups stored on blocks:

      32768,98304, 163840, 229376, 294912, 819200, 884736

 

Writing inode tables: done                           

Creating journal (32768 blocks):done

Writing superblocks and filesystemaccounting information: done

 

### mount /dev/clustervg/demo  /mnt                   挂载【1】

[root@server1 ~]# cd /mnt/

[root@server1 mnt]# vim index.html                         创建测试文件【1】

[root@server1 ~]# umont /mnt/                               卸载【1】

 ####clusvcadm -d httpd                                                关闭服务【1】

rhcs_第10张图片

rhcs_第11张图片

rhcs_第12张图片

###clusvcadm -e httpd                                                    开启服务【1】

###clusvcadm -r httpd -mserver2.exmple.com             将服务从1移到2

 

 

###lvextend -L +2G/dev/clustervg/demo                            扩容磁盘【2】

###resize2fs /dev/clustervg/demo                                  扩容文件系统【2】

###clusvcadm -d httpd                                                    关闭服务【2】

rhcs_第13张图片

rhcs_第14张图片

### lvremove /dev/clustervg/demo                                删除lv【2】

###lvcreate -L 2G -n demo clustervg                              重做lv【2】

###mkfs.gfs2 -p lock_dlm -j 3 -thaha:mygfs2 /dev/clustervg/demo    重新格式化,改为gfs2【2】       

###mount /dev/clustervg/demo  /mnt                               挂载【1 2】

 

### vim /mnt/index.html                                                 写测试页面【1 或 2】

###umount /mnt/                                                                 解除挂载【1 2】

 

### vim /etc/fstab                                                           改为开机自动挂载【1 2】

/dev/clustervg/demo     /var/www/html   gfs2   _netdev 0 0

 

 

###mount -a                                                                    刷新挂载【1 2】

 

 

 

 

###df -h                                                                           查看【1 2】

Filesystem                    Size  Used Avail Use% Mounted on

/dev/mapper/VolGroup-lv_root   19G 1.1G   17G   6% /

tmpfs                         499M   32M 468M   7% /dev/shm

/dev/vda1                     485M   33M 427M   8% /boot

/dev/mapper/clustervg-demo    2.0G 388M  1.7G  19% /var/www/html

 

###clusvcadm -e httpd                                                    开启服务【2】

###lvextend -L +5G/dev/clustervg/demo                            扩容内存【2】

###gfs2_grow /dev/clustervg/demo                                    扩容系统文件【2】

 

[root@server2 ~]# gfs2_tool journals/dev/clustervg/demo 查看日志个数【2】

journal2 - 128MB

journal1 - 128MB

journal0 - 128MB

3 journal(s) found.

[root@server2 ~]# gfs2_jadd -j 3/dev/clustervg/demo            添加日志个数【2】

Filesystem:            /var/www/html

Old Journals           3

New Journals           6

[root@server2 ~]# gfs2_tool journals/dev/clustervg/demo 刷新

journal2 - 128MB

journal3 - 128MB

journal1 - 128MB

journal5 - 128MB

journal4 - 128MB

journal0 - 128MB

6 journal(s) found.

 

[root@server2 ~]# gfs2_tool sb/dev/clustervg/demo table haha:mygfs2  更改名称【1 2】

You shouldn't change any of thesevalues if the filesystem is mounted.

 

Are you sure? [y/n] y

 

current lock table name ="haha:mygfs2"

new lock table name ="haha:mygfs2"

Done

[root@server2 ~]# gfs2_tool sb/dev/clustervg/demo all 显示块的所有信息【1 2】

 mh_magic = 0x01161970

 mh_type = 1

 mh_format = 100

 sb_fs_format = 1801

  sb_multihost_format = 1900

 sb_bsize = 4096

 sb_bsize_shift = 12

 no_formal_ino = 2

 no_addr = 23

 no_formal_ino = 1

 no_addr = 22

 sb_lockproto = lock_dlm

 sb_locktable = haha:mygfs2

 uuid = ef017251-3b40-8c81-37ce-523de9cf40e6