• MySQL매뉴얼
    • MySQL 5.6 매뉴얼
    • MySQL 5.1 매뉴얼
    • MySQL 5.0 매뉴얼
    • MySQL HA 매뉴얼
  • 기술문서
    • Xtrabackup 구성
    • 메모리 사용량 모니터링
  • 서비스
    • MySQL유지보수
    • MySQL라이선스
  • 온라인문의
  • 회사소개
  • → 목 록 (MySQL HA 한글메뉴얼) [close]
  • 1. Chapter 리플리케이션
  • 2. Chapter MySQL ndb Cluster
  • 1. MySQL 클러스터 소개
    2. MySQL 클러스터 5.1 캐리어 그래이드 에디션 (Carrier Grade Edition)
    3. 멀티-컴퓨터 설치 방법
    1. 하드웨어, 소프트웨어, 그리고 네트워킹
    2. 멀티-컴퓨터 설치
    3. 멀티-컴퓨터 구성 (Configuration)
    4. 초기 스타트업
    5. 샘플 데이터 로딩 및 쿼리 실행하기
    6. 세이프 셧다운 및 재 시작하기
    4. MySQL 클러스터 구성 (Configuration)
    5. MySQL 클러스터 업그레이드 및 다운그레이드
    6. MySQL 클러스터 프로세스 관리
    7. MySQL 클러스터 관리
    8. MySQL 클러스터 온-라인 백업
    9. 클러스터 유틸리티 프로그램
    10. MySQL 클러스터 리플리케이션
    11. MySQL 클러스터 디스크 데이터 테이블
    12. MySQL 클러스터와 함께 고속 인터커넥션 (Interconnection) 사용하기
    13. MySQL 클러스터의 한계

2.3.2. 멀티-컴퓨터 설치

 

데이터 노드 또는 SQL 노드로 사용되는 각 MySQL 클러스터 호스트 서버에는 반드시 MySQL 서버 바이너리를 설치해야 한다. 관리 노드 서버에는 MySQL 서버 바이너리를 설치할 필요는 없으나, MGM 서버 데몬 (ndb_mgmd)은 설치해야 한다. 또한, 관리 서버 노드에 관리 클라이언트 (ndb_mgm)를 설치하는 것도 좋을 것이다. 이 섹션에서는 각각의 클러스터 노드에 바이너리를 올바르게 설치하는 방법을 설명하기로 한다.

MySQL AB에서는 MySQL 클러스터용으로 미리 컴파일한 바이너리를 제공하기 때문에  스스로 다시 컴파일할 필요는 없다. 따라서, 각 클러스터 호스트를 설치하는 첫 단계는 mysql-5.1.21-beta-pc-linux-gnu-i686.tar.gz를 다운로드하는 것부터 시작한다. 각 머신의 /var/tmp 디렉토리에 이것을 저장한다.

32-비트 및 64-비트 리눅스 플랫폼에서 RPM 버전을 사용하는 것도 가능하다. MySQL 클러스터용으로는 세 가지 RPM 버전이 필요하다:

  • Server RPM (예를 들면, MySQL-server-5.1.21-beta-0.glibc23.i386.rpm)은 MySQL 서버 및 클러스터 지원용 MySQL 서버 바이너리를 구동하기 위한 코어 파일을 제공한다.
  • NDB Cluster - Storage engine RPM (예를 들면, MySQL-ndb-storage-5.1.21-beta-0.glibc23.i386.rpm)은 MySQL 클러스터 데이터 노드 바이너리 (ndbd)를 제공한다.
  • NDB Cluster - Storage engine management RPM (예를 들면, MySQL-ndb-management-5.1.21-beta-0.glibc23.i386.rpm)은 MySQL 클러스터 관리 서버 바이너리 (ndb_mgmd)를 제공한다.

