개념 사전 · 프로그램

chrony

크로니

는 등을 이용해 시스템 시각을 동기화하는 프로그램 모음이다. 가 시계 조정을 수행하고 는 제어·관찰 인터페이스를 제공하므로 실행 와 조회 출력의 역할을 구분한다.

밑줄 용어에 마우스를 올리거나, 키보드로 선택하거나, 터치하면 설명을 볼 수 있습니다.

01무엇이고, 어떤 일을 하나

  • 시간 원천에서 얻은 표본으로 시계 오차와 속도를 추정한다.
  • 설정된 정책에 따라 시계를 점진 조정하거나 시각을 변경한다.
  • ·sources 등으로 동기화 상태와 원천 선택을 보여 준다.

02어떤 순서로 동작하나

  1. 시간 원천 준비

    서버·pool·참조 시계 등 구성된 원천의 접속 조건과 신뢰 범위를 준비한다.

  2. 표본 수집

    교환으로 지연·offset 등의 자료를 모아 원천의 유효성과 품질을 평가한다.

  3. 시계 조정

    선택된 원천과 추정치에 따라 또는 설정에 허용된 을 수행한다.

  4. 상태 관찰

    의 ·sources에서 선택 원천과 오차·분산 등을 읽고 네트워크·서버·로컬 시계 문제를 구분한다.

03먼저 알아둘 용어와 구성요소

는 시간 소스의 측정값을 이용하여 시계를 관리하는 데몬이고, 는 상태를 조회하거나 관리하는 클라이언트다.
에 상태 조회와 제어 요청을 보내는 도구다. 조회 명령이 실행됐다는 사실과 실제 동기화 완료는 구별한다.
시계를 조금씩 빠르게 또는 느리게 보정하는 는 시간을 갑자기 뛰게 하는 과 다르다.
시계의 시각 값을 한 번에 앞으로 또는 뒤로 옮기는 보정이다. 처럼 속도를 점진적으로 조절하는 것과 다르며 로그 순서·시간에 민감한 앱에 영향을 줄 수 있다.
에서는 기준 소스와 최근 기준 시각, 시스템 시각 차이, 동기화 상태를 읽고 sources -v에서는 선택된 소스와 도달성을 읽는다.
^는 서버, *는 현재 선택된 소스, ?는 아직 선택할 수 없는 상태를 나타낼 수 있다.
LEARN THROUGH PRACTICE

시간 서버 설정과 클라이언트의 동기화 상태 대조하기

상위 시간원, 내부 제공 범위, 클라이언트의 stratum·offset·지연 지표를 연결해 시간 동기화의 상태를 읽는다.

