Centos 下NTP環境的建立,centosntp環境建立

來源:互聯網
上載者:User

Centos 下NTP環境的建立,centosntp環境建立

最近在搭建Openstack以及Ceph的叢集,由於叢集中都存在多個節點,且節點間需要時間的同步,所以需要使用NTP,又考慮到有些時候網路環境是封閉的,所以需要自己搭建一個NTP的伺服器

 伺服器IP

角色 

 說明

同步方式

 192.168.100.203 

 NTPD服務

 1、負責與外部公用NTPD服務同步標準時間

 2、作為內外網路的NTPD服務

NTPD服務平滑同步

 192.168.40.xxx

 內外NTP用戶端

 內網裝置與192.168.100.203同步時間

NTPD服務平滑同步


NTP時間同步方式選擇

   NTP同步方式在linux下一般兩種:使用ntpdate命令直接同步處理和使用NTPD服務平滑同步。有什麼區別呢,簡單說下,免得時間長了,概念又模糊。

   現有一台裝置,系統時間是 13:00 , 真實的目前時間(在空中,也許衛星上,這裡假設是在準備同步的上級目標NTP伺服器)是: 12:30  。如果我們使用ntpdate同步(ntpdate -u 目標NTP伺服器IP),作業系統的時間立即更新為12:30,假如,我們的系統有一個定時應用,是在每天12:40運行,那麼實際今天這個的任務已經運行過了(目前時間是13:00嘛),現在被ntpdate修改為12:30,那麼意味作10分鐘後,又會執行一次任務,這就糟糕了,這個任務只能執行一次的嘛!!我想你(其實是我)已經懂了ntpdate時間同步的隱患,當然這個例子有些極端,但的確是有風險的,生產環境我不打算這麼幹,還是穩妥點好。所以解決該問題的辦法就是時間平滑更改,不會讓一個時間點在一天內經曆兩次,這就是NTPD服務方式平滑同步時間,它每次同步時間的位移量不會太陡,是慢慢來的(問:怎麼來,沒有細究,只曉得一次一點的同步,完全同步好需要較長時間,所以一般開啟NTPD服務同步前先用ntpdate先手動同步一次)。

安裝配置

CentOS 6.3系統已經內建了NTPD服務,一般預設是按照了的,如果沒有安裝,先檢查下,然後配置好yum倉庫,yum方式安裝下就OK,具體如下:

#rpm -q ntp

如果沒有安裝,我們按照下

# yum install ntp

按上面的安裝方式在內網每台伺服器上都安裝好NTP軟體包。

完成後,都需要配置NTP服務為自啟動

# chkconfig ntpd on# chkconfig --list ntpd

在配置前,先使用ntpdate手動同步下時間,免得本機與外部時間伺服器時間差距太大,讓ntpd不能正常同步。

# ntpdate -u 202.112.10.3622 Dec 16:52:38 ntpdate[6400]: adjust time server 202.112.10.36 offset 0.012135 se
配置內網NTP-Server(192.168.100.203)

下面主要是配置內網的NPTD伺服器(192.168.100.203), NTPD服務配置核心就在/etc/ntp.conf檔案,配置好了就OK。網上特別是老外的文章都很簡單,我上當了,媽喲,基礎環境不一樣,我們得中國特色才行。先上設定檔再說,紅色部分是我的修改,其他的是預設。

# For more information about this file, see the man pages# ntp.conf(5), ntp_acc(5), ntp_auth(5), ntp_clock(5), ntp_misc(5), ntp_mon(5).driftfile /var/lib/ntp/drift# Permit time synchronization with our time source, but do not# permit the source to query or modify the service on this system.restrict default kod nomodify notrap nopeer noqueryrestrict -6 default kod nomodify notrap nopeer noquery# Permit all access over the loopback interface.  This could# be tightened as well, but to do so would effect some of# the administrative functions.restrict 127.0.0.1restrict -6 ::1# Hosts on local network are less restricted.# 允許內網其他機器同步時間restrict 192.168.40.0 mask 255.255.255.0 nomodify notrap# Use public servers from the pool.ntp.org project.# Please consider joining the pool (http://www.pool.ntp.org/join.html).# 中國這邊最活躍的時間伺服器 : http://www.pool.ntp.org/zone/cnserver 210.72.145.44 perfer   # 中國國家受時中心server 202.112.10.36             # 1.cn.pool.ntp.orgserver 59.124.196.83             # 0.asia.pool.ntp.org#broadcast 192.168.40.255 autokey        # broadcast server#broadcastclient                        # broadcast client#broadcast 224.0.1.1 autokey            # multicast server#multicastclient 224.0.1.1              # multicast client#manycastserver 239.255.254.254         # manycast server#manycastclient 239.255.254.254 autokey # manycast client# allow update time by the upper server # 允許上層時間伺服器主動修改本機時間restrict 210.72.145.44 nomodify notrap noqueryrestrict 202.112.10.36 nomodify notrap noqueryrestrict 59.124.196.83 nomodify notrap noquery# Undisciplined Local Clock. This is a fake driver intended for backup# and when no outside source of synchronized time is available. # 外部時間伺服器不可用時,以本地時間作為時間服務server  127.127.1.0     # local clockfudge   127.127.1.0 stratum 10# Enable public key cryptography.#cryptoincludefile /etc/ntp/crypto/pw# Key file containing the keys and key identifiers used when operating# with symmetric key cryptography. keys /etc/ntp/keys# Specify the key identifiers which are trusted.#trustedkey 4 8 42# Specify the key identifier to use with the ntpdc utility.#requestkey 8# Specify the key identifier to use with the ntpq utility.#controlkey 8# Enable writing of statistics records.#statistics clockstats cryptostats loopstats peerstats


