TiDB 로컬 설치 - 테스트 환경 구축

로컬 테스트 클러스터 구축

시나리오: 단일 macOS 또는 Linux 서버를 사용하여 테스트를 위해 로컬 TiDB 클러스터를 신속하게 구축한다. 이러한 클러스터를 배포하면 TiDB의 기본 아키텍처와 TiDB, TiKV, PD 및 모니터링 구성 요소와 같은 구성 요소 작업을 학습할 수 있다.

분산 시스템으로서 기본적인 TiDB 테스트 클러스터는 일반적으로 2개의 TiDB 인스턴스, 3개의 TiKV 인스턴스, 3개의 PD 인스턴스 및 선택적 TiFlash 인스턴스로 구성된다. TiUP Playground를 사용하면, 다음 단계를 수행하여 테스트 클러스터를 신속하게 구축할 수 있다.

1. TiUP를 다운로드하여 설치한다.

curl --proto '=https' --tlsv1.2 -sSf https://tiup-mirrors.pingcap.com/install.sh | sh

다음 메시지가 나타나면 TiUP가 성공적으로 설치되었다.

Successfully set mirror to https://tiup-mirrors.pingcap.com
Detected shell: zsh
Shell profile:  /Users/user/.zshrc
/Users/user/.zshrc has been modified to add tiup to PATH
open a new terminal or source /Users/user/.zshrc to use it
Installed path: /Users/user/.tiup/bin/tiup
===============================================
Have a try:     tiup playground
===============================================

위 출력의 쉘 프로파일 경로에 기억하도록 하자. 다음 단계에서 경로를 사용해야 한다.

설치 후 TiUP는 해당하는 셸 프로필 파일의 절대 경로를 표시한다. 경로에 따라 다음 source 명령에서 ${your_shell_profile}을 변경해야 한다. 이 경우 1단계의 출력에서 ${your_shell_profile}/Users/user/.zshrc이다.

source ${your_shell_profile}

2. 현재 세션에서 클러스터를 시작한다.

단일 TiDB 인스턴스, 단일 TiKV 인스턴스, 단일 PD 인스턴스 및 단일 TiFlash 인스턴스에서 최신 버전의 TiDB 클러스터를 시작하려면 다음 명령을 실행한다.

tiup playground

TiDB 버전과 각 컨포넌트 요소의 인스턴스 수를 지정하려면 다음과 유사한 명령을 실행한다.

tiup playground v6.1.0 --db 2 --pd 3 --kv 3

이 명령은 v6.1.0과 같은 버전 클러스터를 로컬 컴퓨터에 다운로드하여 기동한다. 최신 버전을 보려면 tiup list tidb을 실행한다.

이 명령은 클러스터에 액세스하는 방법을 반환한다.

CLUSTER START SUCCESSFULLY, Enjoy it ^-^
To connect TiDB: mysql --comments --host 127.0.0.1 --port 4001 -u root -p (no password)
To connect TiDB: mysql --comments --host 127.0.0.1 --port 4000 -u root -p (no password)
To view the dashboard: http://127.0.0.1:2379/dashboard
PD client endpoints: [127.0.0.1:2379 127.0.0.1:2382 127.0.0.1:2384]
To view Prometheus: http://127.0.0.1:9090
To view Grafana: http://127.0.0.1:3000

3. TiDB에 액세스하기 위한 새 세션을 시작한다.

TiUP 클라이언트를 사용하여 TiDB에 연결한다.

tiup client

처음 실행을 하면 아래와 같이 필요한 클라이언트가 설치되는 것을 볼 수 있다.

[kimkc@localhost ~]$ tiup client
tiup is checking updates for component client ...
A new version of client is available:
The latest version:         v1.11.0
Local installed version:
Update current component:   tiup update client
Update all components:      tiup update --all

The component `client` version  is not installed; downloading from repository.
download https://tiup-mirrors.pingcap.com/client-v1.11.0-linux-amd64.tar.gz 49.3
download https://tiup-mirrors.pingcap.com/client-v1.11.0-linux-amd64.tar.gz 304.
download https://tiup-mirrors.pingcap.com/client-v1.11.0-linux-amd64.tar.gz 644.
download https://tiup-mirrors.pingcap.com/client-v1.11.0-linux-amd64.tar.gz 1.45
download https://tiup-mirrors.pingcap.com/client-v1.11.0-linux-amd64.tar.gz 2.38
download https://tiup-mirrors.pingcap.com/client-v1.11.0-linux-amd64.tar.gz 3.87
download https://tiup-mirrors.pingcap.com/client-v1.11.0-linux-amd64.tar.gz 4.49
MiB / 4.49 MiB 100.00% 4.24 MiB/s
Starting component `client`: /home/kimkc/.tiup/components/client/v1.11.0/tiup-client
[kimkc@localhost ~]$

그리고, 아래와 같이 엔드포인트 선택 화면이 나온다.

┌─Choose a endpoint to connect─────────────────────────────────────────────────┐
│ TLr4XQE mysql://root@127.0.0.1:4000                                          │
│ TLr4XQE mysql://root@127.0.0.1:4001                                          │
└──────────────────────────────────────────────────────────────────────────────┘

선택은 녹색 항목에서 엔터를 누르면 된다. 여기서는 4000을 선택하였다.

그러면, 아래와 같은 콘솔이 나올 것이다.

my:root@127.0.0.1:4000=>

MySQL과 친화력이 좋아서 그런건지 my라는 단어가 눈에 들어온다.

그럼, 여기서 mysql 명령어인 show databases; 명령을 실행해 보자.

my:root@127.0.0.1:4000=> show databases;
Database
--------------------
INFORMATION_SCHEMA
METRICS_SCHEMA
PERFORMANCE_SCHEMA
mysql
test
(5 rows)

그러면, 위와 같이 표시되는 것을 볼 수 있다.

  • MySQL 클라이언트를 사용하여 TiDB에 연결할 수도 있다.
mysql --host 127.0.0.1 --port 4000 -u root

3. 그밖에 접속 확인

  • http://127.0.0.1:9090 에서 TiDB의 Prometheus 대시보드에 액세스한다.
  • TiDB 대시보드 http://127.0.0.1:2379/dashboard 에 액세스한다.
    • 기본 사용자명은 root이고, 비밀번호는 비어 있다.
  • http://127.0.0.1:3000 에서 TiDB Grafana 대시보드에 액세스한다.
    • 기본 사용자명과 비밀번호는 모두 admin 이다.
  • (선택 사항) 분석용 데이터를 TiFlash에 로드한다.

4. 테스트 배포 후에 클러스터를 정리한다.

  1. Control+C를 눌러 위의 TiDB 서비스를 중지한다.
  2. 서비스가 중지되면 다음 명령을 실행한다.
tiup clean --all

참조




최종 수정 : 2022-10-31