Назад | Перейти на главную страницу

Подключение к базе данных RDS из экземпляра EC2 с использованием псевдонима bind9 CNAME

Обновить: это уже работает. Оказывается, мне не хватало действующего сервера пересылки DNS внутри named.conf.options файл.

Я пытаюсь запустить внутренний DNS на экземпляре EC2. Основная цель - иметь возможность определять псевдонимы CNAME для других сервисов AWS. Например: вместо использования конечной точки RDS, которая со временем может измениться, псевдоним mysql.company.int можно использовать вместо этого.

я использую bind9 и вот мои файлы конфигурации:

/etc/bind/named.conf.local

zone "company.int" {
    type master;
    file "/etc/bind/db.company.int";
};

/etc/bind/db.company.int

;
$TTL    3600
@       IN      SOA     company.int. company.localhost. (
                   20120617         ; Serial
                     604800         ; Refresh
                      86400         ; Retry
                    2419200         ; Expire
                     604800 )       ; Negative Cache TTL
;
@ IN  NS  company.int.
@ IN  A 127.0.0.1
@ IN  AAAA  ::1

; CNAME
mysql IN CNAME xxxx.eu-west-1.rds.amazonaws.com.

В dig Команда гарантирует, что мой псевдоним работает как исключение:

$ dig mysql.company.int
...
;; ANSWER SECTION:
mysql.company.int.  3600    IN  CNAME   xxxx.eu-west-1.rds.amazonaws.com.
xxxx.eu-west-1.rds.amazonaws.com. 60 IN CNAME ec2-yyy-yy-yy-yyy.eu-west-1.compute.amazonaws.com.
ec2-yyy-yy-yy-yyy.eu-west-1.compute.amazonaws.com. 589575 IN A zzz.zz.zz.zzz
...

Насколько я понимаю, обратная зона не нужна для простого псевдонима CNAME. Однако, когда я пытаюсь подключиться к MySQL, используя только что созданный псевдоним, операция дает мне тайм-аут.

$ mysql -uuser -ppassword -hmysql.company.int
ERROR 2003 (HY000): Can't connect to MySQL server on 'mysql.company.int' (110)

Любые идеи? Спасибо за преимущество!

Разрешен ли xxxx.eu-west-1.rds.amazonaws.com в IP-адрес конечной точки RDS на компьютере, на котором вы запускаете команду mysql? У нас аналогичная настройка, но в нашем случае «dig» перечисляет фактический IP-адрес конечной точки RDS в разделе ответов, то есть:

$ dig mysql.company.int
...
;; ANSWER SECTION:
mysql.company.int.  3600    IN  CNAME   xxxx.eu-west-1.rds.amazonaws.com.
xxxx.eu-west-1.rds.amazonaws.com. 60 IN A xxx.xxx.xxx.xxx
...