问题标签 [ambassador]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
342 浏览

kubernetes - Kubernetes – Curl 适用于服务 IP 但不适用于服务名称

我是 kubernetes 的新手,所以如果我跳过了一些明显的步骤或不清楚我的问题,我深表歉意。

我已经定义了一个服务game-app-service和一个部署game-app-deployment。这两个都运行良好。

我正在尝试将来自 API Gateway 服务(大使)的请求路由到该服务。当尝试从 Ambassador pod 卷曲游戏应用服务端点时,我发现我总是收到空回复,并且它连接到一个不是服务 IP 的 IP。但是,如果我game-app-service用服务的 IP 地址和它正在侦听的端口交换:

curl -v -X POST 10.102.142.157:8084/api/test

一切正常,我得到了来自服务器的预期响应。

我注意到curl -v -X POST game-app-service/api/test解析到与 92.242.140.21 端口 80 相同的 IP curl -v -X POST random/api/test。这让我相信我的 DNS 解析有问题。但是,我已验证我的 core-dns pod 已启动并正在运行,所以我不确定为什么会这样。

下面,我列出了我的服务和部署的配置以供参考:

有谁知道为什么我不能使用我的服务名称代替 IP 地址?

更新:

Runningwget -O- game-service-app给了我 200 的 HTTP 状态,但响应为:

指示 DNS 查找失败。

0 投票
1 回答
159 浏览

azure - 粘性不适用于 Kubernetes 中大使的请求标头

问题:我想在名为“ORDER_ID”的请求标头上实现粘性。因此,如果特定的订单请求应该由 Kubernetes 中的特定 pod 提供服务。但在我的情况下,它不起作用,因为请求并没有坚持到特定的 pod,而是被分发到不同的 pod。

这就是我安装大使的方式:

  1. helm repo 添加数据线https://www.getambassador.io
  2. kubectl 创建命名空间大使
  3. 掌舵安装大使--命名空间大使数据线/大使

以下是 yaml 文件:

部署.yml

2 服务.yml

3 映射.yml

测试 -

有什么我遗漏或做错了什么吗?

0 投票
2 回答
312 浏览

kubectl - 在这种情况下如何设置 EXTERNAL-IP?

在使用 minikube 启动本地 Kubernates 后,我运行了一系列 kubectl 命令:

查看大使边缘堆栈(入口和 API 网关)

外部 IP 应该是 localhost,但不是。这些命令不指定外部 IP,至少不直接指定。在这种情况下是否缺少某种设置?

这个问题可能要问大使实验室(Datawire)的人。

0 投票
0 回答
243 浏览

kubernetes - 大使速率限制无法正常工作

我正在尝试按照教程对大使进行速率限制。我正在使用 minikube 和本地 docker 映像。我已经测试了所有 api 在部署到 Kubernetes 后都正确响应,只有限速功能不起作用。

这是我的 deploy.yaml

这是我的 rate-limit.yaml

当我执行命令时——curl -vLk 10.107.60.125/delete/

它正在返回

我得到的响应是 200 但是我期待 429 错误代码。

0 投票
1 回答
703 浏览

kubernetes - 是否可以在同一个路由映射中使用 Ambassador prefix_regex 和 regex_rewrite?

我正在尝试使用大使prefix_regexregex_rewrite.
我想要这两个路由前缀:

将被映射到: /my/route/<something>
这是我试图使用的:

按预期使用regex_rewrite常规prefix作品 按预期
使用prefix_regex常规rewrite作品,
但我从特使那里收到 404。

有任何想法吗?

我正在使用大使 1.7.0 版本

0 投票
1 回答
287 浏览

kubernetes - K8s 大使没有 FilterPolicy 的处理程序

我已经在我的本地和应用插件过滤器中配置了大使,以下是过滤器配置

已将插件 .so 文件捆绑为大使 docker 映像的一部分,并验证该插件在 pod 的 /etc/ambassador-plugins 路径中可用。在启动大使时,从 pod 中获得了以下日志

0 投票
1 回答
134 浏览

kubernetes - 大使 API 网关功能

开源Ambassador API网关有什么特点,企业版Ambassador API网关有什么特点?

0 投票
1 回答
820 浏览

kubernetes - Ambassador API 网关中的通配符子域映射

我在我的 GKE 中使用 Ambassador API 网关,如下所示:

但是,我想映射所有子域 (*.mycompany.com) 并路由到我的服务

如何映射通配符子域?

0 投票
1 回答
849 浏览

envoyproxy - 使用 TLS 通过大使调用 grpc 端点时出现“服务器关闭了流而不发送预告片”错误

在调用大使中公开的 GRPC 端点时,我在 GRPC 客户端收到错误“服务器关闭了流而不发送预告片”。

所以我的堆栈是:客户端 GRPC 代码 -> 大使 -> grpc-service-envoy -> grpc-service

我可以看到请求一直到 grpc-service,它们似乎也到达了 grpc-service-envoy。

请注意,http 转码调用工作正常。只是 grpc 调用引起了问题。

知道这里可能有什么问题吗?

特使配置文件:

特使日志:

0 投票
1 回答
339 浏览

docker - 在没有 Kubernetes 的本地开发环境中运行 Ambassador

我正在尝试在我的本地开发环境中运行 Ambassador API 网关,因此我将模拟我最终将在生产环境中得到的结果 - 不同之处在于,在生产环境中,我的解决方案将在 Kubernetes 中运行。为此,我将 Ambassador 安装到 Docker Desktop 中并添加所需的配置以将请求路由到我的微服务。不幸的是,它对我不起作用,我收到以下错误:

upstream connect error or disconnect/reset before headers. reset reason: connection failure

我认为这是由于映射文件中的问题,如下所示:

所以我基本上想要做的是重写所有请求到http://{ambassador_url}/ins端口上的 IIS Express(通过 Visual Studio)本地运行的服务44332

我错过了什么?