Inside Service PodからKubernetesサービスに接続できませんか?

粘土

公式のインキュベーターリポジトリからの公式のkafkaチャートを使用して、1つのレプリカのzookeeper + kafkaクラスターを作成します。

helm install --name mykafka -f kafka.yaml incubator/kafka

これにより、2つのポッドが得られます。

kubectl get pods
NAME                  READY     STATUS
mykafka-kafka-0       1/1       Running
mykafka-zookeeper-0   1/1       Running

そして4つのサービス(デフォルトのkubernetesサービスに加えて)

kubectl get service
NAME                         TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)
kubernetes                   ClusterIP   10.96.0.1       <none>        443/TCP
mykafka-kafka                ClusterIP   10.108.143.59   <none>        9092/TCP
mykafka-kafka-headless       ClusterIP   None            <none>        9092/TCP
mykafka-zookeeper            ClusterIP   10.109.43.48    <none>        2181/TCP
mykafka-zookeeper-headless   ClusterIP   None            <none>        2888/TCP,3888/TCP

動物園の飼育係のポッドに砲撃した場合:

> kubectl exec -it mykafka-zookeeper-0 -- /bin/bash

このcurlツールを使用してTCP接続をテストします。サーバーがHTTPを使用していないため、通信エラーが発生することが予想されますが、curlが接続できず、ctrl-Cを実行する必要がある場合は、TCP接続が機能していません。

ローカルポッドには次の方法でアクセスできますcurl localhost:2181

root@mykafka-zookeeper-0:/# curl localhost:2181
curl: (52) Empty reply from server

私は他のポッドにアクセスできますcurl mykafka-kafka:9092

root@mykafka-zookeeper-0:/# curl mykafka-kafka:9092
curl: (56) Recv failure: Connection reset by peer

しかし、私はアクセスできませんmykafka-zookeeper:2181その名前はクラスターIPに解決されますが、TCP接続の試行はCtrl-Cを押すまでハングします。

root@mykafka-zookeeper-0:/# curl -v mykafka-zookeeper:2181
* Rebuilt URL to: mykafka-zookeeper:2181/
*   Trying 10.109.43.48...
^C

同様に、kafkaポッドにシェルすることができます。

> kubectl exec -it mykafka-kafka-0 -- /bin/bash

サービス名でZookeeperポッドに接続すると、正常に機能します。

root@mykafka-kafka-0:/# curl mykafka-zookeeper:2181
curl: (52) Empty reply from server

ローカルホストkafkaへの接続は正常に機能します。

root@mykafka-kafka-0:/# curl localhost:9092
curl: (56) Recv failure: Connection reset by peer

しかし、サービス名でKafkaポッドに接続することはできず、curlの試行をctrl-Cする必要があります。

curl -v mykafka-kafka:9092
* Rebuilt URL to: mykafka-kafka:9092/
* Hostname was NOT found in DNS cache
*   Trying 10.108.143.59...
^C

サービスの外部からのみKubernetesサービスに接続でき、サービス内からは接続できない理由を誰かが説明できますか?

グラントデビッドバックマン

あなたが経験していることは、あなたのkubeletがどのように実行されるように設定されているかを見ることで解決できると思います。と呼ばれるkubeletを起動するときに切り替えることができる設定があります--hairpin-modeデフォルトでは、この設定は文字列promiscuous設定されており、ポッドは独自のサービスに接続できませんが、ポッドを独自のサービスに接続できるように変更できhairpin-vethます。

このトピックにはいくつかの問題がありますが、これは最も参照されているようです:https//github.com/kubernetes/kubernetes/issues/45790

この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。

侵害の場合は、連絡してください[email protected]

編集
0

コメントを追加

0

関連記事

分類Dev

Angular translate inside service

分類Dev

ExoPlayer Inside ServiceをExoPlayerViewInsideアクティビティに接続するにはどうすればよいですか?

分類Dev

Start a systemd service inside chroot

分類Dev

using statement inside a WCF Service

分類Dev

Set-Service:他のサービスに依存しているため、サービスを停止できません

分類Dev

Dockerは別のサービスからredisに接続できません

分類Dev

Key Management Service(KMS)を使用せずにAWSサービスのデータを暗号化できますか?

分類Dev

Service Bus NET Core クライアント (NET Standard クライアント)。オンプレミス サービスバス インスタンスに接続できません

分類Dev

パブリッシャーのMyTestSourceリソースが見つからないか、EventLogサービスアカウント(NT SERVICE \ EventLog)にアクセスできません

分類Dev

