ntpServer搭建用以进行时间同步

内网NTP时间同步配置
本文介绍在闭网环境中如何配置NTP服务器实现时间同步,包括修改ntp.conf文件的具体步骤,设置本地时间服务器及限制策略,以及如何验证时间同步是否成功。

  在试各种乱七八糟的集群中,突然发现了一个问题,假如在一个闭网环境下安装某些集群软件的时候服务器之间的时间不同步(如HBase),会导致启动失败。那么就需要进行时间同步。可是往常都是网络校准的,没网的集群只能自己搞一个同步服务器了。

  查看资料之后发现这东西还是挺简单的,ntp自带server,只不过默认没用上而已,拿ubuntu来举例s:

sudo vim /etc/ntp.conf

    首先找到server ntp.ubuntu.com这一行,在下面加入如下两条,这代表着前面的server连不上时使用本地时间为其他机器校准:

server ntp.ubuntu.com
server 127.127.1.0
fudge 127.127.1.0 stratum 8

  再找到如下两行,然后把自己的网段放进去(这后面没加任何认证,毕竟内网):

restrict -4 default kod notrap nomodify nopeer noquery
restrict -6 default kod notrap nomodify nopeer noquery

restrict 192.168.12.0 mask 255.255.255.0

  然后重启服务就可以了

sudo /etc/init.d/ntp restart

  这时候,别的机器执行‘sudo ntp 服务IP’还是不可以,会出现一个:

no server suitable for synchronization found

  需要等待64*5秒之后才可以进行校准,可以使用命令查看情况:

Titan@cloud13:~/hbase/logs$ ntpq -p
     remote           refid      st t when poll reach   delay   offset  jitter
==============================================================================
 ntp02.cpe.rmutt 122.231.59.246   2 u  106   64    2  139.508   19.258   0.000
 ntp.nic.kz      .INIT.          16 u    -   64    0    0.000    0.000   0.000
 82.200.209.236  .INIT.          16 u    -   64    0    0.000    0.000   0.000
 dadns.cdnetwork 204.123.2.5      2 u  106   64  126   69.146   -4.726   5.426
 chilipepper.can 193.79.237.14    2 u   41   64  103  318.484   62.871   9.066
*LOCAL(0)        .LOCL.           8 l   53   64  177    0.000    0.000   0.000
View Code

  其中reach 大于17时其他机器就可以用此服务器进行校准了~~

sudo ntpdate IP

  如果出现

22 Dec 14:49:02 ntpdate[14906]: the NTP socket is in use, exiting

那么使用
sudo lsof -i:123
找到正在运行的ntp
然后sudo kill -9 pid

  

 

转载于:https://www.cnblogs.com/gaoze/p/6094270.html

<think>好的,用户现在想了解在Linux环境下如何配置和使用NTP进行时间同步。我需要根据他们提供的引用资料来整理出一个清晰的教程。首先,我应该先确认用户可能使用的Linux发行版,比如Debian/Ubuntu或者RHEL/CentOS,因为这些系统在配置上可能有所不同。 根据引用[1],Debian和Ubuntu通常使用systemd-timesyncd服务,而其他系统可能使用ntpd或chrony。所以需要分步骤讲解这两种情况。用户提供的引用中有提到ntp和ntpdate的区别,特别是引用[3]提到ntp是平滑同步,而ntpdate是立即同步,且不可同时运行,这点需要强调,避免用户混淆。 接下来,安装部分。对于Debian/Ubuntu,安装ntp或chrony,而RHEL/CentOS可能使用chronyd。配置文件的位置也不同,比如/etc/ntp.conf和/etc/chrony/chrony.conf。需要分别说明如何修改这些配置文件,添加NTP服务器地址,比如引用[4]中的示例配置。 然后,启动服务并设置开机自启,这部分需要给出具体的systemctl命令。另外,检查同步状态也很重要,可以使用ntpq -p或者chronyc sources命令,这能帮助用户确认是否同步成功。 还有时间同步的手动命令,比如使用ntpdate或者timedatectl,但要注意ntpdate可能与ntpd冲突,如引用[3]所提醒的。可能需要建议用户先停止相关服务再使用ntpdate,或者推荐使用chronyc的指令。 防火墙配置也是关键,用户可能需要开放UDP 123端口,这部分需要给出iptables或firewalld的配置方法。 最后,常见问题处理,比如服务启动失败、同步慢等,需要根据可能的原因给出解决建议,比如检查配置文件、网络连接或更换NTP服务器。 另外,用户要求生成相关问题,我需要考虑用户可能的后续疑问,比如如何验证同步是否成功,或者如何搭建自己的NTP服务器,这些都可以作为相关问题提出。 需要确保回答结构清晰,分步骤说明,并引用正确的参考资料。同时,注意使用中文,数学公式的格式要正确,但这个问题中可能用不到数学公式。最后,检查是否所有引用都被正确标注,比如引用[1]到[4]的位置是否合适,避免误导用户。</think>### Linux NTP时间同步配置及使用教程 #### 一、NTP服务选择 Linux系统主要有三种时间同步方案: 1. $systemd-timesyncd$(默认集成于Debian/Ubuntu) 2. $ntpd$(传统NTP服务) 3. $chrony$(推荐用于不稳定网络环境)[^3] #### 二、配置流程(以ntpd为例) 1. **安装NTP服务** ```bash # Debian/Ubuntu sudo apt install ntp # RHEL/CentOS sudo yum install ntp ``` 2. **修改配置文件** `/etc/ntp.conf` ```bash # 添加公共NTP服务器(示例) server ntp.aliyun.com iburst server cn.pool.ntp.org iburst server time.windows.com iburst # 允许本地网络访问(可选) restrict 192.168.1.0 mask 255.255.255.0 nomodify notrap ``` *注:iburst参数可加速初始同步*[^4] 3. **启动服务** ```bash sudo systemctl restart ntpd sudo systemctl enable ntpd ``` #### 三、验证同步状态 1. **查看同步状态** ```bash ntpq -p ``` 输出示例: ``` remote refid st t when poll reach delay offset jitter =============================================================== *ntp.aliyun.com 10.137.38.86 2 u 46 64 377 35.234 -0.052 0.872 ``` 2. **查看当前时间偏差** ```bash ntpdate -q 127.0.0.1 ``` #### 四、systemd-timesyncd配置(Debian/Ubuntu) 1. **编辑配置文件** ```bash sudo nano /etc/systemd/timesyncd.conf ``` 2. **添加NTP服务器** ```ini [Time] NTP=ntp.aliyun.com cn.pool.ntp.org ``` 3. **重启服务** ```bash sudo systemctl restart systemd-timesyncd ``` #### 五、防火墙配置 ```bash # 开放UDP 123端口 sudo ufw allow 123/udp # 或使用firewalld sudo firewall-cmd --permanent --add-service=ntp sudo firewall-cmd --reload ``` #### 六、手动同步命令 ```bash # 立即同步(慎用,可能造成时间跳变) sudo ntpdate -u ntp.aliyun.com # 查看时间状态 timedatectl ``` #### 七、常见问题处理 1. **服务启动失败**:检查`journalctl -u ntpd`日志 2. **同步偏差过大**:使用`ntpd -gq`强制同步 3. **持续偏移**:检查硬件时钟`hwclock --verbose`
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值