ovirt-engine HA(active backup) cluster 구성

RHEVM(ovirt-engine) HA test

참고자료

https://access.redhat.com/articles/216973 의 문서 참고함.

3.1문서 보다 3.0문서가 더 좋음.

2주간 3.1 문서 보면서 삽질을 했는데, 성공 하고 난 후 3.0 문서보니까 삽질하면서 찾았던것들이 여기 다 나오더라.

3.1 문서대로 하면 될 수가 없음. ㅋㅋ

환경

kvm instance : 2 ea

os version : centos 6.7

ovirt version : 3.6

cpu : 2

memory : 4096

storage : HDD 20G

ip addrress

192.168.144.31 node1.test.dom

192.168.144.32 node2.test.dom

192.168.144.30 node0.test.dom ( cluster resource 가상 ip )

os install이 끝난 후

[root@node1 ~]# cat /etc/selinux/config |grep -v ^# | grep -v ^$

SELINUX=permissive

SELINUXTYPE=targeted

### selinux permissive ###

[root@node1 ~]# chkconfig iptables off

[root@node1 ~]# service iptables off

### test의 편의를 iptables sevice off ###

[root@node1 ~]# yum update -y && yum groupinstall ‘high availability’ && reboot

### yum update ha group install 해준다. 그리고 kernel version update 를 위해 reboot ###

####### iptable 설정 예 ######

posting 에서는 편의를 위해 iptable 을 끄고 함.

# iptables -N RHCS

# iptables -I INPUT 1 -j RHCS

# iptables -A RHCS -p udp --dst 224.0.0.0/4 -j ACCEPT

# iptables -A RHCS -p igmp -j ACCEPT

# iptables -A RHCS -m state --state NEW -m multiport -p tcp --dports \

40040,40042,41040,41966,41967,41968,41969,14567,16851,11111,21064,50006,\

50008,50009,8084 -j ACCEPT

# iptables -A RHCS -m state --state NEW -m multiport -p udp --dports \

6809,50007,5404,5405 -j ACCEPT

# service iptables save

[root@node1 ~]# chkconfig ricci on && service ricci start

[root@node1 ~]# echo test123 | passwd ricci –stdin

ricci 사용자의 비밀 번호 변경 중

passwd: 모든 인증 토큰이 성공적으로 업데이트 되었습니다.

### ricci service on ricci 사용자 passwd 를 test123 로 등록 ###

[root@node1 ~]# yum install -y luci && chkconfig luci on && service luci start

### luci install, luci 는 다른 가상머신이나 다른곳에 설치 후 사용하는게 더 좋다. Cluster member luci가 깔려 있으면 큰 오류는 아니지만 약간 오작동을 했었다. ###

web browser 에서 luci 접속

https://node1.test.dom:8084

cluster 생성

Manage clusters > create 클릭 하면 아래와 같이 입력.

1

xvm Fence device 만들기

Manage clusters > rhevm-cluster > Fence Devices 클릭

https://access.redhat.com/solutions/293183 참고하여 xvm fence device 만든 후 등록 함. 궂이 등록하지 않아도 fencing 은 된다.

2

3

위와 같이 등록 하였다.

Iscsi 설정

iscsi server(node1 node2를 제외한) 에서 다음과 같이 volume을 만들어 준다.

Rhel7 에서 targetcli 이용 하여 volume 만듬.

/iscsi/iqn.20…u-test-domain> ls

o- iqn.2016-04.test.dom:youngju-test-domain ……………………………… [TPGs: 1]

o- tpg1 ………………………………………………… [no-gen-acls, no-auth]

o- acls ………………………………………………………….. [ACLs: 2]

| o- iqn.2016-04.test.dom:nestedkvm …………………………… [Mapped LUNs: 1]

| | o- mapped_lun0 ………………………………….. [lun0 block/youngju (rw)]

| o- iqn.2016-05.dom.test:ovirt1 ……………………………… [Mapped LUNs: 1]

| | o- mapped_lun0 …………………………………. [lun1 block/youngju2 (rw)]

