时间同步配置
本文介绍如何对数据库节点配置时间同步。
为了保证Vastbase的正常使用,需要同步各节点的时间,若时间不同步有可能会阻碍数据库后续使用,例如出现日志中时间节点不准确等问题。
检查时间配置
使用如下命令可查看当前时间是否符合规范:
ll /etc/localtime
date
hwclock --show
设置时间
规范时间配置,使单机或高可用集群中数据库主备节点保持时间同步,可选择以下方法:
方法一:将数据库各节点的时区设置为相同时区
步骤1 以root用户登录操作系统。
步骤2 将/usr/share/zoneinfo/目录下的时区文件拷贝为/etc/localtime文件,从而设置时区和时间。
cp /usr/share/zoneinfo/$主时区/$次时区 /etc/localtime
方法二:手工设定时间
步骤1 以root用户登录操作系统。
步骤2 执行date -s
命令设置时区和时间。
以设置当前时间为2020-08-03 14:15:00为例。
date -s "2020-08-03 14:15:00"
步骤3 将系统时间写入硬件时间。
hwclock –w
方法三:使用时间服务器同步时间
对于高可用集群生产环境,应规范时间配置,使数据库主备节点保持时间同步。
选择主备节点所在局域网中一个合适的节点作为时间服务器(若条件有限,也可使用数据库主节点),使用ntpd或chronyd服务配置时间同步。操作步骤以使用ntpd服务为例。
步骤1 安装ntpd服务。
yum install -y ntpd
CentOS或RedHat等系统环境下,chronyd服务与ntpd服务冲突,因此chronyd、ntpd两种时间同步方式只能二选一。
当使用ntpd服务时,需要禁用chronyd服务。
systemctl disable chronyd && systemctl stop chronyd
步骤2 编辑配置文件。
如果已经存在ntp服务器,假如为192.168.100.100,可以配置所有节点指向该ntp服务器时间。编辑高可用集群中每个节点的/etc/ntp.conf文件:
本操作目的是让NTP Server和其自身保持同步。
若在/etc/ntp.conf文件中定义的server都不可用时,将使用local时间作为ntp服务提供给ntp客户端。
server 192.168.100.100 prefer driftfile /var/lib/ntp/drift broadcastdelay 0.008
如果没有外部的时间服务器,可以选择集群中的某个节点作为时间服务器。选择一个节点为ntp服务器(以主节点192.168.100.1为例)在选择的节点上配置/etc/ntp.conf文件:
server 127.127.1.0 fudge 127.127.1.0 stratum 10 driftfile /var/lib/ntp/drift broadcastdelay 0.008
编辑高可用集群中其他节点的/etc/ntp.conf文件:
server 192.168.100.1 prefer driftfile /var/lib/ntp/drift broadcastdelay 0.008