Amazon Linux에서 Time Sync Service 설정하기
IT/Linux

Amazon Linux에서 Time Sync Service 설정하기

반응형

오늘은 Amazon Time Sync Service 서비스 설정을 해보겠습니다. 이 서비스는 Amzon내에 생성된 VM에서만 사용가능합니다.

Amazon Time sync Service는 NTP(Network Time Protocol)를 통해 제공되는 시간 동기화 서비스 입니다. 리눅스든 윈도우든 모든 OS를 운영하면서 가장 기본적이면서 문제가 될 수 있는 것이 시간동기화 입니다.

각종 로그 설정이나 디버깅에 있어서 시간은 매우 중요하며 서버마다 다른 시간을 바라보고 있으면 디버깅이 어려워지며 특정 어플리케이션에서는 서비스에 문제가 될 수도 있습니다.

따라서 모든 서버가 하나의 시간을 바라볼 수 있도록 시간을 동기화 해주어야 합니다. AWS에서는 chrony를 사용하며 Time Sync Service로 시간을 동기화를 사용할 수 있습니다.

chrony는 ntp보다 개선된 서비스라고 하는데  경우에 따라서 ntp를 사용하기도 합니다.

일반적으로 모바일 이나 가상 시스템처럼 빈번한 대기, 접속차단이 불가피한 상황에서는 chrony를 사용하고 항상 연결이 보장된 상황에서는 ntp를 사용하라고 권고하고 있습니다.

 

Amazon Linux2 OS는 기본적으로 Amazon Time Sync Service 설정이 되어있습니다. 이 말은 곧 chrony 로 시간을 동기화를 하고 있고 chrony 설정이 Amazon Time Sync Service IP로 되어있다는것입니다.

Amazon Linux1에는 기본으로 설정이되어있지 않기 때문에

1. 기존 ntp 서비스를 제거하고

2. chrony를 설치하여

3. Amazon Time Sync Service IP를 설정해보겠습니다.

 

자 그럼 시간 동기화 설정을 해볼까요?

$ sudo yum erase ntp*

$ sudo yum -y install chrony

$ vi /etc/chrony.conf

아래 라인이 추가되어있는지 확인해보고 안되어있으면 수정합니다.

server 169.254.169.123 prefer iburst minpoll 4 maxpoll 4

$ sudo service chronyd start

 

chkconfig 명령어로 시스템이 부팅될때마다 시작하도록 설정하겠습니다.

$ sudo chkconfig chronyd on

chrony가 169.254.169.123 IP주소를 사용하여 시간 동기화 하고 있는지 확인합니다.

$ chronyc sources -v

위 출력에서 ^* 부분이 기본설정된 타임소스를 나타내므로 잘 설정되어있는걸 확인할 수 있습니다.

시간 동기화 지표를 확인해보겠습니다.

$ chronyc tracking 

시간동기화를 잘 사용하고 있는게 확인이 됩니다.

 

하는김에 time zone까지 변경해볼까요?

 

타임존 설정은 /etc/sysconfig/clock에 설정이 되어있습니다.

$ vi /etc/sysconfig/clock

ZONE="America/Los_Angeles" 이부분을

ZONE="Asia/Seoul" 로 변경합니다.

ZONE정보는 아래 경로에서 확인할 수 있고 경로가 계층화 되어있습니다.

$ ls /usr/share/zoneinfo  

* 위 작업은 tzselect 명령어로 쉽게 설정할 수도 있으니 참고 해주시기 바랍니다.

 

서버가 현지 시간(local time) 정보를 참조할때 표준 시간대 파일을 찾아볼 수 있도록 심볼링크 설정을 해줍니다.

$ sudo ln -sf /usr/share/zoneinfo/Asia/Seoul /etc/localtime

date 명령어로 설정된 현재 시간을 확인해봅니다.

$ date

시스템을 재시작하여 설정을 완료 합니다.

$ sudo reboot

반응형