AWS์์ ๋ฐ๋ก Redis๋ฅผ ์์ฑํด์..? ์ฐ๊ฒฐํ๋ ๋ฐฉ๋ฒ์ด ์๋๋ฐ ๋๋ ๊ทธ๋ฅ ์๊ธ ๊ฑฑ์ ์ํ๋ ค๊ณ ec2๋ด๋ถ์ redis๋ฅผ ์ค์นํ๋ค!
EC2 ์ฐ๊ฒฐ
์ฌ๊ธฐ์ ์ฐ๊ฒฐ ๋ฒํผ์ ๋๋ฅด๋ฉด ์๋์ ๊ฐ์ ํ๋ฉด์ด ๋ฌ๋ค
์๋์ ๋ฐ์ค ์น ๋ฌธ์ฅ์ ํตํด์ ๋ก๊ทธ์ธํด์ฃผ๋ ๊ฒ์ด๋ค.
ec2๋ฅผ ์์ฑํ ๋ ๋ณด๊ดํด๋จ๋ pem keyํ์ผ์ด ์์๊ฑฐ๋ค! ์ด๊ฑธ ์ ๋ณด๊ดํด๋จ์ด์ผ ํ๋ค ใ ใ
git bash (๋๋ ec2์ฐ๊ฒฐ ํฐ๋ฏธ๋์ ์ ์)
chmod 400 [pem]
ssh -i [pem] [ubuntu~~~]
์ฒซ๋ฒ์งธ ์ฝ๋๋ ํค๋ฅผ ๊ณต๊ฐ์ ์ผ๋ก ๋ชป๋ณด๋๋ก ๋ง๋ค์ด์ฃผ๋ ๊ฒ์ด๊ณ , ๋๋ฒ์งธ์ค์ ์์ ๋ฐ์ค์ ๋ณต์ฌํ๋ฉด ๋๋ค!
๋ง์ฝ์ pemํค๊ฐ ๋ค๋ฅธ ํด๋์ ์ ์ฅํด๋จ์ ๊ฒฝ์ฐ์๋ ๊ทธ ํด๋์ ๋ค์ด๊ฐ์ ์์น์ ๋ณด๋ฅผ ๊ทธ๋๋ก ๊ฐ์ง๊ณ ์ค๋ฉด ๋๋ค!!
๋๊ฐ์ ๊ฒฝ์ฐ์๋ e๋๋ผ์ด๋ธ์ ์ ์ฅํด๋จ๊ธฐ ๋๋ฌธ์ /e/~~ .pem์ด๊ฑธ ๋ฃ์ผ๋ฉด ๋๋ค! (chmod ์ฝ๋์์๋ ๋๊ฐ์ด ๋ฃ์ผ๋ฉด ๋๋ค)
redis server ์ค์น
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install redis-server
์ด ๋ช ๋ น์ด๋ฅผ ์ฐจ๋ก๋๋ก ์น๋ค๊ฐ ๋ณด๋ฉด ์๋ฒ ์ค์น๊ฐ ๋ ๊ฒ์ด๋ค.
์ค์น๊ฐ ์ ๋๋์ง ํ์ธํ๊ธฐ ์ํด์๋
redis-server --vesion
์ด ๋ช ๋ น์ ์คํํ๋ฉด redis server ๋ฒ์ ์ด ๋ฐ ๊ฒ์ด๋ค!
redis-server ์ ์
redis-cli
์ด๋ฌ๋ฉด 127.0.0.1:6379> ์ด๋ ๊ฒ ๋จ๋ฉด์ redis๋ฅผ ์ธ ์ ์๊ฒ ๋ ๊ฒ์ด๋ค.
์ค์ ์ธํ
์ธ๋ถ์์๋ ec2์ ์ ์์ ํ ํ ๋๊น redis์์๋ ์ธ๋ถ์์ ์ ์์ด ํ์ฉ๋ ์ ์๊ฒ ์ค์ ํด์ค์ผ ํ๋ค.
sudo vi /etc/redis/redis.conf
์ด ๋ช ๋ น์ ํตํด redis.conf ํ์ผ์ ์ด์ด์ค๋ค.
- redis ์ ์ ๋น๋ฐ๋ฒํธ
- ip ์ฃผ์
- max ๋ฉ๋ชจ๋ฆฌ
- ๋ฉ๋ชจ๋ฆฌ๊ฐ ์ฐผ์ ๋์ ๊ต์ฒด ์๊ณ ๋ฆฌ์ฆ
1. redis ์ ์ ๋น๋ฐ๋ฒํธ ๋ณ๊ฒฝ
/requirepass ๋ฅผ ์ ๋ ฅํ๊ณ ์ํฐ๋ฅผ ๋๋ฅด๋ฉด ํด๋น ํ์ด์ง๋ก ์ด๋์ด ๋๋ค!
n์ ๋๋ฅด๋ฉด ๋ค์ ๋จ์ด๋ฅผ ์ฐพ์์ ๋ณด์ฌ์ค๋ค ใ ใ
[requirepass ~~~] ์ด ๋ถ๋ถ์ ์ฃผ์์ ์ ๊ฑฐํด์ฃผ๊ณ ๋ฌผ๊ฒฐ๋ถ๋ถ์ ๋น๋ฐ๋ฒํธ๋ฅผ ์์ฑํ๋ฉด ๋๋ค!
โ๏ธ ๊ธ์ ์์ ํ๊ณ ์ถ์ ๋๋ i๋ฅผ ๋๋ฅด๊ณ ์์ ์ด ๋ชจ๋ ์๋ฃ๊ฐ ๋์๋ค๋ฉด esc๋ฅผ ๋๋ฅธ๋ค!
2. ip ์ฃผ์ ๋ณ๊ฒฝ
/bind๋ฅผ ๊ฒ์ํ๋ฉด ip์ฃผ์๋ฅผ ๋ณ๊ฒฝํ ์ ์๋ค.
๊ธฐ๋ณธ์ ์ผ๋ก๋ 127.0.0.1๋ก ์ค์ ๋์ด์์ ๊ฒ์ด๋ค! ์ด๋ฌ๋ฉด ๋ก์ปฌ์์๋ฐ์ ์ ์์ด ์๋ผ์ ์ธ๋ถ์ ์์ ๋ชปํ๊ฒ ๋๋ค.
์ด ๋ถ๋ถ์ 127.0.0.1์ ์ง์ฐ๊ณ 0.0.0.0์ผ๋ก ๋ณ๊ฒฝํ๋ค!!
3. max memory
/maxmemory๋ฅผ ๊ฒ์ํ ๋ค์ maxmemory<bytes> ๋ถ๋ถ์ ์ฃผ์์ ํด์ ํ๊ณ <bytes>๋ฅผ ๋์ ์ ๋ฉ๋ชจ๋ฆฌ๋ฅผ ์ ์ด์ค๋ค.
๋๋ 1gb๋ก ์ง์ ํ๋ค.
4. ๋ฉ๋ชจ๋ฆฌ๊ฐ ๋ค ์ฐผ์ ๋์ ๊ต์ฒด ์๊ณ ๋ฆฌ์ฆ
/maxmemory-policy๋ฅผ ๊ฒ์ํ๊ณ ์ํ๋ ์๊ณ ๋ฆฌ์ฆ์ ๋ฃ๋๋ค! Eviction Policies์ด ๋ถ๋ถ์ ์ ๊ฑฐํ๊ณ ์ํ๋ ๊ต์ฒด ์๊ณ ๋ฆฌ์ฆ์
๋ฃ์ผ๋ฉด ๋๋ค.
noeviction: New values aren’t saved when memory limit is reached. When a database uses replication, this applies to the primary
databaseallkeys-lru: Keeps most recently used keys; removes least recently used (LRU)keys
allkeys-lfu: Keeps frequently used keys; removes least frequently used (LFU)keys
volatile-lru: Removes least recently used keys with the expire field set to true.
volatile-lfu: Removes least frequently used keys with the expire field set to true.
allkeys-random: Randomly removes keys to make space for the new data added.
volatile-random: Randomly removes keys with expire field set to true.
volatile-ttl: Removes keys with expire field set to true and the shortest remaining time-to-live (TTL) value.
๋ชจ๋ ์ค์ ์ด ๋๋ฌ์ผ๋ฉด esc๋ฅผ ๋๋ฅด๊ณ :wq์ ์ ๋ ฅํด ์ ์ฅํ๊ณ ๋๊ฐ๋ค.
ec2 ํฌํธ ๊ฐ๋ฐฉํ๊ธฐ
redis๋ 6379ํฌํธ๋ฅผ ์ฌ์ฉํ๊ธฐ ๋๋ฌธ์ ec2์์ ์ธ๋ฐ์ด๋ ๊ท์น์ ๋ค์ด๊ฐ์ 6379ํฌํธ๋ฅผ ๊ฐ๋ฐฉํด์ค์ผํ๋ค!
redis ์คํ
sudo systemctl start redis-server
systemctl์ ์ ๋ ฅํ๋ฉด ๋ฐฑ๊ทธ๋ผ์ด๋์์ ์คํ์ด ๋๋ค๊ณ ํ๋ค.!
โ confํ์ผ์ ์์ ํ ๋ค์ ์คํํ๋ ค๊ณ ํ๋ฉด ์๋ ๋ช ๋ น์ ์ ๋ ฅํ๋ค.
sudo systemctl restart redis-server.service
redis ์๊ฒฉ์ ์
๋๋ ์๊ฒฉ์ ์์ ํ์ธํ๋ ค๊ณ ๊ฐ์ ๋จธ์ ์์ unbuntu๋ฅผ ์๋ก ๋ง๋ค๊ณ ์ ์ํ๋ค.
๋ค๋ฅธ ์๋ฒ์ ์ ์ํ๊ธฐ ์์์๋ ๋จผ์ redis๋ฅผ ์ค์นํด์ค์ผํ๋ค.
sudo apt-get update
sudo apt-get upgrade
sudo apt-get install redis-tools
redis-cli -h [EC2 ์ธ์คํด์ค์ IP or DNS] -p 6379 -a [redis.conf์ ์ค์ ํ ๋น๋ฐ๋ฒํธ]
์ด๋ ๊ฒ ์ ๋ ฅํ๋ฉด ์ ์์ ์ผ๋ก ์ ์์ด ๋๋ ๊ฑธ ๋ณผ ์ ์๋ค!
[์ฐธ๊ณ ์ฌ์ดํธ] : https://wookgu.tistory.com/26
'AWS' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
[Nginx/Spring] Let's Encrypt Https ์ค์ (0) | 2023.07.17 |
---|