📖
Simple & Clear Engineer Note
  • This is me
  • Infra 용어
  • Linux Acceptance test
    • ISO 9126의 특성에 따른 OS 항목 분류
    • 기능성 (Functionality)
      • Kernel 영역
      • LVM (Logical Volume Manager)
      • API (daemon 서비스 상태 체크)
      • CPU 정보 및 Firmware 확인
      • Memory 용량 및 Slot 확인
      • Negotiation 상태 확인
      • Raid 구성 확인
      • WEB/WAS 설치
      • Cache/Swap 메모리 초기화
      • NFS (Network File System)
    • 신뢰성 (Reliability)
      • Bonding
      • System Reboot
      • Disk Mirror
      • Multipath
      • Cluster
      • Backup & Optical Drive check
      • kdump
      • watchdogtimer
    • 사용성 (Usability)
      • Locale
      • Network 구성
      • Hosts file
      • DNS(Domain Name System)
      • NTP(Network Time Protocol) 시간 동기화
      • tcpdump
      • SSH (Secure Shell)
      • Runlevel
      • Crontab 작업 예약
      • TimeZone
      • VNC(Virtual Network Computing)
      • Yum local repository
    • 유지보수성 (Maintenance)
      • hdparm
    • 보안성 (Security)
      • Permission error 해결방법
    • 기타(ETC)
      • X window
      • Macro (Shell Script & TeraTerm(TTL))
  • Webserver
    • Infra Structure 소개
      • HTML +CSS +JavaScript
      • MongoDB + Flask
  • Hadoop Guide
    • Hadoop Single설치 (ver 2.7.4)
  • MachineLearning
    • 확률(Probability)
    • Machine learning이해하기
    • Processing Data(Numpy)
    • Data Handling - Pandas
      • feature Scaling
      • Data encoding
    • Analysis(with Python & R)
      • 기초통계지식
      • 회귀(Regression)
      • 분류(Classification)
      • 차원축소(Dimension Reduction)
      • 군집화(Clustering)
      • 평가(Evaluation)
      • Scikitlearn
    • Text Analysis
    • Time Series Analysis
    • Statistics
    • Customer Value Analysis
  • Deep Learning
    • CS231n
      • CS231n (Lecture 1~6)
      • CS231n(Lecture7~12)
  • DataBase
    • DataBase
    • Transaction
    • Oracle 12C setup
    • MySQL setup
    • neo4j Enterprise Setup
    • SQL
    • Data inquiry and data analysis using SQL
    • 품질 & RiskManagement
    • 성능(Performance)
    • 안정성
    • 이기종간 데이터 이관방법
  • 기타
    • JAVA용어정리(암기)
  • Windows 관리
    • WINDOW 서버 root 권한 설정 방법
    • 접속자 확인
  • EMRproject
    • Git & Github
Powered by GitBook
On this page
  • Cluster 개념
  • HA Cluster 구성 방법
  • HA Cluster 구성 환경
  • HA Cluster 패키지 설치 목록
  • HA Cluster 구성 방법
  • HA Cluster failover 테스트
  • Reference

Was this helpful?

  1. Linux Acceptance test
  2. 신뢰성 (Reliability)

Cluster

HA Cluster 구성 및 Failover 테스트

PreviousMultipathNextBackup & Optical Drive check

Last updated 5 years ago

Was this helpful?

Cluster 개념

Cluster는 여러 대의 서버들이 연결되어 하나의 시스템처럼 동작하는 서버들의 집합을 말한다. 일반적으로 단일 서버보다 더 뛰어난 성능과 안정성을 제공하고, 비용 면에서 훨씬 더 효율적이다. 종류는 고계산용 클러스터(HPC), 부하분산 클러스터(LVS), 고가용성 클러스터(HA) 등이 있다.

HA Cluster 구성 방법

