===============================================================================================================
2015년 6월 30 일 Leap Second 추가 예정에 따라 사전에 대응 계획을 수립하실 수 있도록 최대한 관련 자료를 수집하여 안내를 드립니다.
명확한 의사전달을 위해 문체는 간결하게 작성하였습니다.
* Leap Second 란?
================
- 현재 사용되고 있는 1초의 시간 간격은 원자의 고정된 진동폭에 기반하여 계산
- 인류가 사용하는 시간 개념은 1일 24시간, 86400초로 구성, 그러나 원자시계 86400초와 지구의 자전 속도가 정확하기 일치하지는 않기 때문에 시간 보정 필요
- 이렇게 발생한 시차를 leap second 를 사용하여 조정
- 2012년 6월 30 일 마지막 leap second 가 추가된 바 있으며, 2015년 6월 30 일에 7월 1일로 넘어가는 시점인 23:59:59에 1초 추가될 예정
2015 June 30, 23h 59m 59s
2015 June 30, 23h 59m 59s <== leap second
2015 July 1, 0h 0m 0s
- 한국 표준시(KST)를 기준으로는 2015년 7월 1 일 오전 8시 59분 59초
- 모든 리눅스를 포함한 UTC 시간체계를 사용하는 모든 운영체제 해당 사항
* Leap Second 발생에 따른 동작 이해
================================
1) NTP를 사용하고 있는 시스템
- NTP 서버와 Sync하고 있는 RHEL 시스템의 경우 NTP 서버로부터 자동으로 leap second 발생 정보 수신
- RHEL 커널은 leap second 를 추가하거나 빼는 작업을 자동 수행
2) PTP를 사용하고 있는 시스템
- PTP의 경우 leap second 가 기본적으로 포함되고 있지 않음
- ptp41 및 phc2sys 명령어에 의해 leap second 추가 flag를 설정 가능
- 이후 커널은 leap second 를 추가
3) NTP, PTP를 사용하지 않는 시스템
- NTP, PTP를 사용하지 않는 시스템은 기본적으로 leap second 발생을 확인할 수 없음
- 때문에 Leap second 발생 이후 UTC 시간과의 1초의 시간차가 발생
* 상황별 대응 방안
================
0) 커널 버전 업데이트
-----------------
- 먼저 각 RHEL 버전별 다음의 커널 버전 이상으로 업데이트를 권고 (이전 커널은 leap second 시 시스템 행 발생 가능)
- RHEL4 : kernel-2.6.9-89.EL 또는 이후
- RHEL5 : kernel-2.6.18-164.el5 또는 이후
- RHEL6 : kernel-2.6.32-358.el6 또는 이후
- RHEL7 : 기본 커널 대응
1) NTP 서버와 동기화 하는 시스템
----------------------------
1-1) Leap Second 시간 즉시 적용 가능한 경우
- 위에 설명된 커널 버전이 최신인지 확인
- 그 외 특별한 작업 불필요
- 개별 3rd-party 솔루션이 Leap Second 예외에 대응할 수 있는지 확인
1-2) Leap Second 적용 않고 천천히 1초를 보정해야 하는 경우
- 앞서 설명된 커널 업데이트가 불가능 한 경우, 또는 leap second 을 적용하지 않고 천천히 동기화 하고자 하는 경우
- NTP 서비스를 slew mode로 재시작, 다음과 같이 -x 옵션 추가
주의1) Slew mode의 경우 시간 Jump가 없는 대신 비교적 큰 시간차가 발생한 경우 동기화에 더 오랜 <="" body="">
|