Können verschiedene AWS-Konten verschiedene Unterdomänen verwalten?

21

Ich habe zwei AWS-Konten. Das Hauptkonto mitexample.com Hauptkonto, das als gehostete Zone fungiert, verfügt dann über eine Reihe von Datensatzgruppen (z. B. api.example.com und kibana.example.com).

Ein zweites Konto wird verwaltet testing.example.com als gehostete Zone mit denselben Datensatzgruppen verwaltet (dh api.testing.example.com und kibana.testing.example.com).

Wie sage ich dem Hauptkonto, dass es Anfragen für weiterleiten soll? .testing.example.com unten an das untergeordnete Konto weitergeleitet werden sollen? Ich möchte das Hauptkonto nicht ändern, da ich in "Live" und "Test" dieselben Cloud Formation-Vorlagen verwenden möchte.

Ich habe die beiden wie oben eingerichtet und es funktioniert nicht (api.testing.example.com löst nicht auf). Ich habe auch versucht, den Datensatz testing.example.com ns im Hauptkonto auf den im untergeordneten Konto (1) angegebenen Wert festzulegen. Leider habe ich das noch nicht getan und die Google-Suche gibt nichts zurück.

1) Ich habe das durcheinander gebracht, und das ist die Antwort. Siehe unten.

mlk
quelle
1
Würde der Daunenwähler freundlich erklären, warum? Wenn die Frage zum Thema passt, lösche ich sie. Aber Abstimmungen und Rennen sagen mir nichts.
mlk
1
Sie könnten dies versuchen und die Antwort in etwa zehn Minuten selbst herausfinden. Ich vermute, die Antwort lautet "Ja", da Sie Subdomains zu Route 53 hinzufügen können. Ich vermute, dass Sie aus diesem Grund abgelehnt wurden.
Tim
1
Was versuchen? Ich habe das oben Genannte getan und es funktioniert nicht.
mlk
Hat der Master Account example.comoder *.example.comals Zone? Ich glaube nicht , Sie können haben *.example.comals Zonennamen, können Sie? Können Sie uns die tatsächlichen FQDNs im Spiel geben?
Ceejayoz
Stellen Sie dig ns testing.example.comsicher, dass es sich bei dem Nameserversatz um den der Zone des untergeordneten Kontos handelt. Dann dig @one.of.those.nameservers api.testing.example.comund bewerten Sie die Ausgabe.
Ceejayoz

Antworten:

28

Wie kann ich dem Hauptkonto mitteilen, dass Anforderungen .testing.example.coman das untergeordnete Konto weitergeleitet werden sollen?

Die Anforderungen werden weitergeleitet und nicht weitergeleitet. Sie können jedoch das gewünschte Ergebnis erzielen, indem Sie die Unterdomäne an einen anderen Satz von Route 53-Servern delegieren als diejenigen, die die übergeordnete Zone hosten.

Sehen Sie sich die neue gehostete Zone an, die Sie für testing.example.com erstellt haben. Dies kann dasselbe AWS-Konto sein, ein anderes AWS-Konto ... ein beliebiges AWS-Konto. Es gibt hier nichts, was mit "Konto" zusammenhängt. Dies verwendet die Standard-DNS-Konfiguration. Das gesamte DNS ist eine Hierarchie. Der globale Stamm kann Ihnen mitteilen, wo Sie sich befinden com, und die comServer können Ihnen mitteilen, wo Sie sich befinden example.com, und es ist nicht wesentlich anders example.com, Ihnen mitzuteilen, wo Sie sich befindentesting.example.com anstatt Ihnen eine direkte Antwort zu geben.

Beachten Sie die 4 Nameserver, die Route 53 der gehosteten Zone testing.example.com zugewiesen hat. Stellen Sie sicher, dass sich alle von denen unterscheiden, die der gehosteten Zone von example.com zugewiesen sind. (Dass einer von ihnen derselbe ist, sollte unmöglich sein, aber überprüfen Sie dies.)

Nun, zurück in der Zone example.com, erstellen Sie einen neuen Ressource - Eintrag, mit dem Hostnamen testing, Satztyp verwendet NS, und geben Sie den 4 - Nameserver , dass 53 Strecke zugewiesentesting.example.com , in dem unten stehenden Feld.

Wenn nun eine Anfrage nach testing.example.com und etwas darunter auf einem der Route 53-Server eintrifft, die example.com verarbeiten, wird die Antwort nicht gesendet die Antwort von testing.example.com - die Antwort wird dem Anforderer bereitgestellt Die 4 NS-Datensätze, die mit testing.example.com verknüpft sind, und eine Antwort, die "Ich weiß es nicht, aber versuche, einen dieser Typen zu fragen".

So wird es gemacht.

Michael - sqlbot
quelle
Vielen Dank. Ich habe das getan (fügte hinzutesting.example.com Datensatz im Hauptkonto mit dem Wert von NS im Kinderkonto ), aber es funktioniert nicht (dh nslookup kibana.example.comfunktioniert wie erwartet, aber nslookup kibana.testing.example.com Server: 8.8.8.8 Address: 8.8.8.8#53 ** server can't find kibana.testing.example.com: NXDOMAIN)
mlk
@mlk Was wird dig ns testing.example.comausgegeben?
Ceejayoz
Ich nehme es zurück, ich habe das Kopieren und Einfügen von NSs durcheinander gebracht. Datensatz gelöscht und neu erstellt, jetzt funktioniert die NS-Suche.
mlk
2
Mann, das ist die sauberste Antwort auf das Thema, das ich bisher gefunden habe. Ich danke dir sehr!
demisx
0

Ich denke, Sie müssen einen testing.example.comDatensatz im Hauptkonto (Parent) unter der example.comDomain erstellen . Und wenn Sie ELB verwenden, kopieren Sie den ELB-Endpunkt für ein testinguntergeordnetes Konto oder erhalten eine öffentliche IP- testingAdresse für eine Domain in Ihrem untergeordneten Konto und aktualisieren Sie diese in Route 53 des übergeordneten Kontos. Ich denke, mit ELB-Endpunkten ist es einfacher, Adressen aufzulösen, als mit dedizierten Adressen Elastische IP. Sie müssten auch alle Unterdomänen des testingübergeordneten Kontos erstellen . Ich würde vorschlagen, ELB-Endpunkte im untergeordneten Konto für alle Unterdomänen der testingSite zu verwenden. Stellen Sie sicher, dass alle ELB-Endpunkte ein Schema wie internet-facingin der aws-Konsole haben müssen.

Shailesh Sutar
quelle
3
ELB hat damit nichts zu tun, und durch die Nameserver-Delegierung über NS-Einträge können die Subdomains von testingim untergeordneten Konto erstellt werden, wenn sie ordnungsgemäß eingerichtet sind.
Ceejayoz