自動スケーリングノードを使用してAWSでKubernetes v1.4クラスタを実行しています。 > 1.1.1.1 KubernetesローカルDNSに特定のAレコードを登録します
- node1.mongo.example.com: は、私はまた、SSL接続のみ(FQDN共通名)とパブリックDNSエントリを持つMongoのレプリカセットのクラスタを持っています。 example.com - > 1.1.1.2
- node3.mongo.example.com - > 1.1.1.3
KubernetesノードはMongoのクラスタへのアクセスを許可するセキュリティグループの一部であるが、唯一のそれらを介してプライベートIP。
パブリックFQDNが照会されたときに、Kubernetes DNSにプライベートIPを持つAレコードを作成する方法はありますか?
私が試した最初のものは、起動時(REF。Is it a way to add arbitrary record to kube-dns?)に& ConfigMap組み合わせ更新するために、/ etc/hostsのスクリプトだったが、他のKubernetesサービスもホストが異なる時間にファイルを更新することとして、それは問題です。
私もサービス& Enpointsの設定を試してみました:
---
apiVersion: v1
kind: Service
metadata:
name: node1.mongo.example.com
spec:
ports:
- protocol: TCP
port: 27017
targetPort: 27017
---
apiVersion: v1
kind: Endpoints
metadata:
name: node1.mongo.example.com
subsets:
- addresses:
- ip: 192.168.0.1
ports:
- port: 27017
しかし、サービス名はFQDNすることはできませんので、これは失敗した...
mongoインスタンスAWSパブリックDNS(パブリックホスト名)を使用したことはありますか? ec2インスタンスから呼び出されるとプライベートIPにリダイレクトされます:http://docs.aws.amazon.com/AmazonVPC/latest/UserGuide/vpc-ip-addressing.html#vpc-public-ip-addresses –