티스토리 뷰
Installation Redis Cluster on Docker.
Docker를 이용하여 Cluster 모드를 간단히 설치 할 수 있다.
Docker image를 다운받아 Cluster & Replication을 손쉽게 구성할 수 있다.
기본 설치 환경
OS : OSX El Capitan
Docker : 1.10.0
Redis : 3.0.6
Docker가 준비되어있지 않다면 아래 URL을 참고 하도록 한다.
http://rocksea.tistory.com/338
docker-redis-cluster 내부 구성
docker-redis-cluster를 이용하여 Cluster & Replication 설정이 구성된 상태의 Redis를 실행할 수 있다. 이미지 내의 실행 커맨드를 확인해 보면 총 3개의 cluster와 각각의 노드별 3개의 replication 설정으로 구성되어 있다.
/redis/src/redis-trib.rb create --replicas 1 ${IP}:7000 ${IP}:7001 ${IP}:7002 ${IP}:7003 ${IP}:7004 ${IP}:7005
[그림 1] Redis Node 구성
시작 환경이 준비가 되었다면 아래 단계로 설치 및 테스트를 진행한다.
step 1. Redis-Cluster Docker Image 다운로드
step 2. Run Redis-Cluster Container 생성 및 실행
step 3. Redis Client Cluster Mode 실행
-c 옵션값을 추가하고 실행해야 cluster 내의 분산저장된 값을 조회할 수 있다.
step 4. Set Key Value
이제 key & valaue 데이터를 저장하는 과정을 진행한다. Cluster에 값을 저장할때 slots range에 따라 각 Redis 서버에 분산되어 저장된다.
127.0.0.1:7000> cluster slots
1) 1) (integer) 0
2) (integer) 5460
3) 1) "172.17.0.3"
2) (integer) 7000
4) 1) "172.17.0.3"
2) (integer) 7003
2) 1) (integer) 10923
2) (integer) 16383
3) 1) "172.17.0.3"
2) (integer) 7002
4) 1) "172.17.0.3"
2) (integer) 7005
3) 1) (integer) 5461
2) (integer) 10922
3) 1) "172.17.0.3"
2) (integer) 7001
4) 1) "172.17.0.3"
2) (integer) 7004
127.0.0.1:7000> set rocksea1 a
-> Redirected to slot [5593] located at 172.17.0.3:7001
OK
172.17.0.3:7001> set rocksea2 b
OK
172.17.0.3:7001> set rocksea3 c
-> Redirected to slot [13723] located at 172.17.0.3:7002
OK
172.17.0.3:7002> set rocksea4 d
-> Redirected to slot [1404] located at 172.17.0.3:7000
OK
172.17.0.3:7000> set rocksea5 e
-> Redirected to slot [5469] located at 172.17.0.3:7001
OK
172.17.0.3:7001> set rocksea6 f
OK
172.17.0.3:7001> set rocksea7 g
-> Redirected to slot [13599] located at 172.17.0.3:7002
OK
Reference URL :
http://www.redis.io/topics/cluster-tutorial
https://github.com/Grokzen/docker-redis-cluster
http://the-earth.tistory.com/entry/redis-cluster-구성하기
'Developer' 카테고리의 다른 글
[gradle] How To Speed up Gradle build time (0) | 2016.04.27 |
---|---|
[Algorithm] Euclidean Algorithm in python (0) | 2016.03.31 |
[Docker] How to use Docker on OS X (0) | 2016.02.11 |
[vim] How to use Shell Command on VIM (2) | 2016.01.28 |
[JAVA] Collectoion 활용하기 (0) | 2016.01.05 |
- Total
- Today
- Yesterday
- 여행
- 비교구문
- 베트남
- mongoDB
- 도덕경
- 다낭
- hdfs
- 대명사 구문
- PostgreSQL
- 스페인 여행
- 해외여행
- 조동사
- hadoop
- it
- AWS
- JBOSS
- 가정법
- nodejs
- maven
- redis
- 영작
- ubuntu
- 비지니스 영어
- NGINX
- Python
- 영문법
- Python Django
- memcached
- Business English
- k8s
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |