私はKubernetesクラスタの外で、DNSルックアップを介してホストに接続する必要がある特殊なアプリケーションを持つコンテナを持っています。 Dockerでコンテナをスタンドアロンで実行すると、問題なく動作します。クラスタ内から外部ホストにアクセスするにはどうすればよいですか?
しかし、私がKubernetesを使ってコンテナを走らせると、「ホストが見つかりません」というエラーが出ます。コンテナ内でbashを実行し、「ping myhost.mydomain.com 」を実行すると、myhost.mydomain.comが解決されません。 Kubernetesのページを読んで
、私が行うために必要なのは、これがこのサービスを追加で表示されます。
apiVersion: v1 kind: Service metadata: name: myhost spec: type: ExternalName externalName: myhost.mydomain.com
しかし、これは動作するようには思えません。コンテナはまだmyhostまたはmyhost.mydomain.comにpingできません。私は追加する必要がある何か他にありますか?任意の外部ホスト名を解決できるように "フォールバック" DNSを持つ方法はありますか?この困難でなければなりませんように...
おかげで、 ジョン
は、公に解決できるサブドメインmyhost.mydomain.comですか?ノーマリーkubednsはパブリックドメイン名を決して解決しないはずなので、これは内部DNSです。 –
あなたは何を意味するのか分かりません。クラスタノードのコマンドライン(つまり、コンテナ内ではない)から、DNS解決がうまく機能します。 –
はい、ノードdnsはそうかもしれません。公的に解決できないドメインに解決策を提供する内部DNSサーバを使用している。 'host myhost.mydomain.com 8.8.8.8'のようなものが正しいIPを返しますか? –