Для установки кластерного продукта мне пришлось настроить внутренний DNS-сервер. Я использую CentOS и bind9. Я нацелен на доменное имя «mydomain.local», а машина, на которой работает DNS-сервер, является «главной» (172.16.154.10). Другие машины в кластере - это «узел1» (.11) и «узел2 (.12).
Конфигурация DNS вроде в порядке, насколько я могу host master
, host node1
или host node2
с любой из машин и ответов вроде нормально.
Теперь сценарий установки запрашивает имена компьютеров (таким образом, что я не могу контролировать) и по какой-то причине предлагает например node1.mydomain.local.localdomain
. Обратите внимание на дополнительные .localdomain
часть, которая по умолчанию используется в таких файлах, как /etc/resolv.conf
и тому подобное.
Действительно, сначала такие команды, как hostname
или domainname
вернется localhost.localdomain
и localdomain
соответственно. Поэтому я изменил их (используя версию настроек тех например domainname mydomain.local
) но безрезультатно.
Есть идеи, откуда они могли взяться? Я должен добавить, что все эти машины - это виртуальные машины, работающие внутри VMware fusion.
resolv.conf:
# Generated by NetworkManager
domain mydomain.local
search mydomain.local
nameserver 172.16.154.10 # <-- my 'master' machine
nameserver 172.16.154.2 # <-- NAT address of my VMware Fusion host
named.conf:
//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
options {
// listen-on port 53 { 127.0.0.1; };
// listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
// allow-query { localhost; };
allow-query { any; };
recursion yes;
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
zone "mydomain.local" {
type master;
file "mydomain.local.fwd";
};
// 172.16.154.10
zone "154.16.172.in-addr.arpa" {
type master;
file "mydomain.local.rev";
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
mydomain.local.rev:
$ORIGIN 154.16.172.in-addr.arpa.
$TTL 3D
@ SOA master.mydomain.local. root.mydomain.local. (12 4h 1h 1w 1h)
@ IN NS master.mydomain.local.
10 IN PTR master.mydomain.local.
11 IN PTR node1.mydomain.local.
12 IN PTR node2.mydomain.local.
mydomain.local.fwd:
$ORIGIN mydomain.local.
$TTL 3D
@ SOA master.mydomain.local. root.mydomain.local. (12 4h 1h 1w 1h)
@ IN NS master.mydomain.local.
master.mydomain.local. IN A 172.16.154.10
node1.mydomain.local. IN A 172.16.154.11
node2.mydomain.local. IN A 172.16.154.12
Я понятия не имею, но вы можете найти себя с рекурсивным grep localdomain
в / etc. Например, с помощью ack-grep:
% sudo ack-grep localdomain /etc
[result here]
Вы узнаете, какой файл все еще содержит строку localdomain
.