chrony
패키지를 활용하여 외부 공개 NTP 서버 동기화와 내부 서버 간 시간 서버 구성(A-B 구조) 방법을 정리합니다.chrony
는 리눅스 환경에서 시간을 동기화하기 위한 NTP(Network Time Protocol) 클라이언트/서버 프로그램입니다.항목 | 설명 |
---|---|
server [호스트/IP] iburst | 지정한 NTP 서버와 동기화. iburst 는 빠른 초기 동기화를 위해 사용 |
pool [도메인] iburst | 여러 서버를 풀(pool)로 지정 (ex: kr.pool.ntp.org) |
makestep 1.0 3 | 시간 차이가 1초 이상일 때, 초기 3회 업데이트 동안 즉시 보정 |
driftfile /var/lib/chrony/drift | 시스템 클럭 주파수 오차 보정값 저장 |
rtcsync | 하드웨어 시계(RTC)와 자동 동기화 |
allow 192.168.0.0/16 | 해당 네트워크 대역의 클라이언트가 시간 동기화 요청 가능 |
local stratum 10 | 외부 동기화가 불가능할 때 로컬 서버를 기준 시간으로 제공 |
logdir /var/log/chrony | 로그 저장 디렉토리 지정 |
기호 | 의미 |
---|---|
* | 현재 선택된 기준 시간 서버 (synchronized) |
+ | 보조 후보 서버 (동기화는 되지만 *보다 우선순위 낮음) |
- | 동기화는 되지만 현재 선택에서 제외된 서버 |
? | 서버에 연결이 불안정하거나 응답 없음 |
^ | 서버(server) 방식으로 지정됨 |
= | 피어(peer) 방식으로 지정됨 |
# | 로컬 클럭(local clock) 사용 |
# rpm -qa | grep chrony
출력 예시:
chrony-4.5-3.el9.x86_64
설치가 안 되어 있다면 다음 명령어로 설치합니다.
# dnf -y install chrony
# mv /etc/chrony.conf /etc/chrony.conf_org
# vim /etc/chrony.conf
설정 예시:
# 외부 공개 NTP 서버 지정 (iburst → 빠른 초기 동기화)
server time.google.com iburst
server time.cloudflare.com iburst
server 1.kr.pool.ntp.org iburst
server 1.asia.pool.ntp.org iburst
# 초기 동기화가 1초 이상 차이날 경우 즉시 조정 (makestep)
makestep 1.0 3
# driftfile: clock 주파수 보정값 저장
driftfile /var/lib/chrony/drift
# RTC (하드웨어 시계)와 자동 동기화
rtcsync
# 로그 디렉토리
logdir /var/log/chrony
# 특정 대역 허용 (내부망)
allow 192.168.204.0/24
# stratum 수준 (내부망 마스터 서버 역할)
local stratum 10
# systemctl restart chronyd
# chronyc makestep
# chronyc sources
출력 예시:
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* time3.google.com 1 6 17 7 +212us[+3345us] +/- 34ms
^+ time.cloudflare.com 3 6 17 7 +1519us[+4652us] +/- 74ms
^+ 121.174.142.81 3 6 17 7 +1202us[+4336us] +/- 42ms
^- 103.186.118.221 2 6 17 7 -155us[ -155us] +/- 33ms
# firewall-cmd --list-services
출력 예시:
cockpit dhcpv6-client ssh
# firewall-cmd --add-service=ntp --permanent
출력 예시:
success
# firewall-cmd --reload
출력 예시:
success
# firewall-cmd --list-services
출력 예시:
cockpit dhcpv6-client ntp ssh
# rpm -qa | grep chrony
출력 예시:
chrony-4.5-3.el9.x86_64
설치가 안 되어 있다면 다음 명령어로 설치합니다.
# dnf -y install chrony
# mv /etc/chrony.conf /etc/chrony.conf_org
# vim /etc/chrony.conf
설정 예시:
# 내부 서버 A 지정 (iburst로 빠른 초기 동기화)
server 192.168.204.230 iburst
# 시간 오차가 크면 즉시 보정
makestep 1.0 3
# driftfile: 주파수 오차 저장
driftfile /var/lib/chrony/drift
# RTC 동기화
rtcsync
# 로그 디렉토리
logdir /var/log/chrony
# systemctl restart chronyd
# chronyc makestep
# chronyc sources
출력 예시:
MS Name/IP address Stratum Poll Reach LastRx Last sample
===============================================================================
^* 192.168.204.230 2 6 17 44 +5847ns[ +31us] +/- 41ms
https://youtu.be/vPfxWFBE1yc 1. 개요 리눅스 서버를 운영할 때 사용자 계정 생성, 비밀번호 설정, 권한 부여, 계정…
https://youtu.be/pt9qhawl8LY 1. 개요 리눅스 서버에서는 시스템 시간(OS 시간) 과 하드웨어 시간(RTC, Real-Time Clock) 을 모두 관리할 수 있습니다. 운영체제의…
https://youtu.be/iPdHGXh7DUg 1. 개요 서버 운영 시 시스템 시간이 올바르게 설정되어 있지 않으면 로그 분석, 모니터링,…
https://youtu.be/F06CS8Encr8 1. 개요 LVM 환경에서 캐시 LV까지 포함된 볼륨 그룹(VG) 을 깨끗하게 삭제하는 과정을 다룹니다. umount…
https://youtu.be/dxnMCfpe_f8 1. 개요 LVM Cache (lvconvert cache) 기능을 활용하여 저속 디스크(vdb1) 위에 생성한 LV를 고속 디스크(vdc1)기반 Cache Pool로 가속하는…
https://youtu.be/Yjnvt3ASNcQ 1. 개요 LVM(Linux Logical Volume Manager)을 이용해 RAID0, RAID1, RAID5, RAID10 구성을 실습하는 과정을 다룹니다. 2.…