지난 글 참고) [과제] NHN Cloud 인스턴스에서 Redis 설치2 - 압축파일 이용
지난번 설치 과정에서 아무런 설정 없이 Redis를 실행하였더니 WARNNING이 여러개 뜨게되었다.
Redis 실행 시 아무런 경고 메세지 없이 깔끔하게 화면이 나오도록 수정해보자❗️
메세지를 살펴보면 4개의 오류 메세지가 출력된 것을 알 수 있다. 하나하나 살펴보자!
Warning: no config file specified, using the default config. In order to specify a config file use ./src/redis-server /path/to/redis.conf
👉 레디스 서버 실행 시 설정 파일 지정해주기
$ ./src/redis-server redis.conf
You requested maxclients of 10000 requiring at least 10032 max file descriptors.
Server can't set maximum open files to 10032 because of OS error: Operation not permitted.
Current maximum open files is 4096. maxclients has been reduced to 4064 to compensate for low ulimit. If you need higher maxclients increase 'ulimit -n'.
maxclients
가 설정값 10000이 아닌 4064까지만 가능함👉 maxclients
를 증가시키고 싶다면 'ulimit -n' 증가시키기
ulimit -n 10032
👉 혹은 redis.conf
에서 maxclients
설정 값 감소시키기
$ vi redis.conf
maxclients 4064
WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/somaxconn is set to the lower value of 128.
redis.conf
에서는 tcp-backlog
를 511로 설정했는데, 리눅스 설정은 128로 되어 있으니 리눅스 설정 값을 증가시키라는 메시지somaxconn
은 네크워크 관련 커널 파라미터로서 listen()
으로 바인딩 된 서버 소켓에서 accept()
를 기다리는 소켓 개수(queue)somaxconn
값 확인$ sysctl -a | grep somaxconn
net.core.somaxconn = 128
👉 sysctl.conf
파일에서 somaxconn
값 설정해주기
$ sudo vi /etc/sysctl.conf
net.core.somaxconn = 4096
$ sudo sysctl net.core.somaxconn=4096
WARNING Memory overcommit must be enabled! Without it, a background save or replication may fail under low memory condition. Being disabled, it can can also cause failures without low memory condition, see https://github.com/jemalloc/jemalloc/issues/1328. To fix this issue add 'vm.overcommit_memory = 1' to /etc/sysctl.conf and then reboot or run the command 'sysctl vm.overcommit_memory=1' for this to take effect.
👉 sysctl.conf
에서 vm.overcommit_memory
값 설정해주기
$ sudo vi /etc/sysctl.conf
vm.overcommit_memory = 1
$ sudo sysctl vm.overcommit_memory=1
아무런 경고 메세지 없이 깔끔하게 화면이 나오는 것을 확인할 수 있다!
참고
http://redisgate.kr/redis/configuration/redis_start.php#redis_start_msg_stop
http://redisgate.kr/redis/configuration/param_daemonize.php
https://myblog.opendocs.co.kr/archives/1514