边缘云NTP和DNS服务

我最初部署 私有云架构 时为整个私有网络部署了两个重要的基础服务:

这两个关键服务也是同时提供给 边缘云计算架构 共用的。

随着 私有云计算构建边缘云计算构建 拆分(部署到隔离的两个网络), 边缘云计算架构 缺乏 DNS服务ntp服务 支持,会产生异常。所以,独立在 alpine linux 环境下重新部署:

在集群中部署 ntp服务DNS服务 是非常不起眼但是又非常重要的步骤:

部署NTP服务: chrony ntp服务

chrony服务器的/etc/chrony/chrony.conf配置
# chrony server config

pool pool.ntp.org iburst
initstepslew 10 pool.ntp.org

allow 192.168.7.0/24

driftfile /var/lib/chrony/chrony.drift
rtcsync
cmdport 0
  • 重启 x-k3s-m-1chronyd 服务,则该NTP服务器会和internet上时钟服务器进行时钟同步,并为局域网内部服务器提供NTP服务:

alpine linux系统中重启chronyd服务
sudo service chronyd restart
  • 除了 x-k3s-m-1 外,其他 边缘云计算架构 主机都是NTP客户端,则都以 x-k3s-m-1 为NTP服务器,配置 /etc/chrony/chrony.conf 如下:

chrony服务端的/etc/chrony/chrony.conf配置
# chrony client config

pool 192.168.7.11 iburst
initstepslew 10 192.168.7.11

driftfile /var/lib/chrony/chrony.drift
rtcsync
cmdport 0
  • 同样NTP客户端也需要重启chronyd来以 x-k3s-m-1 为基准矫正时间:

alpine linux系统中重启chronyd服务
sudo service chronyd restart

完成上述部署之后,请仔细核对所有节点,确保时钟一致。则我们就可以开始下一步部署

部署DNS服务: DNS服务

边缘云计算架构 作为边缘云,要求系统精简轻量级,所以部署DNS服务也是选择轻量级的 DNSmasq

alpine linux安装DNSmasq
apk update
apk upgrade
apk add dnsmasq
alpine linux配置DNSmasq /etc/dnsmasq.conf
# 本地默认域名
local=/edge.huatai.me/
# 转发上游域名解析服务器,请求DNS解析
server=8.8.8.8
# 监听DNS请求的网卡接口
listen-address=192.168.6.200,127.0.0.1
# 扩展主机域名,也就是请求 zcloud 默认扩展成 zcloud.edge.huatai.me
expand-hosts
# 服务器提供解析的域名
domain=edge.huatai.me
# DNS解析缓存
cache-size=1000
  • 启动dnsmasq并且将dnsmasq服务配置成启动时启动:

alpine linux启动dnsmasq摒弃配置DNSmasq系统启动时启动
 sudo service dnsmasq start
 sudo rc-update add dnsmasq

完成上述部署后,在所有节点都通过 host 命令接茬DNS解析,确保能够解析集群中所有服务器的IP地址。