이와 함께, MySQL 클러스터와 함께 구동시키기 위한 여러 가지 유용한 어플리케이션을 제공하는 NDB Cluster - Storage engine basic tools RPM (예를 들면, MySQL-ndb-tools-5.1.21-beta-0.glibc23.i386.rpm)도 함께 다운 로드하도록 한다. 위의 RPM 중에 가장 중요한 것은 MySQL 클러스터 관리 클라이언트 (ndb_mgm)이다. NDB Cluster - Storage engine extra tools RPM (예를 들면, MySQL-ndb-extra-5.1.21-beta-0.glibc23.i386.rpm)에는 별도의 추가 테스트 및 모니터링 프로그램이 포함되어 있지만, MySQL 클러스터를 설치하는데 꼭 필요한 것들은 아니다.

RPM 파일 이름에 붙어 있는 MySQL 버전 번호 (5.1.21-beta와 같은 번호)는 실제로 사용하고자 하는 버전에 따라서 달라진다. 중요한 것은, MySQL 클러스터를 설치할 때에는 모든 RPM 버전 번호가 일치해야 한다는 점이다.

Note: 설치를 완료한 후에는 어떠한 바이너리도 시작하지 말도록 한다. 우선, 아래와 같이 모든 노드의 환경 구성 방법을 숙지하도록 한다.  

데이터 및 SQL 노드 설치 — .tar.gz 바이너리

호스트 데이터 또는 SQL 노드로 지정한 각 머신에서는, 시스템 root 사용자 권한으로 다음 단계를 실행한다:

1.      시스템에 mysql 그룹 및 mysql 사용자가 이미 존재하는지를 알아보기 위해서 /etc/passwd 및 /etc/group 파일을 검사한다. 몇몇 OS 배포판의 경우에는, 이러한 것들을 OD 설치 과정에서 생성하기도 한다. 이러한 것들이 존재하지 않는다면, 새로운 mysql 사용자 그룹을 하나 생성한 후에, 그 그룹 내에 mysql 사용자를 하나 추가하도록 한다:

 

shell> groupadd mysql

shell> useradd -g mysql mysql

 

useradd 및 groupadd용 신텍스는 유닉스 버전에 따라 다소 차이가 있을 수 있거나, 또는 adduser 및 addgroup과 같이 다른 이름을 사용할 수 있다.

 

2.      다운 로드 파일이 들어 있는 디렉토리로 간 후에, 아카이브 압축을 해제하고, mysql 디렉토리에 대한 심링크를 생성한다. 실제 파일 이름 및 디렉토리 이름은 MySQL 버전에 따라서 다를 수 있다.

 

shell> cd /var/tmp

shell> tar -C /usr/local -xzvf mysql-5.1.21-beta-pc-linux-gnu-i686.tar.gz

shell> ln -s /usr/local/mysql-5.1.21-beta-pc-linux-gnu-i686 /usr/local/mysql

 

3.      mysql 디렉토리로 이동한 후에 시스템 데이터베이스를 생성하기 위한 스크립트를 실행한다:

 

shell> cd mysql

shell> scripts/mysql_install_db --user=mysql

 

4.      MySQL 서버 및 데이터 디렉토리에 필요한 권한을 설정한다:

 

shell> chown -R root .

shell> chown -R mysql data

shell> chgrp -R mysql .

 

데이터 노드가 설치된 각 머신에서의 데이터 디렉토리는 /usr/local/mysql/data라는 것을 주의한다.

 

5.      MySQL 스타트업 스크립트를 적당한 디렉토리에 복사한 후에, OS가 부팅될 때 이 스크립트가 실행되도록 설정한다:

 

shell> cp support-files/mysql.server /etc/rc.d/init.d/

shell> chmod +x /etc/rc.d/init.d/mysql.server

shell> chkconfig --add mysql.server

 

(스타트업 스크립트 디렉토리는 OS 및 버전에 따라서 달라진다.)

여기에서는 스타트업 스크립트용 링크를 생성하기 위해서 레드헷의 chkconfig를 사용하였다.

 

