비교적 큰 네트워크 (수천 개의 호스트)의 경우 로컬로 관리되는 NTP 서버 풀 (일부 공용 NTP 서버를 통해 정기적으로 설정 됨)을 실행하고 네트워크의 다른 모든 호스트를 사용하는 것에 대한 논쟁은 무엇입니까? ntp.pool.org를 통해 NTP 서버 풀과 모든 호스트가 단순히 공개 NTP 서버를 직접 사용하도록하는 것?
장단점 외에도 오늘날의 모범 사례는 무엇입니까?
비교적 큰 네트워크 (수천 개의 호스트)의 경우 로컬로 관리되는 NTP 서버 풀 (일부 공용 NTP 서버를 통해 정기적으로 설정 됨)을 실행하고 네트워크의 다른 모든 호스트를 사용하는 것에 대한 논쟁은 무엇입니까? ntp.pool.org를 통해 NTP 서버 풀과 모든 호스트가 단순히 공개 NTP 서버를 직접 사용하도록하는 것?
장단점 외에도 오늘날의 모범 사례는 무엇입니까?
답변:
가장 좋은 방법은 공용 NTP 서버와 동기화하도록 설정된 자체 NTP 서버 풀을 실행하는 것입니다. 조직에서 인터넷에 액세스 할 수없는 경우 시계가 왜곡되는 것을 원하지 않을 것입니다. 또한 미러를 작동 할 수 있고 작동해야 할 경우 수천 개의 호스트를 공용 서버로 설정하는 것은 무례합니다.
마지막으로, 안전한 컴퓨팅 요구 사항이있는 경우 자체 독립 NTP 호스트를 운영해야합니다. 이러한 시스템이 작동하려면 특별한 하드웨어가 필요합니다.
편집 : 그것에 대한 토론이 있었으므로 여기에 몇 가지 하드웨어가 있습니다.
PPS를 지원하는 모든 하드웨어는 최신 ntpd 에서 작동하는 것 같습니다 . 여기에는 일부 GPS 장치가 포함되지만, 이것은 최근에는 직렬 GPS 장치처럼 드문 것 같습니다. 그러나 TSync-PCIe라는 하나의 제품을 포함하여이 기능을 위해 명시 적으로 판매 된 하드웨어 장치가 있습니다. 제조업체 사이트에 따르면 :
TSync-PCIe는 동기화 된 타임 코드 리더 / 발전기 패키지의 여러 구성을 제공하여 유연성을 제공하고 정밀한 타이밍을 임베디드 컴퓨팅 애플리케이션에 쉽게 통합 할 수 있습니다. IRIG (및 기타 유사한 타임 코드), GPS (내부 또는 외부 수신기) 또는 Precise Time Protocol (PTP / IEEE-1588v2) 로의 동기화 중에서 선택하십시오. -사이트 링크 : http://i564f.6o.to
소규모 네트워크에서도 로컬 NTP 서비스를 사용하는데,이 서비스는 자체적으로 외부 서비스에서 업데이트됩니다. 한 가지 이유는 인터넷에 대한 유일한 연결이 전화 접속 모뎀을 통해 이루어 졌던 때로 거슬러 올라가는 순수한 역사적 이유입니다. 다른 하나는 NTP 서비스가 어떤 이유로 든 틀린 경우 모든 시스템이 여전히 일관성을 유지하는 것을 선호한다는 것입니다. 모든 시스템이 단일 소스에서 업데이트되는 경우 일 가능성이 높습니다.
모범 사례, 설치 위치 (또는 그 이상)의 NTP 호스트는 해당 위치에서 피어링하십시오. 0.pool.ntp.org에서 3.pool.ntp.org로 최소 4 개의 외부 서버 (바람직하게는 최대 8 개)에 대해 동기화하도록합니다. 4 이상을 사용하는 경우 풀 멤버를 폴링하는 빈도를 조정해야합니다.
내 ntp.conf의 편집 된 버전은 다음과 같습니다.
server 0.us.pool.ntp.org minpoll 8 maxpoll 14
server 1.us.pool.ntp.org minpoll 8 maxpoll 14
server 2.us.pool.ntp.org minpoll 8 maxpoll 14
server 3.us.pool.ntp.org minpoll 8 maxpoll 14
peer ntp2.example.com
driftfile /var/db/drift.ntp
logfile /var/log/ntp.log
logconfig +sysall +syncall
minpoll 및 maxpoll 인수를 생략 할 수 있습니다. 추가하여 해당 서버에서 약간 가벼워졌습니다. 값은 2 ^ n 초이며, 여기서 n은 인수입니다. 3 개의 NTP 호스트간에 12 개의 서로 다른 서버를 이미 폴링하기 때문에이 값이 기본값 (6 및 10)보다 높습니다.
정확성이 매우 우려되는 경우 다음을 추가 할 수도 있습니다.
server tick.usno.navy.mil prefer minpoll 10 maxpoll 16
이것은 해군의 원자 시계를 폴링합니다. 상당히 많은 시간이 걸리고 사람들이 서버 (실제로는 3 노드 클러스터)에서 쉽게 가져 오도록 요청했기 때문에 높은 폴링 시간을 참고하십시오.
다른 사람들이 언급했듯이 수천 개의 내부 호스트의 경우 자체 시간 서버를 제공하는 것이 좋습니다. (이미 언급 한 바와 같이) 다음과 같은 이유로 :
모범 사례까지 :
에서 http://www.ntp.org/ntpfaq/NTP-s-config-adv.htm , 여기 NTP 단지 소스에 대한 권장되는 구조입니다.
1a 1b 1c 1d 1e 1f outside
. \ / ...... \ / ...... \ / ..............
2a ---p--- 2b ---p--- 2c inside
/|\ /|\ /|\
/ | \ / | \ / | \
3a 3b 3c 3e 3f 3g 3h 3i 3j
Key: 1 = stratum-1, 2 = stratum-2, 3 = stratum-3, p = peer
NTP 서버 설정에 대한 추가 정보는 http://www.pool.ntp.org/join/configuration.html에서 제공 됩니다. 예는 다음과 같습니다.
대부분의 대규모 네트워크는 작은 전용 내부 ntp 서버 풀을 사용한다고 생각합니다. ntp 트래픽은 매우 적기 때문에 대규모 조직에 서비스를 제공하기 위해 많은 서버가 필요하지 않을 수 있습니다.
모든 네트워크 서비스와 마찬가지로 자체 ntp 서버를 실행하면 더 많은 제어권을 가지며 더 많은 결정을 내릴 수 있다는 이점이 있습니다. 예를 들어 외부와의 네트워크 연결이 끊어지면 시스템이 내부 ntp 서버와 계속 통신 할 수 있으므로 모든 외부 서버에 다시 연결해야하는 것에 대해 걱정할 필요가 없습니다.
수천 대의 서버가있는 경우 gps 장치 또는 전용 원자 시계 를 통해 전용 시간 서버를 실행하는 것도 고려해야합니다 . 요즘 얼마나 많은 비용이 드는지 잘 모르겠지만 이미 지원하고있는 수천 개의 시스템에 비해 비용이 많이 들지 않습니다. 그러면 외부 세계와의 연결과는 완전히 독립적 인 정확한 시간 서비스를받을 수 있습니다.
고려해야 할 또 다른 요점은 자신의 ntp 서버를 실행하는 것이 더 정중하다는 것입니다. 그렇게하면 수천 대가 아닌 외부 요청을하는 몇 대의 컴퓨터 만 있습니다. 공개적으로 액세스 할 수있는 ntp 서버의 관리자는이 점을 높이 평가할 것입니다. 또한 외부 네트워크 트래픽을 약간 (매우 약간) 줄일 수 있습니다.
또한 자신의 ntp 서버를 실행하는 경우 많은 시스템 대신 포트 123에서 몇 대의 시스템 만 외부에 연결되므로 방화벽을 약간 강화할 수 있습니다. 유용 할 것입니다.
ntp는 설정하기 쉽고 일단 실행하면 유지 관리가 거의 필요 없습니다. 내가 참여한 모든 회사는 자체 ntp 서버를 설정했으며 제대로 작동했습니다.
대규모 네트워크에서 자체 NTP 서버를 실행해야하는 좋은 이유는 모든 컴퓨터가 정확한 시간에 동의하도록하기 때문입니다. 외부 시간 서버에 대한 자체 설정이 있거나 많은 pool.ntp.org 구성원을 사용하는 시스템이 많으면 시스템에서 약간의 시간 차이가 발생하여 문제가 발생할 수 있습니다.
또 다른 좋은 이유는 자신의 NTP 서버를 가지고 있다는 것은 외부 링크가 다운되거나 트래픽이 가득 찼을 때 동기화 된 시간이 일부 (모니터링 된) 서버에서 계속 사용 가능하다는 것을 의미합니다.
Timegeek으로 내 모든 의견.