配置參數和命令簡單說明請參考:http://linux.vbird.org/linux_server/0440ntp.php#server_ntp.conf

設定檔修改完成,儲存退出,啟動服務。

# service ntpd start

啟動後,一般需要5-10分鐘左右的時候才能與外部時間伺服器開始同步時間。可以通過命令查詢NTPD服務情況。

查看服務串連和監聽

# netstat -tlunp | grep ntp      udp        0      0 192.168.100.203:123           0.0.0.0:*                               23103/ntpd          udp        0      0 127.0.0.1:123               0.0.0.0:*                               23103/ntpd          udp        0      0 0.0.0.0:123                 0.0.0.0:*                               23103/ntpd          udp        0      0 fe80::6cae:8bff:fe3d:f65:123 :::*                                    23103/ntpd          udp        0      0 fe80::6eae:8bff:fe3d:f65:123 :::*                                    23103/ntpd          udp        0      0 ::1:123                     :::*                                    23103/ntpd          udp        0      0 :::123                      :::*                                    23103/ntpd  


ntpq -p 查看網路中的NTP伺服器,同時顯示用戶端和每個伺服器的關係

# ntpq -p# ntpq -p     remote           refid      st t when poll reach   delay   offset  jitter==============================================================================*202.112.10.36   202.112.10.60    2 u  277  128  314  201.553    9.193  17.068+59.124.196.83   129.6.15.28      2 u   88  128  377   71.153  -25.111  14.004 LOCAL(0)        .LOCL.          10 l   15   64  377    0.000    0.000   0.000


位置

標誌

含義

符號

*

響應的NTP伺服器和最精確的伺服器

+

響應這個查詢請求的NTP伺服器


blank(空格)

沒有響應的NTP伺服器


標題

remote

響應這個請求的NTP伺服器的名稱

refid

NTP伺服器使用的更高一級伺服器的名稱


st

正在響應請求的NTP伺服器的層級


when

上一次成功請求之後到現在的秒數


poll

本地和遠程伺服器多少時間進行一次同步,單位秒,在一開始運行NTP的時候這個poll值會比較小,伺服器同步的頻率大,可以儘快調整到正確的時間範圍,之後poll值會逐漸增大,同步的頻率也就會相應減小


reach

用來測試能否和伺服器串連,是一個八進位值,每成功串連一次它的值就會增加


delay

從本地機發送同步要求到ntp伺服器的往返時間


offset

主機通過NTP時鐘同步與所同步時間源的時間位移量,單位為毫秒,offset越接近於0,主機和ntp伺服器的時間越接近


jitter

統計了在特定個連續的串連數裡offset的分布情況。簡單地說這個數值的絕對值越小,主機的時間就越精確


ntpstat 命令查看時間同步狀態,這個一般需要5-10分鐘後才能成功串連和同步。所以,伺服器啟動後需要稍等下。

剛啟動的時候,一般是:

# ntpstat unsynchronised  time server re-starting   polling server every 64 s

串連並同步後:

synchronised to NTP server (202.112.10.36) at stratum 3    time correct to within 275 ms   polling server every 256 s

OK,內網的NTPD服務已經配置完成,如果所有正常後,開始配置內網的其他裝置與這台伺服器作為時間同步服務。

配置內網NTP-Clients

內網其他裝置作為NTP的用戶端配置,相對就比較簡單,而且所有裝置的配置都相同。

首先需要安裝NTPD服務,然後配置為自啟動(與NTP-Server完全一樣)。然後找其中一台配置/etc/ntp.conf檔案,配置完成驗證通過後,拷貝到其他用戶端機器,直接使用即可。

# yum install ntp# chkconfig ntp on# vim /etc/ntp.conf
driftfile /var/lib/ntp/driftrestrict 127.0.0.1restrict -6 ::1# 配置時間伺服器為本地的時間伺服器server 192.168.100.203restrict 192.168.100.203 nomodify notrap noqueryserver  127.127.1.0     # local clockfudge   127.127.1.0 stratum 10includefile /etc/ntp/crypto/pwkeys /etc/ntp/keys

儲存退出,請求伺服器前,請先使用ntpdate手動同步下時間

# ntpdate -u 192.168.0.13522 Dec 17:09:57 ntpdate[6439]: adjust time server 192.168.100.203 offset 0.004882 sec


這裡有可能出現同步失敗,一般情況下原因都是本地的NTPD伺服器還沒有正常啟動起來,一般需要幾分鐘時間後才能開始同步。

錯誤判斷請參考後面的錯誤處理。

# service ntpd start

啟動後,查看同步情況

# ntpq -p# ntpstat
錯誤問題處理

用於收集安裝,配置和應用中出現的問題

錯誤1:ntpdate -u ip -<  no server suitable for synchronization found

判斷:在ntp用戶端用ntpdate –d serverIP查看,發現有“Server dropped: strata too high”的錯誤,並且顯示“stratum 16”。而正常情況下stratum這個值得範圍是“0~15”。

原因:NTP server還沒有和其自身或者它的server同步上。在ntp server上重新啟動ntp服務後,ntp server自身或者與其server的同步的需要一個時間段,這個過程可能是5分鐘,在這個時間之內在用戶端運行ntpdate命令時會產生no server suitable for synchronization found的錯誤。

處理:等待幾分鐘後,重試一般解決。

也可以使用命令 ntpq -p查看情況

 

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.