minkube external-ip 始终处于挂起状态,同时无法访问 emissary-ingress 负载均衡器

问题描述 投票:0回答:2

我确信由于我对 kubernetes 和 minkube 知之甚少,我无法解决,我需要一些帮助。

我已经在 windows-docker 上设置了 minikub kubernetes 集群。 (最新版本)。我正在尝试设置 emissary-ingress API 网关,它根据 URL 前缀转发流量(例如 /hello/ 将流量发送到 hello kubernetes 服务)我已经设置了所有这些入口流量规则,但不幸的是,我坚持如何测试它。

我无法访问该 URL。这是我的配置。 我尝试按照以下方式理解。

kubectl get svc -A

minikube service list

minikube tunnel

minikube service emissary-ingress -n emissary --url

但我不明白为什么这不起作用。我确信与外部 IP 待定状态有关。但我不知道如何解决。

kubernetes kubernetes-ingress minikube ambassador
2个回答
0
投票

检查这个metalLb

Metal LB 正在裸机上创建负载均衡器,并且可以与 minikube 一起在本地使用。

使用 Metal LB,您可以像云提供商提供的选项一样创建外部 LB。

尝试应用此文件:

kubectl apply -f https://raw.githubusercontent.com/google/metallb/v0.7.3/manifests/metallb.yaml

检查 Pod 是否已启动并正在运行

kubectl get pods -n metallb-system

为本地系统配置configmap,以便metal lb可以管理IP。

apiVersion: v1
kind: ConfigMap
metadata:
  namespace: metallb-system
  name: config
data:
  config: |
    address-pools:
    - name: my-ip-space
      protocol: layer2
      addresses:
      - 127.0.0.240/28

您可以在这里阅读更多内容:https://medium.com/@JockDaRock/kubernetes-metal-lb-for-docker-for-mac-windows-in-10-minutes-23e22f54d1c8 baki kai vandho ave to kevu

或者你也可以尝试端口转发API网关的服务并检查是否工作。


0
投票

使用minikube隧道:

minikube tunnel

https://minikube.sigs.k8s.io/docs/handbook/accessing/#loadbalancer-access

LoadBalancer 服务是向互联网公开服务的标准方式。通过这种方法,每个服务都会获得自己的 IP 地址。

LoadBalancer 类型的服务可以通过 minikubetunnel 命令公开。

当您启动 minikube 隧道时,您将看到如何将外部 IP 添加到服务中。

© www.soinside.com 2019 - 2024. All rights reserved.