티스토리 뷰

IT신기술

redis설치및 2중화

정두현의아이티세상 2020. 4. 6. 11:50

redis는 memory기반 경량화 DB로서 Key/value기반의 NoSQL군이다.

빠른 성능과 경량화로 세션클러스터링 및 캐시DB형태로 많이 사용되고 있다.

 

성능상으로 메모리 기반으로 빠른 속도를 제공하고 있다.

단 100만건이 넘어갈경우 급격한 속도 저하를 경고하고 있음으로 임시 저장소로 사용하는것이 유용하다.

 

설치 및 변경에대하여 정리하였다.(자주 사용되며설치시 몇가지만 주의하면 쉽게 사용이 가능하다.

 

레디스 설치
*기본적으로 centos 는 yum, rpm 
                ubuntu는 apt-get
아래는 직접 설치부분이며 위에 기본 설치시 시스템 폴더에 생성되어 관리가 불편하여 아래를 이용하는것이 좋다

$ wget http://download.redis.io/redis-stable.tar.gz 
$ tar xvzf redis-stable.tar.gz 
$ cd redis-stable 
$ make
$ make install

기동은 
$redis-server
 
레디스 설정 (redis.conf)

-백그라운드설정
daemonize yes

-포트변경
redis.conf  에 port 6379(기본포트)

-접근허용변경
bind 127.0.0.1(기본포트, 자기지신만 접속 가능)
예)bind 192.168.0.20 192.168.0.21 208.99.21.64(해당 아이피만 접근 빈칸으로 구분)

-비빌번호설정(상용서비스는 반드시 설정)
 requirepass 패스워드(이부분 주석 처리)
-메모리 설정
maxmemory 1g
-메모리 교체 설정
maxmemory-policy allkeys-lru
*참고 lru(Least Recently Used) 최근사용기준
    ,lfu(Least Frequently Used) 빈번하게 사용

레디스 접속

redis-cli 최초접속
auth password 패스워드인증


레디스 명령어
 - 입력  set key value
 - 조회 keys * (모든 키 출력)
 - 조회 get key (값 출력)
 - 삭제 del key (키 삭제)


레디스 여러개 띄우기
기존 redis.conf 복제하기 redis_7000.conf redis_7001.conf
cp redis.conf redis_7000.conf

redis_7000.conf수정 (각각 포트별로 변경하면된다)
port 7000
pidfile /var/run/redis_7000.pid
dbfilename dump_7000.rdb   

 

기동시 redis-server conf파일경로  이렇게 각각 설치 변경하면 된다.

*redis 설치시 master와 slave의 설정의 차이가

replicaof  마스터ip 마스터port를 slave에 지정해준다




2중화
-하나의 서버는 기본설정
-두번째 서버에 slaveof 설정
- 두서버의 패스워드는 동일하게 설정 master패스워드도 일치시킴

sentinel 설정
-기본적으로 상위의 redis설치시 해당 경로 ./src에 보면 redis-sentinel 이 설치됨을 알수 있다.

sentinel 2중화
cp sentinel.conf sentinel_8000.conf (포트별로 설정파일을 생성하면 명시적이다)

sentinel.conf변경

port 8000

pidfile "/var/run/redis-sentinel_8001.pid"   (pid는 대상 process pid를 저장함으로 다수 생성시 다르게 지정)

logfile "/engn001/redis-stable/logs/sentinel_8001.log"(로그도 각각 지정하여 확인)

sentinel myid 8662d591afeaad0454ce1a16e4d6605f6b86dd06

(id값이 각각 다르게해야 인스턴스를 여러개 띄울경우 명시적인것같다)

 

 

 

 

 

 

 

 

 

 

 

 

'IT신기술' 카테고리의 다른 글

pandas-멀티인덱스  (1) 2024.10.04
spring boot프로젝트 수행  (0) 2019.09.06
댓글