为 centos 复制 netplan 名称服务器配置

Replicate netplan nameserver configuration for centos

首先警告:我是初级水平,使用 centos 的经验很少。

我是 运行 一个 puppet 环境,有几台不同的机器一些示例模块我是 运行 是 consul 和 puppet-dns 我有 ubuntu 机器使用 netplan 配置我的 DNS 客户端。

DNS 服务器机器

  include dns::server

  # Forwarders
  dns::server::options { '/etc/bind/named.conf.options':
    dnssec_enable     => false,
    dnssec_validation => no,
    forwarders        => [ 'IP1' ],
  }

  dns::zone { 'consul':
    zone_type       => forward,
    forward_policy  => only,
    allow_forwarder => [ '127.0.0.1 port 8600' ],
  }

DNS 客户端设置

  /^(Debian|Ubuntu)$/: { 
  class { 'netplan':
    config_file   => '/etc/netplan/50-cloud-init.yaml',
    ethernets     => {
      'ens3' => {
        'dhcp4'       => true,
        'nameservers' => {
          'search'    => ['node.consul'],
          'addresses' => [ "$dir_ip" ],
        }
      }
    },
    netplan_apply => true,
  }

为了在 Centos7 上复制这个,我遇到了 ifcfg 文件 (/etc/sysconfig/network-scripts/ifcfg-ens3) 但是,我不确定如何在其中一个文件中复制上面的结果。有没有人有这方面的经验?

经过一番阅读,我决定在 puppetmod 的帮助下编辑 /etc/resolv.confsaz-resolv_conf

 class { 'resolv_conf':
      nameservers => ["$dir_ip"],
      searchpath  => ['node.consul'],
  }

起初我对此有点怀疑,因为该文件具有来自 OpenStack 的自动化项目,但是,一切都按预期工作。