Notice
Recent Posts
Recent Comments
Link
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
Tags
- DI
- 바이너리 카운팅
- 필드 주입
- java
- jpa
- lambda
- AOP
- 인덱스
- stream
- 생성자 주입
- 재정의
- MSA
- KEVISS
- Test
- redis
- jwt
- DDL
- 조합
- Spring
- StringBuilder
- docker
- 테스트 코드
- hashcode
- select_type
- equals
- VUE
- static
- 열 속성
- cache
- SQL
Archives
- Today
- Total
백엔드 개발자 블로그
Redis 설치 및 설정 본문
AWS에서 Redis(Master,Slave) 설치, Sentinel(Master,Slave,Service) 설치 가이드를 위한 글입니다.
AWS Redis 설치(Master)
AWS에서 인스턴스를 생성해서 redis를 설치해줍시다.
1. AWS 접속, 회원가입 (카드정보 기입)
2. 로그인(루트 사용자)
3. EC2 검색 후 선택
4. 인스턴스 시작 클릭
5. 인스턴스 시작 (setting)
6. 인스턴스에 연결
인스턴스 생성이 좀 걸리므로 좀 기다려야 됩니다.
성공하면 cli 뜹니다.
7. Redis 설치
- 권리자 권한으로 변경
- sudo su
- apt 설치 업데이트
- apt-get update
- Redis 설치
- apt-get install redis-server
- Continue? => y 입력
- Service 상태 출력
- service redis status
Replica(Slave) 생성 및 설정
master image를 copy해서 Replica를 생성해봅시다.
1. 인스턴스 선택해서 이미지 생성 클릭
2. 입력사항 입력해서 이미지 생성
생성되면 AMI에서 확인 가능합니다.
3. 자, 이제 replica 설정을 해줍시다.
- 생성된 인스턴스에 연결
- redis-cli 접속 : redis-cli
- AWS 인스턴스에서 master IP 확인
- replica 등록 : replicaof [master IP]
4. master-replica sync 이전에 6379 포트를 열어줍시다.
그래야 sync가 됩니다.
아무 인스턴스 클릭한 뒤, 보안 그룹 > 인바운드 규칙 편집 눌러주시면 됩니다.
5. sync 됐는지 확인합시다.
redis-cli info
master _link_status up 으로 바뀌었는지 확인합시다.
6. maxmemory 설정해 줍시다
master, replica에 설정
`config set maxmemory 500mb`으로 쉽게 설정이 가능하지만 redis 서버 재부팅 시 0으로 초기화 되므로 설정파일에서 설정해줍시다.
- 설정 파일 열기
- vi /etc/redis/redis.conf
- maxmemory 내용 수정
- memory <byte>` => `memory 500mb`
- 저장
- esc -> :wq
Sentinel 설치 및 설정
Sentinel를 Master, Replica, Service 서버에 각각 1개 씩 설치할 예정입니다.
- sentinel 3대 설치한 이유
- 1대만 설치하는 경우, 해당 VM이 장애가 발생하면 monitoring, failover가 안됨
- Sentinel은 다수결로 의사를 결정하기 때문에 홀수개로 설치해야 됨
- 작동원리
- master server가 down 됨
- slave 2개가 master가 down이라고 판단함
- 과반수 이상 down 됐다고 판단했으므로 자동으로 slave 중 하나가 master가 되고, master는 slave가 됨
- 서비스 인스턴스 생성
- sentinel를 3개 를 설치해야 되므로 미리 생성함
- sentinel 설치
- 설치할 인스턴스에 접속
- 설치
- `apt-get install redis-sentinel`
- 설치 확인
- `ps -ef | grep sentinel`
- 3개 설치할 예정, master에 1개, replica에 1개, service에 1개
- bind(선택)
- 설정파일 열기
- `vi /etc/redis/sentinel.conf`
- bind 수정
- 설치 후에 나온 ip로 수정
- 재시작
- `service redis-sentinel restart`
- 설치 확인 할 때 나오는 ip가 다르다면 bind 설정해줘야 됨
- fail over 설정
- 설정파일 열기
- `vi /etc/redis/sentinel.conf`
- master IP 설정
- `sentinel monitor mymaster [master IP] [redis port] [down판단 기준수]`
- 26379 port 열어주기
- 아무 인스턴스 클릭
- 보안 그룹 클릭
- 인바운드 규칙 편집 클릭
- 포트 26379 추가 (launch wizard 5 그룹)
'DB > Redis' 카테고리의 다른 글
Redis UI Tools (0) | 2024.03.15 |
---|---|
Redis 장애 상황과 대응 (0) | 2024.03.15 |
Redis CLI (0) | 2024.02.19 |
Redis 개념 (0) | 2024.02.19 |