HA Cluster 구성 환경

  • <노드 1> 호스트네임 : cluster1 (datanode4) OS 버전 : Centos 6.10

  • <노드 2> 호스트네임 : cluster2 (datanode5) OS 버전 : Centos 6.10

  • <Cluster-VIP> 호스트네임 : cluster-vip

HA Cluster 패키지 설치 목록

  • pcs

  • pacemaker

  • corosync

  • cman

  • psmisc

  • policycoreutils-python

HA Cluster 구성 방법

<양쪽 노드에서 진행>

1. vi편집기로 /etc/hosts 파일에 내용 추가 # vi /etc/hosts

2-1. cluster 구성 필요한 패키지 설치 # yum install -y pacemaker corosync psmisc policycoreutils-python cman

  • yum install pcs에서도 pcs-0.9.155-3 파일을 다운을 받을 수 있지만, pcs-0.9.148-7 버전을 설치하는 것을 선호한다. 이유는 13번 pcs status의 주의사 내용에서 확인하겠다.

2-3. Fillzilla로 다운로드한 파일을 서버로 복사

2-4. rpm으로 파일 설치 및 확인 # rpm -ivh pcs-0.9.148-7.el6.x86_64.rpm # rpm -qa | grep pcs

3. 방화벽(iptables) 해제 및 확인 # service iptables stop # service iptables status

4. pcsd 실행 및 확인 # service pcsd start # service pcsd status

5. hacluster 계정 비밀번호를 양쪽 동일하게 설정 # passwd hacluster

<cluster1 노드에서만 진행>

6. pcs 클러스터 인증 진행 # pcs cluster auth <노드1> <노드2>

7. pcs 클러스터 구성 # pcs cluster setup --name <클러스터 이름> <노드1> <노드2> --force

8. cman 데몬 실행 # service cman start

9. 모든 노드 cluster 실행 # pcs cluster start --all

10. 노드가 부팅되었을 때, 클러스터 서비스가 실행되도록 활성화 # pcs cluster enable --all

11. corosync 설치 확인 # corosync-cfgtool -s

12. corosync 상태 확인 # pcs status corosync

13. pcs 클러스터 상태 확인 # pcs status

13. 유효성 검사 (STONITH 부분에서 오류가 발생) # crm_verify -L -V

14. STONITH 옵션 비활성화 # pcs property set stonith-enabled=false # crm_verify -L

15. 가상화 IP 리소스 생성 및 확인 # pcs resource create VirtualIP ocf:heartbeat:IPaddr2 ip=[Virtual IP 주소] cidr_netmask=24 op monitor interval=30s # pcs status

HA Cluster failover 테스트

1. <노드1>을 정지 후, failover를 확인 # pcs cluster stop <노드1> # pcs status

2. <노드2>에서 pcs 클러스터 상태 확인 # pcs status

3. <노드1> 재시작 후, 클러스터 상태 확인 # pcs cluster start <노드1> # pcs status

Reference

2-2. 아래의 링크에 들어가서 pcs-0.9.148-7.el6.x86_64.rpm 파일 다운로드

주의사항 :

[1]
pcs-0.9.148-7.el6.x86_64.rpm download
pcs-0.9.155-2 버전으로 클러스터를 구성한 후, pcs status로 출력한 결과 하단에 오류 메시지가 나타나지만, 클러스터 테스트 시 문제가 없으므로 오류를 무시하고 진행 가능하다. 필자는 pcs-0.9.148-7 버전으로 클러스터를 구성하는 것을 추천한다.
[1] Computer cluster - From Wikipedia, the free encyclopedia
/etc/hosts 파일 내용 설정
cman 데몬 실행 오류 (클러스터 이름 15자이상 경우)
STONITH 옵션이 활성화되어 오류 발생
STONITH 옵션이 비활성화되어 오류 미발생
가상화 IP 리소스 생성 확인
cluster1(datanode4) 정지 후, failover 테스트
cluster2(datanode5) pcs 클러스터 상태 확인
cluster1에서 클러스터를 다시 실행해도, 리소스는 cluster2로 유지