Hadoop集群搭建之搭建DNS,hadoop集群dns


Linux操作系统:Ubuntu 12


DNS环境规划

DNS服务器:suh01.hadoop.com(192.168.1.201)

DNS客户端:suh02.hadoop.com(192.168.1.202)、suh03.hadoop.com(192.168.1.203)


一、DNS搭建
1. bind 的安装
1.1 查看是否安装bind
#dpkg --list|grep 'bind' 

1.2 选择一台机器(192.168.1.201)作为DNS服务器,安装bind相关的三个软件包
#sudo apt-get install bind9 dnsutils bind9-doc  


PS:
在进行BIND安装的的时候,老是提示域名解析方面的问题,错误关键提示:Something wicked happened resolving 'security.ubuntu.com:http'
分析:apt-get install 在安装bind的相关软件时会去security.ubuntu.com:http取,但是这个域名无法识别。查看/etc/resolv.conf文件,
     发现它的内容是空的,所以问题很可能是没有对应的域名解析服务器导致的。
处理方案:在配置文件中/etc/resolv.conf,增加可知的DNS服务器地址,具体如下操作:
root@suh01:/var# vi /etc/resolv.conf
# Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
#     DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 202.101.224.69
nameserver 202.101.226.69
        
增加完成后,再次执行sudo apt-get install bind9 dnsutils bind9-doc 就能正常下载安装bind相关软件及服务了。
安装完成后,会在/etc目录下生成bind目录,bind相关的配置文件都在/etc/bind目录下。


2. bind 的配置
2.1 修改配置文件 /etc/bind/named.conf.local ,增加hadoop.com域,以及其反向域
#cd /etc/bind/
#vi named.conf.local
zone "hadoop.com"  {
type master;
file "/etc/bind/db.hadoop.com";
};
zone "1.168.192.in-addr.arpa"  {
type master;
file "/etc/bind/db.192.168.1";
};



2.2 配置正向解析文件
直接拷贝并修改db.local模板:
#cp -p db.local db.hadoop.com    //注意这里的文件命名要和2.1中zone里设置的file的值一致

修改 db.hadoop.com 文件的内容如下:
;
; BIND data file for local loopback interface
;
$TTL    604800
@       IN      SOA     suh01.hadoop.com. root.suh01.hadoop.com. (
                              2         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      suh01.hadoop.com.
suh01 IN A 192.168.1.201
suh02 IN A 192.168.1.202
suh03 IN A 192.168.1.203


2.3 配置反向解析文件
进入到/var/named目录,拷贝并修改一个模板:
#cp -p db.local db.192.168.1  //注意这里的文件命名要和2.2中zone里设置的file的值一致

修改 db.192.168.1 文件的内容如下:
;
; BIND data file for local loopback interface
;
$TTL    604800
@       IN      SOA     suh01.hadoop.com. root.suh01.hadoop.com. (
                              2         ; Serial
                         604800         ; Refresh
                          86400         ; Retry
                        2419200         ; Expire
                         604800 )       ; Negative Cache TTL
;
@       IN      NS      suh01.hadoop.com.
201 IN PTR suh01.hadoop.com.
202 IN PTR suh02.hadoop.com.
203 IN PTR suh03.hadoop.com.


2.4 在 suh01.hadoop.com 上重启DNS服务器
#/etc/init.d/bind9 restart


2.5 修改各个节点(suh01.hadoop.com、suh02.hadoop.com、suh03.hadoop.com),将其nameserver设置为我们配置的DNS服务器的IP地址
#vi /etc/resolv.conf(该文件会在重启后还原,可添加至/etc/resolvconf/resolvconf.d/tail,无则新建)
nameserver 192.168.1.201

PS:我们在第一步的时候为了正常下载bind相关的服务,增加了两个nameserver,这时可以直接将它注解掉,或者将我们
  的nameserver 192.168.1.201放置于这两个的前面。
nameserver 192.168.1.201   
nameserver 202.101.224.69
nameserver 202.101.226.69

3 测试DNS服务是否运行正常(在任意节点机器上执行都可)
#nslookup suh02.hadoop.com
命令执行后,自动解析出这域名对应的主机IP地址
Server:         192.168.1.201
Address:        192.168.1.201#53


Name:   suh03.hadoop.com
Address: 192.168.1.202

#nslookup 192.168.1.202
命令执行后,自动解析出这域名对应的主机IP地址
Server:         192.168.1.201
Address:        192.168.1.201#53


202.1.168.192.in-addr.arpa      name = suh02.hadoop.com.

版权声明:本文为博主原创文章,未经博主允许不得转载。

相关内容