위 단계는 데이터 노드 또는 SQL 노드가 존재하는 각각의 모든 머신에서 개별적으로 실행해야 한다는 점을 다시 한번 기억하도록 한다.

SQL 노드 설치 — RPM 파일

클러스터 SQL 노드로 사용되는 각각의 머신의 경우에는, 시스템 root 사용자 권한으로 아래의 명령어를 실행해서 MySQL RPM을 설치한다:

 

shell> rpm -Uhv MySQL-server-5.1.21-beta-0.glibc23.i386.rpm

 

이렇게 하면, MySQL 서버 바이너리 (mysqld)가 필요한 모든 MySQL 서버 지원 파일과 함께 /usr/sbin 디렉토리에 설치된다. 또한, mysql.server 및 mysqld_safe 스타트업 스크립트가 /usr/share/mysql 및 /usr/bin에 각각 설치된다.

데이터 노드 설치 — RPM 파일

클러스터 데이터 노드용 머신에서는 NDB Cluster - Storage engine RPM만을 설치하면 된다. 이 RPM을 데이터 노드 호스트에 복사한 후에 아래의 명령어를 시스템 root 사용자 권한으로 실행하면 된다:

 

shell> rpm -Uhv MySQL-ndb-storage-5.1.21-beta-0.glibc23.i386.rpm

 

이 명령어는 MySQL 클러스터 데이터 노드 바이너리 (ndbd)를 /usr/sbin 디렉토리에 설치한다.

관리 노드 설치 — .tar.gz 바이너리

관리 노드 (MGM)를 설치할 때에는 mysqld 바이너리를 설치할 필요가 없고, MGM 서버용 바이너리 및 클라이언트만 설치하면 된다. 이 파일을 /var/tmp에 저장해 두었다고 가정하자.

시스템 root 사용자 권한으로 아래 과정을 실행해서 ndb_mgmd 및 ndb_mgm를 클러스터 관리 노드 호스트에 설치한다:

 

1.      /var/tmp 디렉토리로 변경한 후에, 아카이브에서 ndb_mgm 및 ndb_mgmd를 추출한 후에 /usr/local/bin와 같은 적당한 디렉토리에 저장한다:

 

shell> cd /var/tmp

shell> tar -zxvf mysql-5.1.21-beta-pc-linux-gnu-i686.tar.gz

shell> cd mysql-5.1.21-beta-pc-linux-gnu-i686

shell> cp /bin/ndb_mgm* /usr/local/bin

 

2.      파일을 복사한 디렉토리로 변경한 후에, 아래의 명령문을 실행한다:

 

shell> cd /usr/local/bin

shell> chmod +x ndb_mgm*

 

관리 노드 설치 — RPM 파일

MySQL 관리 서버 설치는 NDB Cluster - Storage engine management RPM만 사용하면 된다. 관리 노드 호스트에 이 RPM을 복사한 후에, 시스템 root 사용자 권한으로 아래의 명령문을 실행하면 설치가 진행된다:

 

shell> rpm -Uhv MySQL-ndb-management-5.1.21-beta-0.glibc23.i386.rpm

 

이 명령문은 관리 서버 바이너리 (ndb_mgmd)를 /usr/sbin 디렉토리에 설치한다.

NDB 관리 클라이언트도 함께 설치해야 하는데, 이것은Storage engine basic tools RPM이 제공한다. 이 RPM을 관리 노드 서버에 복사한 후에 시스템 root 사용자 권한으로 아래의 명령문을 실행하면 설치가 진행된다:

 

shell> rpm -Uhv MySQL-ndb-tools-5.1.21-beta-0.glibc23.i386.rpm

 

Storage engine basic tools RPM은 MySQL 클러스터 관리 클라이언트 (ndb_mgm)를 /usr/bin 디렉토리에 설치한다.

서울시 강남구 영동대로 602 6층  TEL: 02-6061-0006
주식회사 이노클러스터  등록번호 : 727-86-02261
Copyright © innocluster Co. ltd. all rights reserved