0

minikube を使用してサービス メッシュを実行しており、fortio を使用して minikube の外部で実行されている api にアクセスしようとしています。

kubectl exec "$FORTIO_POD" -c fortio -- /usr/bin/fortio load -c 1 -qps 0 -n 1 -loglevel debug http://localhost:3000

しかし、これは私にエラーを与えています:

dial tcp 127.0.0.1:3000: connect: connection refused

以下は、私が作成したサービス エントリと destinationRule オブジェクトです。

apiVersion: networking.istio.io/v1alpha3
kind: ServiceEntry
metadata:
  name: localhost
spec:
  hosts:
  - localhost
  location: MESH_EXTERNAL
  ports:
  - number: 3000
    name: http
    protocol: HTTP
  resolution: STATIC
  endpoints:
  - address: 127.0.0.1
---
apiVersion: networking.istio.io/v1alpha3
kind: DestinationRule
metadata:
  name: localhost
spec:
  host: localhost
  trafficPolicy:
    tls:
      mode: DISABLE
      sni: localhost.local
4

1 に答える 1

0

ここで試みているのは、Minikube 内からホスト システムでホストされている API にアクセスすることだと思います。istio に localhost サービス エントリを作成するだけでは、ホスト システムに接続することは期待できません。minikube ホスト アクセスには、使用する必要がありますhost.minikube.internal

このリンクを参照してください: https://minikube.sigs.k8s.io/docs/handbook/host-access/

于 2020-12-05T07:50:20.247 に答える