* 가상머신 선택
가상머신은 Virtual Box나 VMware Workstation 보다, 리눅스OS 위에 올라가는 KVM 구성을 권장한다. KVM으로 구성하면 대부분의 Fence를 사용할 수 있다. KVM 서버 구축은 여기서 다루지 않는다.
* 개요
High Availability Cluster 구성을 위해서는 4개의 가상머신(노드)를 생성해야 한다.
node1 / node2 / node3 / iscsi-stroage
node1~3은 클러스터 노드가 되며, iscsi-storage는 공유디스크를 위한 스토리지가 된다. 클러스터 노드, 스토리지 각각 설정이 다르다.
* 전체 기본 서버 세팅
- VM에서 TEMPLATE용 VM을 만든다. (예를들어 RHCS8-RHEL8.6-template 이런식으로)
- 아래 세팅을 먼저 수행해둔다.
1. /etc/hosts setting
vi /etc/hosts
### External (Service) Network ###
###192.168.1.193 node1.service
###192.168.1.118 node2.service
###192.168.1.102 node3.service
###192.168.1.109 storage.service
### hb network ###
10.10.1.11 node1.example.com
10.10.1.12 node2.example.com
10.10.1.13 node3.example.com
### storage networks ###
10.10.2.11 node1.storage.patha.com
10.10.2.12 node2.storage.patha.com
10.10.2.13 node3.storage.patha.com
10.10.2.100 storage.patha.com
10.10.3.11 node1.storage.pathb.com
10.10.3.12 node2.storage.pathb.com
10.10.3.13 node3.storage.pathb.com
10.10.3.100 storage.pathb.com
2. Default firewalld setting
- 방화벽 자동시작 세팅
3.. yum config 및 iso 파일 준비
- Base, High Availability, Resilient Storage 3가지 iso를 각 노드에 /iso에 복사
- /mnt 에 마운트포인트인 /mnt/base , /mnt/ha, /mnt/rs 3가지 생성
- 위 정보를 가지고 yum repository 구성
- etc/rc.d/rc.local 에 아래 자동 실행하도록 세팅 후 chmod +x /etc/rc.d/rc.local 명령 실행
- mount -o loop /iso/rhel-8.3-x86_64-dvd.iso /mnt/base
- mount -o loop /iso/rhel-8.3-x86_64-dvd-ha.iso /mnt/ha
- mount -o loop /iso/rhel-8.3-x86_64-dvd-rs.iso /mnt/rs
- 작업해둔 template 파일을 아래와 같이 4개의 VM으로 클론을 만들면 된다.

* node 구성
클러스터 노드 역할을 하는 서버 구성이다. 클론으로 만든 node1,2,3 3개 가상머신에 대해 각각 아래 세팅을 수행한다.
1. 퍼블릭 네트워크 설정 진행, SSH 연결 수행
- 해당 서버는 아래와 같이 4개의 네트워크가 필요하다.
- 외부 연결 (서비스)네트워크 1개
- Heartbeat 네트워크 1개
- 스토리지 네트워크 2개
- 우선 가상머신의 서비스와 외부 연결을 위한 네트워크 설정을 각각 콘솔에서 수행한다. 다 되면 이후에는 ssh로 연결할 수 있다.
2. network setting
- 아래 남은 3개의 네트워크를 구성한다.
- Heartbeat 네트워크 1개
- 스토리지 네트워크 2개
네트워크 구성시 예를 들어, 이런식으로 현재 있는 네트워크 정보들을 삭제하고
nmcli con del enp0s2
nmcli con del enp0s3
nmcli con del enp0s4
이런식으로 새로 등록한다.
nmcli con add con-name "enp2s0" ifname enp2s0 autoconnect yes type ethernet ip4 10.10.1.11/24 gw4 10.10.1.1
nmcli con add con-name "enp3s0" ifname enp3s0 autoconnect yes type ethernet ip4 10.10.2.11/24 gw4 10.10.2.1
nmcli con add con-name "enp4s0" ifname enp4s0 autoconnect yes type ethernet ip4 10.10.3.11/24 gw4 10.10.3.1
3. hostname
- 원하는 호스트명을 설정한다. EX436 시험에서는 이런 식의 호스트명을 사용한다. node1.example.com
* storage 구성
iscsi 스토리지 역할을 하는 서버 구성이다.
1. 퍼블릭 네트워크 설정 진행, SSH 연결 수행
- 해당 서버는 아래와 같이 3개의 네트워크가 필요하다.
- 외부 연결 (서비스)네트워크 1개
- 스토리지 네트워크 2개
- 우선 가상머신의 서비스와 외부 연결을 위한 네트워크 설정을 각각 콘솔에서 수행한다. 다 되면 이후에는 ssh로 연결할 수 있다.
2. network setting
- 아래 남은 2개의 네트워크를 구성한다.
- 스토리지 네트워크 2개
네트워크 구성시 예를 들어, 이런식으로 현재 있는 네트워크 정보들을 삭제하고
nmcli con del enp4s0
nmcli con del enp5s0
이런식으로 새로 등록한다.
nmcli con add con-name "enp4s0" ifname enp4s0 autoconnect yes type ethernet ip4 10.10.2.100/24 gw4 10.10.2.1
nmcli con add con-name "enp5s0" ifname enp5s0 autoconnect yes type ethernet ip4 10.10.3.100/24 gw4 10.10.3.1
3. hostname
- 원하는 호스트명을 설정한다. EX436 시험에서는 이런 식의 호스트명을 사용한다. storage.example.com
4. 추가 방화벽 작업
- firewall-cmd --permanent --add-port=3260/tcp 명령 실행 후 firewall-cmd --reload 실행
5. 가상머신에서 1GB 디스크 한개 추가
- 가상머신 프로그램단에서 수행한다. 해당 가상머신 장치 수정에서 디스크를 추가하면 된다.

- 디스크는 원하는 용량대로 원하는 개수만큼 설정하면 된다. 여기서는 5기가 1개를 추가하였다.
6. targetcli 설정 (자세한 구성은 설명하지 않는다)
- install targetcli
- setting 1G LUN * 1EA
- 아래 정보대로 정보를 구성한다. 해당 서버들만 iscsi 서버에 연결할 수 있다.
iqn.2023-12.com.example:node1
iqn.2023-12.com.example:node2
iqn.2023-12.com.example:node3
6번 부분은 아래를 참고한다.
2024.04.21 - [High Availability/Lab Environment] - iSCSI (targetcli) 구성
iSCSI (targetcli) 구성
* iSCSI란? - iSCSI는 IP 네트워크를 통해 SCSI 스토리지 프로토콜을 에뮬레이트 하는 TCP/IP 기반 프로토콜이다. - 가상환경이나 테스트환경에서 SCSI를 사용하기 어려우므로, iSCSI를 통해 테스트용으로
watch-n-learn.tistory.com
'High Availability > Lab Environment' 카테고리의 다른 글
[QEMU-KVM] KVM virsh 명령어 중 자주 쓰는 명령어들 (0) | 2024.04.21 |
---|---|
iSCSI (targetcli) 구성 (0) | 2024.04.21 |
[QEMU-KVM] RHEL8에서 KVM 가상머신 생성 (0) | 2024.04.19 |
[QEMU-KVM] RHEL8에서 KVM 가상머신 환경 및 네트워크 구성 (HA 클러스터용) (0) | 2024.04.19 |
Fence_xvm 구성하기 (0) | 2024.02.15 |