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
Note:
- v5.2.0부터 TiDB는 Apple M1 칩을 사용하는 컴퓨터에서
tiup playground
의 실행을 지원한다. - 이러한 방식으로 실행되는 플레이 그라운드의 경우, 테스트 배포가 완료된 후에는 TiUP은 원래 클러스터 데이터를 정리한다. 명령을 다시 실행하면 새 클러스터가 검색됩니다.
- 데이터를 스토리지에 보관하려면 다음
tiup --tag <your-tag> playground ...
을 수행한다. 자세한 내용은 TiUP 참조 가이드를 참조한다.
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. 테스트 배포 후에 클러스터를 정리한다.
Control+C
를 눌러 위의 TiDB 서비스를 중지한다.- 서비스가 중지되면 다음 명령을 실행한다.
tiup clean --all
Note:
TiUP Playground는 기본적으로127.0.0.1
를 수신 대기하며, 서비스는 로컬에서만 액세스할 수 있다. 서비스를 외부에서 액세스할 수 있게 하려면 --host
매개 변수를 사용하여 수신 주소를 지정하고 네트워크 인터페이스 카드(NIC)를 외부에서 액세스할 수 있는 IP 주소에 바인딩한다.