실습 구성과 전제

  • 서버·클라이언트 설정과 Cisco 장비 상태 화면을 비교한다. 정지 화면의 시각이 서로 같다는 가정은 하지 않는다.
  • 서버와 클라이언트가 연결된 허용 실습망을 가정한다. 실제 시계를 변경하는 명령은 실행하지 않고 상태 조회로 해석한다.
  1. 상위 동기화와 내부 서비스 제공을 구분한다

    • 첫 설정의 pool은 상위 시간원을 선택하고 iburst는 초기 측정 자료를 빠르게 얻도록 요청을 묶어 보낸다. allow는 지정한 네트워크에서 오는 클라이언트 요청을 허용하는 설정이다.
    • makestep 1.0 3은 초기 세 번의 시계 갱신 동안 오차가 1초보다 크면 을 허용하는 조건이다. 3초마다 시계를 강제로 바꾸라는 뜻이 아니다.
    ntp · 실습·개념 참고 화면 1원본 크기로 보기 ↗
    • pool 뒤 iburst가 붙고 driftfile, makestep 1.0 3, rtcsync 행이 보인다.
    • 별도의 allow 대역 설정이 있어 상위 시간 동기화와 내부 제공 범위를 나누어 읽을 수 있다.
    확인 기준

    allow만으로 네트워크 방화벽이나 서버의 상위 시간원이 정상이라고 결론내리지 않는다. 시계 은 예약 작업·로그 시각에 영향을 줄 수 있다.

  2. 클라이언트가 선택한 시간원을 확인한다

    • 두 번째 설정은 pool 대신 특정 내부 서버를 server 지시어로 지정한다. 서버의 주소를 설정한 사실과 실제 응답을 받아 선택한 상태는 별개다.
    • 클라이언트에서는 sources와 으로 현재 선택된 원천과 동기화 정보를 본다. 는 동작하는 데몬이고 는 그 상태를 조회·관리하는 클라이언트다.
    bash
    chronyc sources -v
    chronyc tracking

    가 동작하는 클라이언트에서 시간원과 추정 상태를 조회한다.

    ntp · 실습·개념 참고 화면 2원본 크기로 보기 ↗
    • 기존 pool 행이 주석 처리되어 있다.
    • 내부 NTP 서버 하나를 server ... iburst로 지정한 행이 보인다.
    확인 기준

    출력에서 선택된 원천 표시와 도달 상태를 확인한다. 설정 파일만으로 동기화 성공을 말하지 않는다.

  3. 동기화 표시와 시간 품질 지표를 함께 읽는다

    • Cisco 화면은 clock is synchronized와 stratum 11을 표시한다. stratum은 기준 시계로부터의 시간 계층이며 IP 라우터 홉 수나 오차 밀리초 값이 아니다.
    • offset 약 0.5635ms, root delay 약 23.93ms, root dispersion 약 3941.70ms를 구별한다. 작은 offset 하나만으로 절대 시각 정확도를 보장할 수 없고 상위 시간원의 품질과 불확실성도 함께 봐야 한다.
    text
    show clock
    show ntp status
    show ntp associations

    지원되는 계열 실습 장비의 상태 조회 명령이다.

    ntp · 명령·상태 출력 7원본 크기로 보기 ↗
    • show ntp status는 synchronized와 stratum 11 및 참조 서버를 표시한다.
    • offset, root delay, root dispersion이 서로 다른 밀리초 값으로 나열되고 poll interval도 별도로 보인다.
    확인 기준

    동기화됨은 현재 선택한 시간원과 동기화 관계가 있다는 상태다. 조직의 허용 오차나 믿을 수 있는 기준 시각을 만족하는지는 별도 기준으로 판단한다.

실습에서 확인한 동작 원리

  • 상위 시간원 선택, 내부 제공 허용, 클라이언트의 실제 동기화는 별도 단계다.
  • 동기화 상태·stratum·offset·delay·dispersion을 함께 읽어야 로그와 예약 작업의 시간 신뢰도를 설명할 수 있다.
관련 개념·전체 실습 화면 이어서 읽기 →
동작·명령 참고 문서

04예제로 따라가기

  • sources 출력에서 선택 원천과 후보·배제 상태가 다르면 접속 가능한 서버 목록과 실제 동기화에 쓰는 원천을 나누어 읽는다.
  • 으로 벽시계가 뛰면 로그의 시각 순서와 예약 조건이 영향을 받을 수 있으므로 경과 시간 측정에는 단조 시계 관점을 구분한다.
  • stratum 숫자 하나가 작다는 이유만으로 언제나 더 정확하거나 신뢰할 수 있는 원천이라고 단정하지 않는다.

05혼동하기 쉬운 점과 확인 기준

  • 왕로 지연을 d1, 복로 지연을 d2, 실제 서버 시계 차이를 θ0라 하면 단순 추정 θ에는 (d1−d2)/2가 섞인다. 두 방향 지연이 같다는 가정이 깨지면 왕복 측정만으로 이를 모두 제거할 수 없다.
  • 의 offset·frequency·root delay·root dispersion은 서로 다른 관찰값이다. stratum이 낮다는 이유만으로 네트워크 지연이나 시계 오차가 항상 더 작다고 판정하지 않는다.
  • 가 실행 중인데도 소스가 선택되지 않으면 sources와 의 선택 상태·도달성·최근 측정 정보를 함께 읽는다. 예약 누락을 하나의 탓으로 결론내리기 전에 timer/의 실제 기동 기록도 대조한다.

06상세 노트 · 실습 자료

헤더 구조, 설정 예시, 수치 계산과 수업 캡처는 아래 노트에서 이어집니다.

공식 문서 · 표준

기초 개념과 동작 설명을 대조한 자료입니다. 제품 버전과 실제 설정에 따른 차이는 본문 및 원문에서 확인하세요.