현재 개인 및 공용 서비스가 모두 실행되는 Kubernetes 클러스터를 설정하고 있습니다. 공용 서비스는 인터넷 (및 FQDN)을 통해 액세스 할 수 있어야하지만 개인 서비스는 그렇지 않아야합니다 ( 단순 FQDN을 통해 개인 서비스에 액세스 할 수 있어야하는 클러스터 내에서 VPN을 실행하는 것입니다 ).
현재 nginx-ingress를 사용하고 있으며 공용 리소스의 호스트 이름을 설정하는 Ingress 리소스를 구성합니다. 그런 다음 external-dns는 해당 DNS 레코드 (Google CloudDNS에서)를 추가합니다. 이것은 이미 작동합니다.
지금 당면한 문제 : 동일한 방식으로 DNS 레코드를 추가 할 수있는 방법 (즉, Ingress
정의에 호스트를 지정하고 일부 ingress-class 사용 private
) 에 대해 잘 모르겠지만 이러한 DNS 레코드는 내부에서만 액세스 할 수 있습니다. 클러스터.
Corefile
CoreDNS가 사용하는 레코드에 이러한 레코드를 추가 할 수 있다는 인상 을 받았습니다. 그러나 이것이 어떻게 자동화 될 수 있는지 알아 내지 못했습니다.
도움을 주셔서 감사합니다!
나는 스스로 문제를 해결했다 ... Ingress
자원 을 감시 하고 그에 따라 CoreDNS rewrite
가 Corefile
읽는 규칙을 추가 하는 작은 Go 애플리케이션을 작성했다 ... 매력처럼 작동한다 :)
추신 : 도구를 사용하고 싶은 사람이 있으면 알려주세요. 수요가 있으면 오픈 소스로 만들 수있어서 기쁩니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다