| o- iqn.2016-05.dom.test:ovirt2 ……………………………… [Mapped LUNs: 1]

| | o- mapped_lun0 …………………………………. [lun1 block/youngju2 (rw)]

| o- iqn.2016-05.dom.test:rhevm1 ……………………………… [Mapped LUNs: 1]

| | o- mapped_lun2 …………………………………. [lun2 block/youngju3 (rw)]

| o- iqn.2016-05.dom.test:rhevm2 ……………………………… [Mapped LUNs: 1]

| o- mapped_lun2 …………………………………. [lun2 block/youngju3 (rw)]

o- luns ………………………………………………………….. [LUNs: 3]

| o- lun0 …………………………….. [block/youngju (/dev/vg_iscsi/youngju1)]

| o- lun1 ……………………………. [block/youngju2 (/dev/vg_iscsi/youngju2)]

| o- lun2 ……………………………. [block/youngju3 (/dev/vg_iscsi/youngju3)]

o- portals …………………………………………………….. [Portals: 1]

o- 0.0.0.0:3260 ……………………………………………………… [OK]

/iscsi/iqn.20…u-test-domain>

[root@node1 ~]# yum install -y iscsi-initiator-utils

[root@node1 ~]# cat /etc/iscsi/initiatorname.iscsi |grep -iv ^#

InitiatorName=iqn.2016-05.dom.test:rhevm1

[root@node1 ~]# iscsiadm -m discovery -t st -p 10.10.10.10

10.10.10.10:3260,1 iqn.2016-04.test.dom:youngju-test-domain

[root@node1 nodes]# iscsiadm -m node -l

[root@node2 ~]# yum install -y iscsi-initiator-utils

[root@node2 ~]# cat /etc/iscsi/initiatorname.iscsi |grep -iv ^#

InitiatorName=iqn.2016-05.dom.test:rhevm2

[root@node2 ~]# iscsiadm -m discovery -t st -p 10.10.10.10

10.10.10.10:3260,1 iqn.2016-04.test.dom:youngju-test-domain

[root@node2 ~]# iscsiadm -m node -l

### iscsi initiator를 설치하고 targetlogin 한다. ###

[root@node1 ~]# lsblk

NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT

vda 253:0 0 20G 0 disk

├─vda1 253:1 0 500M 0 part /boot

├─vda2 253:2 0 1G 0 part [SWAP]

└─vda3 253:3 0 18.5G 0 part /

sr0 11:0 1 1024M 0 rom

sda 8:0 0 50G 0 disk

└─sda1 8:1 0 50G 0 part

[root@node1 ~]# lvs

LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert

etc-ovirt-engine RHEVM -wi——- 1.00g

etc-pki-ovirt-engine RHEVM -wi——- 1.00g

usr-share-ovirt-engine RHEVM -wi——- 1.00g

usr-share-ovirt-engine-wildfly RHEVM -wi——- 2.00g

var-lib-ovirt-engine RHEVM -wi——- 5.00g

var-lib-pgsql RHEVM -wi——- 5.00g

### lvm 볼륨을 만들어 준다. ###

[root@node1 ~]# cat clusterdir

/etc/ovirt-engine

/etc/pki/ovirt-engine

/usr/share/ovirt-engine

/usr/share/ovirt-engine-wildfly

/var/lib/ovirt-engine

/var/lib/pgsql

[root@node1 ~]# for i in `cat clusterdir` ; do mkdir -p $i; done

### lvm volume mount point 생성 ###

mount /dev/RHEVM/etc-ovirt-engine /etc/ovirt-engine

mount /dev/RHEVM/etc-pki-ovirt-engine /etc/pki/ovirt-engine

mount /dev/RHEVM/usr-share-ovirt-engine /usr/share/ovirt-engine

mount /dev/RHEVM/usr-share-ovirt-engine-wildfly /usr/share/ovirt-engine-wildfly

mount /dev/RHEVM/var-lib-ovirt-engine /var/lib/ovirt-engine

mount /dev/RHEVM/var-lib-pgsql /var/lib/pgsql

### lvm volume mount ###

2 부 계속…