108.1 Bài 2
Chứng chỉ: |
LPIC-1 |
---|---|
Phiên bản: |
5.0 |
Chủ đề: |
108 Dịch vụ Hệ thống thiết yếu |
Mục tiêu: |
108.1 Duy trì Thời gian Hệ thống |
Bài: |
2 trên 2 |
Giới thiệu
Trong khi máy tính cá nhân có thể tự căn chỉnh thời gian chính xác một cách hợp lý thì môi trường mạng và tin học sản xuất yêu cầu thời gian phải được chạy ở mức độ chính xác tuyệt đối. Thời gian chính xác nhất được đo bằng đồng hồ tham chiếu, thường là đồng hồ nguyên tử. Thế giới hiện đại đã phát minh ra một hệ thống mà trong đó tất cả các hệ thống máy tính được kết nối internet đều có thể được đồng bộ hóa với các đồng hồ tham chiếu này bằng cách sử dụng Giao thức thời gian mạng (NTP). Một hệ thống máy tính có NTP sẽ có thể đồng bộ hóa đồng hồ hệ thống của chúng với thời gian do đồng hồ tham chiếu cung cấp. Nếu thời gian hệ thống và thời gian được đo trên các máy chủ này khác nhau thì máy tính sẽ tăng dần hoặc làm chậm thời gian hệ thống nội bộ của nó cho đến khi thời gian hệ thống khớp với thời gian mạng.
NTP sử dụng cấu trúc phân cấp để phân bổ thời gian. Đồng hồ tham chiếu sẽ được kết nối với các máy chủ ở đầu hệ thống phân cấp. Các máy chủ này là máy Tầng (Statrum) 1 và mạng công cộng thường không thể truy cập được vào đây. Tuy nhiên, các máy Tầng 1 lại có thể truy cập được bằng các máy Tầng 2; Tầng 2 lại có thể được truy cập bằng các máy Tầng 3, v.v. Trong mạng công cộng, người dùng có thể truy cập máy chủ Tầng 2 cũng như bất kỳ máy nào thấp hơn trong hệ thống phân cấp. Khi thiết lập NTP cho một mạng lớn, cách tốt nhất là có một số lượng nhỏ máy tính kết nối với máy chủ Tầng 2+, sau đó yêu cầu các máy đó cung cấp NTP cho tất cả các máy khác. Bằng cách này, nhu cầu về máy Tầng 2 có thể được giảm thiểu.
Có một số thuật ngữ quan trọng sẽ xuất hiện khi nói về về NTP. Một số thuật ngữ này được áp dụng trong các lệnh mà chúng ta sẽ sử dụng để theo dõi trạng thái của NTP trên máy của mình:
- Phần bù (Offset)
-
Thuật ngữ này nói đến sự khác biệt tuyệt đối giữa thời gian hệ thống và thời gian NTP. Ví dụ: nếu đồng hồ hệ thống đọc thời gian là 12:00:02 và thời gian NTP là 11:59:58 thì phần bù giữa hai đồng hồ là bốn giây.
- Bước nhảy dài (Step)
-
Nếu khoảng cách thời gian giữa nhà cung cấp NTP và người dùng lớn hơn 128 mili giây thì NTP sẽ thực hiện một thay đổi đáng kể đối với thời gian hệ thống thay vì làm chậm hoặc tăng tốc thời gian hệ thống. Điều này được gọi là nhảy cóc.
- Xoay (Slew)
-
Thuật ngữ này nói đến những thay đổi được thực hiện đối với thời gian hệ thống khi phần bù giữa thời gian hệ thống và NTP nhỏ hơn 128 mili giây. Trong trường hợp này, những thay đổi sẽ được thực hiện dần dần. Điều này được gọi là xoay.
- Thời gian loạn (Insane Time)
-
Nếu phần bù giữa thời gian hệ thống và thời gian NTP lớn hơn 17 phút thì thời gian hệ thống sẽ được coi là loạn và trình nền NTP sẽ không đưa ra bất kỳ một thay đổi nào đối với thời gian hệ thống. Một số thao tác đặc biệt sẽ phải được thực hiện để đưa thời gian của hệ thống về đúng 17 phút so với thời gian chuẩn.
- Trôi (Drift)
-
Thuật ngữ này nói đến hiện tượng hai đồng hồ không đồng bộ theo thời gian. Về cơ bản, nếu hai đồng hồ được đồng bộ hóa ban đầu nhưng sau đó bị lệch theo thời gian thì có nghĩa là hiện tượng trôi đồng hồ đang xảy ra.
- Phương sai độ trễ (Jitter)
-
Thuật ngữ này nói đến mức độ trôi kể từ lần cuối cùng đồng hồ được truy vấn. Vì vậy, nếu lần đồng bộ hóa NTP cuối cùng xảy ra cách đây 17 phút và phần bù giữa nhà cung cấp NTP và người tiêu dùng là 3 mili giây thì 3 mili giây là chính là phương sai độ trễ.
Bây giờ chúng ta sẽ thảo luận về một số cách cụ thể mà Linux sử dụng để triển khai NTP.
timedatectl
Nếu một bản phân phối Linux sử dụng timedatectl
thì theo mặc định, nó sẽ triển khai một máy khách SNTP thay vì triển khai NTP đầy đủ. Đây là cách triển khai thời gian mạng cho máy ít phức tạp hơn và máy sẽ không phục vụ NTP cho các máy tính được kết nối khác.
Trong trường hợp này, SNTP sẽ không hoạt động trừ khi dịch vụ timesyncd
đang chạy. Như với tất cả các dịch vụ systemd, chúng ta có thể xác minh rằng nó đang chạy với:
$ systemctl status systemd-timesyncd ● systemd-timesyncd.service - Network Time Synchronization Loaded: loaded (/lib/systemd/system/systemd-timesyncd.service; enabled; vendor preset: enabled) Drop-In: /lib/systemd/system/systemd-timesyncd.service.d └─disable-with-time-daemon.conf Active: active (running) since Thu 2020-01-09 21:01:50 EST; 2 weeks 1 days ago Docs: man:systemd-timesyncd.service(8) Main PID: 1032 (systemd-timesyn) Status: "Synchronized to time server for the first time 91.189.89.198:123 (ntp.ubuntu.com)." Tasks: 2 (limit: 4915) Memory: 3.0M CGroup: /system.slice/systemd-timesyncd.service └─1032 /lib/systemd/systemd-timesyncd Jan 11 13:06:18 NeoMex systemd-timesyncd[1032]: Synchronized to time server for the first time 91.189.91.157:123 (ntp.ubuntu.com). ...
Trạng thái đồng bộ hóa SNTP của timedatectl
có thể được xác minh bằng cách sử dụng show-timesync
:
$ timedatectl show-timesync --all LinkNTPServers= SystemNTPServers= FallbackNTPServers=ntp.ubuntu.com ServerName=ntp.ubuntu.com ServerAddress=91.189.89.198 RootDistanceMaxUSec=5s PollIntervalMinUSec=32s PollIntervalMaxUSec=34min 8s PollIntervalUSec=34min 8s NTPMessage={ Leap=0, Version=4, Mode=4, Stratum=2, Precision=-23, RootDelay=8.270ms, RootDispersion=18.432ms, Reference=91EECB0E, OriginateTimestamp=Sat 2020-01-25 18:35:49 EST, ReceiveTimestamp=Sat 2020-01-25 18:35:49 EST, TransmitTimestamp=Sat 2020-01-25 18:35:49 EST, DestinationTimestamp=Sat 2020-01-25 18:35:49 EST, Ignored=no PacketCount=263, Jitter=2.751ms } Frequency=-211336
Cấu hình này có thể phù hợp cho hầu hết các trường hợp, nhưng như đã lưu ý trước đó, nó sẽ không đủ nếu người dùng muốn đồng bộ hóa nhiều máy khách trong mạng. Trong trường hợp này, chúng ta nên cài đặt một máy khách NTP đầy đủ.
Trình nền NTP
Thời gian hệ thống được so sánh với thời gian mạng theo lịch trình thông thường. Để tính năng này hoạt động, chúng ta phải có một trình nền chạy ngầm. Đối với nhiều hệ thống Linux, tên của trình nền này là ntpd
. ntpd
sẽ cho phép một máy không chỉ là người tiêu thụ thời gian (nghĩa là có thể đồng bộ hóa đồng hồ của chính nó từ nguồn bên ngoài) mà còn có thể cung cấp thời gian cho các máy khác.
Giả sử máy tính của chúng ta được dựa trên systemd và nó sử dụng systemctl
để điều khiển các trình nền. Chúng ta sẽ cài đặt các gói ntp
bằng trình quản lý gói thích hợp và sau đó đảm bảo rằng trình nền ntpd
đang chạy bằng cách kiểm tra trạng thái của nó:
$ systemctl status ntpd ● ntpd.service - Network Time Service Loaded: loaded (/usr/lib/systemd/system/ntpd.service; enabled; vendor preset: disabled) Active: active (running) since Fri 2019-12-06 03:27:21 EST; 7h ago Process: 856 ExecStart=/usr/sbin/ntpd -u ntp:ntp $OPTIONS (code=exited, status=0/SUCCESS) Main PID: 867 (ntpd) CGroup: /system.slice/ntpd.service `-867 /usr/sbin/ntpd -u ntp:ntp -g
Trong một số trường hợp, có thể chúng ta sẽ cần phải khởi động và kích hoạt ntpd
. Trên hầu hết các máy Linux, việc này được thực hiện bằng:
# systemctl enable ntpd && systemctl start ntpd
Các truy vấn NTP sẽ xảy ra trên Cổng TCP 123. Nếu NTP không hoạt động, hãy đảm bảo rằng cổng TCP 123 đang mở và nghe.
Cấu hình NTP
NTP có thể thăm dò một số nguồn và chọn ra những ứng viên tốt nhất để sử dụng cho việc thiết lập thời gian của hệ thống. Nếu mất kết nối mạng, NTP sẽ sử dụng các điều chỉnh đã có trước đó từ lịch sử của nó để ước tính các điều chỉnh trong tương lai.
Tùy thuộc vào từng bản phân phối Linux, danh sách máy chủ thời gian mạng sẽ được lưu trữ ở những nơi khác nhau. Hãy giả sử rằng ntp
đã được cài đặt trên máy.
Tệp /etc/ntp.conf
chứa thông tin cấu hình về cách hệ thống đồng bộ hóa với thời gian mạng. Tệp này có thể được đọc và sửa đổi bằng cách sử dụng vi
hoặc nano
.
Theo mặc định, máy chủ NTP được sử dụng sẽ được chỉ định trong một phần như sau:
# Use public servers from the pool.ntp.org project. # Please consider joining the pool (http://www.pool.ntp.org/join.html). server 0.centos.pool.ntp.org iburst server 1.centos.pool.ntp.org iburst server 2.centos.pool.ntp.org iburst server 3.centos.pool.ntp.org iburst
Cú pháp để thêm máy chủ NTP sẽ như sau:
server (IP Address) server server.url.localhost
Địa chỉ máy chủ có thể là địa chỉ IP hoặc URL nếu DNS đã được cấu hình đúng cách. Trong trường hợp này, máy chủ sẽ luôn được truy vấn.
Quản trị viên mạng cũng có thể cân nhắc sử dụng (hoặc thiết lập) nhóm (pool). Trong trường hợp này, chúng ta sẽ giả định rằng có nhiều nhà cung cấp NTP đều chạy trình nền NTP và có cùng một mốc thời gian. Khi khách hàng truy vấn một nhóm, nhà cung cấp sẽ được chọn ngẫu nhiên. Điều này giúp phân phối tải mạng giữa nhiều máy để không có máy nào trong nhóm phải xử lý tất cả các truy vấn NTP.
Thông thường, /etc/ntp.conf
sẽ được điền vào một nhóm máy chủ có tên là pool.ntp.org
(ví dụ như server 0.centos.pool.ntp.org
là nhóm NTP mặc định được cung cấp cho các máy CentOS).
pool.ntp.org
Các máy chủ NTP được sử dụng theo mặc định là một dự án mã nguồn mở. Bạn có thể tìm thêm thông tin tại ntppool.org.
Hãy xem xét liệu NTP Pool có phù hợp với mục đích sử dụng của bạn hay không. Nếu doanh nghiệp, tổ chức hay cuộc sống của con người phụ thuộc vào việc chọn đúng thời điểm hoặc có thể bị tổn hại nếu chọn sai thì bạn không nên “gỡ nó ra khỏi internet”. NTP Pool nhìn chung có chất lượng rất cao, nhưng đây là dịch vụ do các tình nguyện viên điều hành trong thời gian rảnh rỗi. Vui lòng trao đổi với nhà cung cấp dịch vụ và thiết bị của bạn về việc thiết lập dịch vụ đáng tin cậy tại địa phương cho bạn. Hãy xem thêm các điều khoản dịch vụ của chúng tôi. Chúng tôi khuyên dùng máy chủ thời gian từ Meinberg nhưng bạn cũng có thể tìm thấy máy chủ thời gian từ End Run, Spectracom và nhiều máy chủ khác.
ntpdate
Trong quá trình thiết lập ban đầu, thời gian hệ thống và NTP có thể bất đồng bộ nghiêm trọng. Nếu phần bù giữa thời gian hệ thống và NTP lớn hơn 17 phút thì trình nền NTP sẽ không thực hiện thay đổi về thời gian hệ thống. Trong trường hợp này, chúng ta sẽ phải can thiệp theo cách thủ công.
Đầu tiên, nếu ntpd
đang chạy thì chúng ta cần phải dừng nó lại. Hãy sử dụng systemctl stop ntpd
để làm việc này.
Tiếp theo, hãy sử dụng ntpdate pool.ntp.org
để thực hiện một phiên đồng bộ hóa đơn ban đầu, trong đó pool.ntp.org
là địa chỉ IP hoặc URL của máy chủ NTP. Chúng ta có thể sẽ cần nhiều hơn một phiên đồng bộ hóa.
ntpq
ntpq
là một tiện ích để theo dõi trạng thái của NTP. Khi trình nền NTP đã được khởi động và định cấu hình, ntpq
có thể được sử dụng để kiểm tra trạng thái của nó:
$ ntpq -p remote refid st t when poll reach delay offset jitter ============================================================================== +37.44.185.42 91.189.94.4 3 u 86 128 377 126.509 -20.398 6.838 +ntp2.0x00.lv 193.204.114.233 2 u 82 128 377 143.885 -8.105 8.478 *inspektor-vlan1 121.131.112.137 2 u 17 128 377 112.878 -23.619 7.959 b1-66er.matrix. 18.26.4.105 2 u 484 128 10 34.907 -0.811 16.123
Trong trường hợp này, -p
chính là print và nó sẽ in một bản tóm tắt về các đơn vị ngang hàng. Địa chỉ máy chủ cũng có thể được trả về dưới dạng địa chỉ IP bằng cách sử dụng -n
.
remote
-
Tên máy chủ của nhà cung cấp NTP.
refid
-
ID tham chiếu của nhà cung cấp NTP.
st
-
Tầng của nhà cung cấp.
when
-
Số giây kể từ phiên truy vấn cuối cùng.
poll
-
Số giây giữa các phiên truy vấn.
reach
-
ID trạng thái để cho biết liệu máy chủ có được truy cập hay không. Kết nối thành công sẽ tăng con số này lên 1.
delay
-
Thời gian tính bằng mili giây giữa phiên truy vấn và phản hồi của máy chủ.
offset
-
Thời gian tính bằng mili giây giữa thời gian hệ thống và thời gian NTP.
jitter
-
Phần bù tính bằng mili giây giữa thời gian hệ thống và NTP trong phiên truy vấn cuối cùng.
ntpq
cũng có chế độ tương tác. Chế độ này sẽ được truy cập khi lệnh được chạy mà không có tùy chọn hoặc đối số. Tùy chọn ?
sẽ trả về danh sách các lệnh mà ntpq
sẽ nhận ra.
chrony
chrony
là một cách khác để triển khai NTP. Nó được cài đặt theo mặc định trên một số hệ thống Linux nhưng cũng có sẵn để tải xuống trên tất cả các bản phân phối chính. chronyd
là trình nền chrony
và chronyc
là giao diện dòng lệnh. Chúng ta có thể sẽ cần phải khởi động và kích hoạt chronyd
trước khi tương tác với chronyc
.
Nếu cài đặt chrony có cấu hình mặc định thì việc sử dụng lệnh chronyc tracking
sẽ cung cấp thông tin về NTP và thời gian hệ thống:
$ chronyc tracking Reference ID : 3265FB3D (bras-vprn-toroon2638w-lp130-11-50-101-251-61.dsl.) Stratum : 3 Ref time (UTC) : Thu Jan 09 19:18:35 2020 System time : 0.000134029 seconds fast of NTP time Last offset : +0.000166506 seconds RMS offset : 0.000470712 seconds Frequency : 919.818 ppm slow Residual freq : +0.078 ppm Skew : 0.555 ppm Root delay : 0.006151616 seconds Root dispersion : 0.010947504 seconds Update interval : 129.8 seconds Leap status : Normal
Kết quả đầu ra này chứa nhiều thông tin hơn đầu ra từ các cách triển khai khác.
Reference ID
-
ID tham chiếu và tên mà máy tính hiện được đồng bộ hóa.
Stratum
-
Số bước nhảy ngắn tới máy tính có đồng hồ tham chiếu đính kèm.
Ref time
-
Đây là thời gian UTC mà phép đo cuối cùng từ nguồn tham chiếu được thực hiện.
System time
-
Độ trễ đồng hồ hệ thống từ máy chủ được đồng bộ hóa.
Last offset
-
Phần bù ước tính của lần cập nhật đồng hồ cuối cùng.
RMS offset
-
Trung bình dài hạn của giá trị phần bù.
Frequency
-
Đây là tỷ lệ lệch của đồng hồ hệ thống nếu chronyd không sửa nó. Nó được cung cấp theo ppm (parts per million - phần triệu).
Residual freq
-
Tần số dư biểu thị sự khác biệt giữa các phép đo từ nguồn tham chiếu và tần số hiện đang được sử dụng.
Skew
-
Giới hạn lỗi ước tính của tần số.
Root delay
-
Tổng độ trễ đường dẫn mạng tới máy tính tầng mà máy tính đang được đồng bộ hóa từ đó.
Leap status
-
Đây là trạng thái nhảy vọt có thể có một trong các giá trị sau – bình thường, chèn giây, xóa giây hoặc không được đồng bộ hóa.
Chúng ta cũng có thể xem thông tin chi tiết về bản cập nhật NTP hợp lệ cuối cùng:
# chrony ntpdata Remote address : 172.105.97.111 (AC69616F) Remote port : 123 Local address : 192.168.122.81 (C0A87A51) Leap status : Normal Version : 4 Mode : Server Stratum : 2 Poll interval : 6 (64 seconds) Precision : -25 (0.000000030 seconds) Root delay : 0.000381 seconds Root dispersion : 0.000092 seconds Reference ID : 61B7CE58 () Reference time : Mon Jan 13 21:50:03 2020 Offset : +0.000491960 seconds Peer delay : 0.004312567 seconds Peer dispersion : 0.000000068 seconds Response time : 0.000037078 seconds Jitter asymmetry: +0.00 NTP tests : 111 111 1111 Interleaved : No Authenticated : No TX timestamping : Daemon RX timestamping : Kernel Total TX : 15 Total RX : 15 Total valid RX : 15
Cuối cùng, chronyc sources
sẽ trả về thông tin về máy chủ NTP được sử dụng để đồng bộ hóa thời gian:
$ chronyc sources 210 Number of sources = 0 MS Name/IP address Stratum Poll Reach LastRx Last sample ===============================================================================
Hiện tại, máy này chưa có các nguồn được cấu hình. Chúng ta có thể thêm nguồn từ pool.ntp.org
bằng cách mở tệp cấu hình chrony. Tệp này thường sẽ được đặt tại /etc/chrony.conf
. Khi mở tệp này, chúng ta sẽ thấy một số máy chủ được liệt kê theo mặc định:
210 Number of sources = 0 MS Name/IP address Stratum Poll Reach LastRx Last sample =============================================================================== # Most computers using chrony will send measurement requests to one or # more 'NTP servers'. You will probably find that your Internet Service # Provider or company have one or more NTP servers that you can specify. # Failing that, there are a lot of public NTP servers. There is a list # you can access at http://support.ntp.org/bin/view/Servers/WebHome or # you can use servers from the 3.arch.pool.ntp.org project. ! server 0.arch.pool.ntp.org iburst iburst ! server 1.arch.pool.ntp.org iburst iburst ! server 2.arch.pool.ntp.org iburst iburst ! pool 3.arch.pool.ntp.org iburst
Các máy chủ này cũng sẽ đóng vai trò là một hướng dẫn cú pháp khi truy cập vào máy chủ. Tuy nhiên, trong trường hợp này, chúng ta sẽ chỉ xóa !
ở đầu mỗi dòng, từ đó bỏ chú thích những dòng này và sử dụng các máy chủ mặc định từ dự án pool.ntp.org
.
Ngoài ra, trong tệp này, chúng ta có thể chọn thay đổi cấu hình mặc định liên quan đến giới hạn lỗi và phần bù cũng như vị trí của driftfile và keyfile.
Trên máy này, chúng ta cần thực hiện một phiên chỉnh sửa lớn cho đồng hồ ban đầu. Chúng ta sẽ chọn bỏ chú thích cho dòng sau:
! makestep 1.0 3
Sau khi thực hiện các thay đổi đối với tệp cấu hình, hãy khởi động lại dịch vụ chronyd
rồi sử dụng chronyc makestep
để điều chỉnh đồng hồ hệ thống theo cách thủ công:
# chronyc makestep 200 OK
Và sau đó hãy sử dụng chronyc tracking
như trước để xác minh rằng các thay đổi đã diễn ra.
Bài tập Hướng dẫn
-
Hãy nhập thuật ngữ thích hợp cho mỗi định nghĩa:
Định nghĩa Thuật ngữ Một máy tính sẽ chia sẻ thời gian mạng với bạn
Khoảng cách từ một đồng hồ tham chiếu, tính bằng bước nhảy ngắn hoặc bước nhảy dài
Sự khác biệt giữa thời gian hệ thống và thời gian mạng
Sự khác biệt giữa thời gian hệ thống và thời gian mạng kể từ cuộc thăm dò NTP cuối cùng
Nhóm máy chủ cung cấp thời gian mạng và chia sẻ tải giữa chúng
-
Hãy chỉ ra lệnh bạn sẽ sử dụng để xuất các giá trị sau:
Giá trị chronyc tracking
timedatectl show-timesync --all
ntpq -pn
chrony ntpdata
chronyc sources
Phương sai độ trễ
Độ trôi
Quãng của phiên thăm dò
Phần bù
Tầng
Địa chỉ IP của nhà cung cấp
Độ trễ gốc
-
Bạn đang thiết lập một mạng doanh nghiệp bao gồm một máy chủ Linux và một số máy tính Linux. Máy chủ có địa chỉ IP tĩnh là 192.168.0.101. Bạn quyết định rằng máy chủ sẽ kết nối với
pool.ntp.org
và sau đó cung cấp thời gian NTP cho máy tính. Hãy mô tả cấu hình của máy chủ và máy tính. -
Có một máy Linux có thời gian không chính xác. Hãy mô tả các bước bạn sẽ thực hiện để khắc phục sự cố NTP.
Bài tập Mở rộng
-
Hãy tìm hiểu sự khác biệt giữa SNTP và NTP.
SNTP NTP -
Tại sao quản trị viên hệ thống có thể chọn không sử dụng
pool.ntp.org
? -
Quản trị viên hệ thống sẽ chọn tham gia hoặc đóng góp cho dự án
pool.ntp.org
bằng cách nào?
Tóm tắt
Trong bài học này, chúng ta đã học về:
-
NTP là gì và tại sao nó lại quan trọng.
-
Định cấu hình trình nền NTP từ dự án
pool.ntp.org
. -
Sử dụng
ntpq
để xác minh cấu hình NTP. -
Sử dụng
chrony
làm dịch vụ NTP thay thế.
Các lệnh được sử dụng trong bài học này:
timedatectl show-timesync --all
-
Hiển thị thông tin SNTP nếu sử dụng
timedatectl
. ntpdate <address>
-
Thực hiện cập nhật bước nhảy NTP thủ công một lần.
ntpq -p
-
In lịch sử các cuộc thăm dò gần đây của NTP.
-n
sẽ thay thế URL bằng địa chỉ IP. chronyc tracking
-
Hiển thị trạng thái NTP nếu sử dụng chrony.
chronyc ntpdata
-
Hiển thị thông tin NTP về cuộc thăm dò cuối cùng.
chronyc sources
-
Hiển thị thông tin về các nhà cung cấp NTP.
chronyc makestep
-
Thực hiện cập nhật bước nhảy NTP thủ công một lần nếu sử dụng chrony.
Đáp án Bài tập Hướng dẫn
-
Hãy nhập thuật ngữ thích hợp cho mỗi định nghĩa:
Định nghĩa Thuật ngữ Một máy tính sẽ chia sẻ thời gian mạng với bạn
Nhà cung cấp
Khoảng cách từ một đồng hồ tham chiếu, tính bằng bước nhảy ngắn hoặc bước nhảy dài
Tầng
Sự khác biệt giữa thời gian hệ thống và thời gian mạng
Phần bù
Sự khác biệt giữa thời gian hệ thống và thời gian mạng kể từ cuộc thăm dò NTP cuối cùng
Jitter
Nhóm máy chủ cung cấp thời gian mạng và chia sẻ tải giữa chúng
Nhóm
-
Hãy chỉ ra lệnh bạn sẽ sử dụng để xuất các giá trị sau:
Giá trị chronyc tracking
timedatectl show-timesync --all
ntpq -pn
chrony ntpdata
chronyc sources
Phương sai độ trễ
X
X
Độ trôi
Quãng của phiên thăm dò
X
X
X (cột
when
)X
X
Phần bù
X
X
X
Tầng
X
X
X
X
X
Địa chỉ IP của nhà cung cấp
X
X
X
X
Độ trễ gốc
X
X
-
Bạn đang thiết lập một mạng doanh nghiệp bao gồm một máy chủ Linux và một số máy tính Linux. Máy chủ có địa chỉ IP tĩnh là 192.168.0.101. Bạn quyết định rằng máy chủ sẽ kết nối với
pool.ntp.org
và sau đó cung cấp thời gian NTP cho máy tính. Hãy mô tả cấu hình của máy chủ và máy tính.Hãy đảm bảo rằng máy chủ có dịch vụ ntpd đang chạy chứ không phải SNTP. Hãy sử dụng nhóm
pool.ntp.org
trong tệp/etc/ntp.conf
hoặc/etc/chrony.conf
. Đối với mỗi máy khách, hãy chỉ định192.168.0.101
trong mỗi tệp/etc/ntp.conf
hoặc/etc/chrony.conf
. -
Có một máy Linux có thời gian không chính xác. Hãy mô tả các bước bạn sẽ thực hiện để khắc phục sự cố NTP.
Đầu tiên, hãy đảm bảo rằng máy đang được kết nối với Internet. Hãy sử dụng
ping
cho việc này. Sau đó, hãy kiểm tra xem dịch vụ ntpd hoặc SNTP có đang chạy hay không bằng cách sử dụngsystemctl status ntpd
hoặcsystemctl status systemd-timesyncd
. Bạn có thể thấy thông báo lỗi cung cấp các thông tin hữu ích. Cuối cùng, hãy sử dụng lệnh nhưntpq -p
hoặcchrony track
để xác minh xem có bất kỳ yêu cầu nào được đưa ra hay không. Nếu thời gian hệ thống khác biệt đáng kể so với thời gian mạng thì có thể thời gian hệ thống đó được coi là "thời gian loạn" và sẽ không bị thay đổi nếu không có sự can thiệp thủ công. Trong trường hợp này, hãy sử dụng lệnh từ bài học trước hoặcntpdate pool.ntp.org
để thực hiện đồng bộ hóa ntp một lần.
Đáp án Bài tập Mở rộng
-
Hãy tìm hiểu sự khác biệt giữa SNTP và NTP.
SNTP NTP kém chính xác
chính xác hơn
yêu cầu ít tài nguyên hơn
đòi hỏi nhiều tài nguyên hơn
không thể hoạt động như một nhà cung cấp thời gian
có thể hoạt động như một nhà cung cấp thời gian
chỉ thời gian các bước nhảy dài
thời gian các bước nhảy dài hoặc thời gian xoay
yêu cầu thời gian từ một nguồn duy nhất
có thể giám sát nhiều máy chủ NTP và sử dụng nhà cung cấp tối ưu
-
Tại sao quản trị viên hệ thống có thể chọn không sử dụng
pool.ntp.org
?Theo ntppool.org: Nếu việc có thời gian chính xác là vô cùng quan trọng, bạn nên xem xét một giải pháp thay thế. Tương tự, nếu nhà cung cấp Internet có máy chủ thời gian, bạn được khuyến nghị nên sử dụng máy chủ đó.
-
Quản trị viên hệ thống sẽ chọn tham gia hoặc đóng góp cho dự án
pool.ntp.org
bằng cách nào?Theo www.ntppool.org: Máy chủ của bạn phải có địa chỉ IP tĩnh và kết nối Internet cố định. Địa chỉ IP tĩnh không được thay đổi chút nào hoặc ít hơn một lần mỗi năm. Ngoài ra, yêu cầu về băng thông rất khiêm tốn: băng thông 384 - 512 Kbit. Máy chủ tầng 3 hoặc 4 đều có thể tham gia.