天天看点

《Puppet权威指南》——3.3 DNS安装与配置

本节书摘来自华章计算机《puppet权威指南》一书中的第3章,第3.3节,作者:王冬生著, 更多章节内容可以访问云栖社区“华章计算机”公众号查看。

dns(domain name system,域名解析系统)主要用来表示ip与域名之间的映射关系,是学习puppet过程中比较重要的一个辅助工具,因为在agent每次连接master时都会使用到域名。如果通过puppet管理的agent较少,可以通过写hosts的形式来管理域名,但是在管理的agent比较多的情况下通过hosts的形式来管理域名的成本就相对较高。这时可以通过开源软件来搭建一套dns域名解析系统,这样通过puppet管理比较多的agent就方便快捷多了。目前互联网比较常用的搭建dns的软件是bind。其功能强大,但是配置复杂,所以在这里推荐一款轻量级的dns软件——dnsmasq。

作为用于配置dns和dhcp的工具,dnsmasq小巧且方便,适用于小型网络,它提供了dns功能和可选择的dhcp功能。它服务那些只在本地适用的域名,这些域名是不会在全球的dns服务器中出现的。更多信息请参考官方网站www.thekelleys.org.uk。

dnsmasq安装方便快捷,配置文件简单易懂,所以结合dnsmasq与 puppet来管理企业内网是最佳的选择。

1 . dnsmasq安装

首先到dnsmasq的官方网站下载最新版本的dnsmasq。下载后通过源码编译方式安装dnsmasq,安装完成后需要将dnsmasq安装目录配置文件dnsmasq.conf.example复制到/etc/下。以下为详细的安装步骤,即下载、编译和安装,安装后可以将dnsmasq主配置文件复制到/etc目录下。

2 . dnsmasq的配置

编辑 /etc/dnsmasq.conf的主配置文件的内容如下,根据如下配置信息,我们只要简单修改一下就可以使用dnsmasq了。

3 . 编辑域名解析文件

根据/etc/dnsmasq.conf配置文件中的addn-hosts参数,将域名解析配置文件改为系统默认定义的/etc/hosts文件,我们可以将ip和对应的虚拟域名追加到/etc/hosts文件中,来实现dnsmasp域名与ip映射关系,具体如下。

4 . 启动dnsmasq

启动dnsmasq也是非常方便的,只需执行以下命令:

启动后可通过netstat系统命令查看dnsmasq是否启动成功,如果53端口已成功启动,则说明dnsmasq已经正常工作。

到目前为止已经成功启动了dnsmasq,现在可以将dnsmasq服务器ip写入agent的resolv.conf文件中,实现域名与ip的映射关系,dnsmasq将作为一个内网域名解析系统而发挥作用。

继续阅读