win32serviceライブラリはpython364ビットと互換性がありますか?Windowsにサービスをインストールすることすらできません

分類Dev

C# gRPC inside kubernetes cluster cannot resolve DNS name to other service

分類Dev

ソースからkubernetesをビルドするときに「docker」デーモンに接続できません

分類Dev

Android:サービスインテントを開始できません{cmp = com.app.service / .NotificationService} U = 0:見つかりません

分類Dev

Run configuration commands inside a service with gitlab runner

分類Dev

Data change inside Service does not update the Scope

分類Dev

AWSIAMロールを使用してHashiCorpVaultに接続しようとしたときに、「Vaultの場所[kv / my-client-service]を解決できません:見つかりません」を修正するにはどうすればよいですか?

分類Dev

Eclipseからのデプロイメントjbpm-console.war:サービスサービスjboss.ejb.default-resource-adapter-name-serviceが見つかりません

分類Dev

Kubernetesクラスターのmongodbサービスに接続できません

分類Dev

Javajdbcからmssqlサーバーに接続できません

分類Dev

外部からLinuxサーバーに接続できません

分類Dev

MacOSからSSHサーバーに接続できません

分類Dev

RStudioからMicrosoftSQLサーバーに接続できません

分類Dev

ホーム接続からサーバーにSSH接続できません

分類Dev

Kubernetes EngineからCloudSQLに接続できません(「localhost」上のMySQLサーバーに接続できません)

分類Dev

Azure LogAnalyticsとAzureApp Serviceアクセスログ、接続できますか?

分類Dev

Service FabricClusterノードは証明書から秘密鍵を取得できません

分類Dev

AppengineからGoogleContainersのKubernetesサービスに接続します

分類Dev

AppengineからGoogleContainersのKubernetesサービスに接続します

分類Dev

ビーコンサービスに接続できません

Related 関連記事

  1. 1

    Angular translate inside service

  2. 2

    ExoPlayer Inside ServiceをExoPlayerViewInsideアクティビティに接続するにはどうすればよいですか?

  3. 3

    Start a systemd service inside chroot

  4. 4

    using statement inside a WCF Service

  5. 5

    Set-Service:他のサービスに依存しているため、サービスを停止できません

  6. 6

    Dockerは別のサービスからredisに接続できません

  7. 7

    Key Management Service(KMS)を使用せずにAWSサービスのデータを暗号化できますか?

  8. 8

    Service Bus NET Core クライアント (NET Standard クライアント)。オンプレミス サービスバス インスタンスに接続できません

  9. 9

    パブリッシャーのMyTestSourceリソースが見つからないか、EventLogサービスアカウント(NT SERVICE \ EventLog)にアクセスできません

  10. 10

    win32serviceライブラリはpython364ビットと互換性がありますか?Windowsにサービスをインストールすることすらできません

  11. 11

    C# gRPC inside kubernetes cluster cannot resolve DNS name to other service

  12. 12

    ソースからkubernetesをビルドするときに「docker」デーモンに接続できません

  13. 13

    Android:サービスインテントを開始できません{cmp = com.app.service / .NotificationService} U = 0:見つかりません

  14. 14

    Run configuration commands inside a service with gitlab runner

  15. 15

    Data change inside Service does not update the Scope

  16. 16

    AWSIAMロールを使用してHashiCorpVaultに接続しようとしたときに、「Vaultの場所[kv / my-client-service]を解決できません:見つかりません」を修正するにはどうすればよいですか?

  17. 17

    Eclipseからのデプロイメントjbpm-console.war:サービスサービスjboss.ejb.default-resource-adapter-name-serviceが見つかりません

  18. 18

    Kubernetesクラスターのmongodbサービスに接続できません

  19. 19

    Javajdbcからmssqlサーバーに接続できません

  20. 20

    外部からLinuxサーバーに接続できません

  21. 21

    MacOSからSSHサーバーに接続できません

  22. 22

    RStudioからMicrosoftSQLサーバーに接続できません

  23. 23

    ホーム接続からサーバーにSSH接続できません

  24. 24

    Kubernetes EngineからCloudSQLに接続できません(「localhost」上のMySQLサーバーに接続できません)

  25. 25

    Azure LogAnalyticsとAzureApp Serviceアクセスログ、接続できますか?

  26. 26

    Service FabricClusterノードは証明書から秘密鍵を取得できません

  27. 27

    AppengineからGoogleContainersのKubernetesサービスに接続します

  28. 28

    AppengineからGoogleContainersのKubernetesサービスに接続します

  29. 29

    ビーコンサービスに接続できません

ホットタグ

アーカイブ