DNS顾名思义是域名解析服务器,keepalived是知名的开源套件用于实现服务器的高可用,这里这个小实验是实现负载均衡+高可用的另外一个方案,即DNS用于负载均衡,keepalived实现高可用。
实验平台:VMware下三台linux(CentOS 5.5)虚拟机服务器
IP规划:
DNS server:192.168.1.193.
Web1 server+keepalived(两个套件安装在同一台主机上):192.168.1.195
Web2 server+keepalived(两个套件安装在同一台主机上):192.168.1.196
第一:对于DNS server的设置
[root@localhost ~]# yum -y install bind bind-chroot ypbind bind-utils caching-nameserver
第二:在DNS服务器上的设置
[root@localhost ~]# cd /var/named/chroot/etc/ //进入主设置档案所在的目录
[root@localhost etc]# cp -p named.caching-nameserver.conf named.conf //制作主配置文件
以下这个步骤的含义是:每次服务启动时默认的会去/etc目录下去搜索配置文件,做这个软连接也是这个原因。
[root@localhost etc]# ln -s /var/named/chroot/etc/named.conf /etc/named.conf
以下这个步骤是对rndc的设置(借助rndc对DNS服务器的管理,可以在不关闭DNS服务器的情况下,更新主服务器做过的修改)
[root@localhost ~]# rndc-confgen > /etc/rndc.conf //生成rndc的主配置文档
对这个档案不做任何的修改,只需把DNS需要的部分复制过去即可
[root@localhost ~]# vi /etc/rndc.conf
[root@localhost ~]# vi /etc/named.conf //修改主配置文件,主要修改以下列出的部分即可
listen-on port 53 { any; };
forwarders{202.102.240.65;};
allow-query { any; };
allow-query-cache { any; };
match-clients { any; };
match-destinations { any; };
###################### rndc-confgen ###################
key "rndckey" {
algorithm hmac-md5;
secret "JkZ/MxIb8I58yefvWMkpIw==";
};
controls {
inet 127.0.0.1 port 953
allow { 127.0.0.1; } keys { "rndckey"; };
};
############################END ##################
以上这个步骤就是可以使用#rdnc reload重载配置文件
[root@localhost ~]# vi /etc/named.rfc1912.zones //添加自己的域
zone "linuxidc.com" IN {
type master;
file "named.linuxidc.com";
allow-update { none; };
allow-transfer { 192.168.1.195;}; //这就是针对辅服务器做的设置
also-notify { 192.168.1.195; };
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "named.192.168.1";
allow-update { none; };
allow-transfer { 192.168.1.195;}; //这里是针对DNS的master/slave的设置,可以略
also-notify { 192.168.1.195; };
};
以下这个步骤是建立自己域名的配置文件
[root@localhost named]# cp -p localhost.zone named.linuxidc.com
[root@localhost named]# cp -p named.local named.192.168.1
[root@localhost named]# vi named.linuxidc.com //设置正解
$TTL 86400
@ IN SOA dns.linuxidc.com. root.linuxidc.com. (
46 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum
IN NS dns.linuxidc.com.
@ IN MX 10 mail.linuxidc.com.
www IN A 192.168.1.200
www IN A 192.168.1.203
[root@localhost named]# vi named.192.168.1 //设置反解
$TTL 86400
@ IN SOA dns.linuxidc.com. root.linuxidc.com. (
1997022700 ; Serial
28800 ; Refresh
14400 ; Retry
3600000 ; Expire
86400 ) ; Minimum
IN NS dns.linuxidc.com.
200 IN PTR
203 IN PTR
[root@localhost ~]# vi /etc/resolv.conf
nameserver 192.168.1.193