ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • [MariaDB x Galera Cluster] Galera Cluster 설정 방법
    Study 2021. 6. 9. 17:22

    Galera Cluster 설정 방법

    • MariaDB 10 이상의 버전에서는 설치 없이 Galera 사용 가능
      (현재 PMS는 MariaDB 10.4 사용)

    Galera Cluster 설정 수정

    # vi /etc/my.cnf.d/server.cnf 

    *상세 내용

    [galera]
    # Mandatory settings
    wsrep_on=ON                    // Galera 사용 위해 on 설정
    #wsrep_provider=/usr/lib64/galera/libgalera_smm.so    // 루트 (MariaDB 10.3 version)
    wsrep_provider=/usr/lib64/galera-4/libgalera_smm.so    // 루트 (MariaDB 10.4 version)
    
    wsrep_cluster_address=gcomm://192.168.0.123, 192.168.0.456    // 다중화 구성에 사용될 서버 IP
    wsrep_cluster_name=cluster_pms
    
    wsrep_node_name=pms1                // 현재 노드의 이름
    wsrep_node_address=192.168.0.123            // 현재 노드의 IP 주소
    
    #Galera Log
    log-error=/var/lib/mysql
    general_log = 1
    general_log_file=/var/lib/mysql/general.log
    
    binlog_format=row
    default_storage_engine=InnoDB
    innodb_autoinc_lock_mode=2
    wsrep_provider_options="pc.ignore_sb=TRUE"        // 데드락 허용 여부 (디폴트 : false) 
    • 위의 설정을 다른 노드에도 적용한다. (해당 노드의 IP 주소로 수정할 것)

    Galera 클러스터 생성

    # galera_new_cluster    // 해당 노드를 중심으로 클러스터 생성

    다른 노드에서 mariaDB 실행

    • DB 실행 시 자동 동기화
    • 'galera_new_cluster' 이후에 DB를 실행시켜야한다.
    • 모든 노드의 selinux 설정을 허용모드로 설정해야 한다
      • 명령어 # sestatus를 통해 selinux 설정 확인. 'Current mode'가 enforce 설정일 경우, # setenforce 0을 입력해 'Current mode'를 'permissive' 상태로 변경한다.

    Galera Cluster 주요 파일

    경로 : /var/lib/mysql/
    1. grastate.dat : 현재 작동 중인 갈레라의 상태를 표시
      uuid : 해당 노드의 식별자
      seqno : '-1' 시 실행 중, 그 외의 정수일 때는 트랜잭션 된 수 표시 (중지 시에 표시)
      safe_to_bootstrap : 가장 마지막에 꺼진 노드는 '1'로 표시
    2. galera.cache : 트랜잭션을 기록하는 파일
    3. gvwstate.dat : 현재 해당 클러스터에 속해 동기화 된 서버의 uuid값을 보여줌
    • view_id : 앞의 숫자는 클러스터 구성원 변경 총 수 / 뒤의 숫자는 클러스터 구성 후 기록된 트랜잭션 수
      my_uuid: b508a1e8-a888-11eb-b3d2-e6520882f61d
      #vwbeg
      view_id: 3 b508a1e8-a888-11eb-b3d2-e6520882f61d 6
      bootstrap: 0
      member: b508a1e8-a888-11eb-b3d2-e6520882f61d 0
      member: f035abb8-a893-11eb-ad6f-ba6fba21c827 0
      #vwend

    댓글

Designed by Tistory.