2017-02-03 9 views
0

私はKubernetesマスターとEC2インスタンス上で実行されている手下を持っているし、正常以下に例のアプリを展開することができましたが、外部ポート30013から利用できるようになりましたKubernetes公開されたサービスではないアクセス

kubectl run hello-world --image=gcr.io/google_containers/echoserver:1.4 --port=8080 

kubectl expose deployment hello-world --type=NodePort 

コマンド:

NAME   CLUSTER-IP  EXTERNAL-IP PORT(S)   AGE 
hello-world 10.43.95.16  <nodes>  8080:30013/TCP 1h 

私は今このKubernetes MinionノードのEC2インスタンスプライベートIPとそのポート番号を30013としてアクセスしようとしていますが、接続できません。

AWSのセキュリティグループを確認しましたが、このポートは開いており、EC2インスタンスに接続されています。私はアプリケーションへのアクセスを止める何も考えられません。

Kubernetes公開サービスのAWSネットワークに関する既知の問題はありますか?

答えて

0

これは動作するはずです(AWSの自分のクラスタでも動作します)。 eth0インターフェイスのIPアドレスとnop crb0などを使用していますか? EC2のインスタンスは1つのインターフェイスしか持たず、パブリックアドレスがマップされているため、EC2の内部からの違いはあまりありません。

また、ポート8080の10.43.95.16に連絡するか、DNS名を使用するだけです。 k8sアプリケーションから他のサービスに接続したい場合は、それを使用する必要があります(ノードクラッシュは通信に影響しません)

+0

あなたはAWSクラスタで正しく動作すると言いましたか?私はノードポールサービスを持っていて、そのポッドは私のawsのインスタンスの一つに似て何かをしようとしています。私は公開されたポートで私のインスタンスの公開IPでアクセスしようとしていますが、これはうまくいかないでしょうか? – Magic

関連する問題