问题标签 [istio]

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 回答
1012 浏览

kubernetes - Istio - 从服务一调用服务二时连接超时(示例)

我正在按照教程评估 Istio 作为我的 K8s 集群的服务网格,但由于某种原因,我无法制作使用几个服务正常工作的简单示例:

https://istio.io/docs/tasks/integrating-services-into-istio.html

如果我尝试从服务一调用服务二,我会收到此错误:

但是,如果我尝试从集群中的另一个服务连接到 service-2,即使在不同的命名空间中,它也可以工作:

为什么我得到这种意外行为的任何原因或解释?

谢谢。

0 投票
2 回答
5160 浏览

kubernetes - 什么是微服务上下文中的边车?

我目前正在查看 Istio 和 Kubernetes 的谈话,并提到了服务管理以及 sidecar 的使用。我不确定那是什么。

0 投票
1 回答
737 浏览

security - 使用 TLS 保护 Kubernetes 中从入口到服务的连接

我正在使用在入口规则中配置的 TLS 连接来保护我的 Kubernetes 集群,这实际上终止了负载均衡器上的 SSL 连接。到目前为止,一切都很好。

出现了一个问题,即保护从负载均衡器到 Kubernetes 集群中运行的每个服务的连接是否有意义。我对 Kubernetes 工作原理的理解是,服务应该能够动态地上升和下降,而不能保证私有 IP 保持不变,因此尝试使用 TLS 连接来保护服务是没有意义的。此外,每个服务都不能直接暴露在公共互联网上(我的配置是配置单个入口规则,而 Istio 的路由规则将负责路由到不同的服务),网络中提供了安全性层。

我的推理在概念上有什么问题吗?此外,如果我想改进集群的安全设置,是否应该考虑其他机制?Istio Auth 不适合我的用例,因为我根本没有调用其他服务的服务——我的所有服务都不会相互交互。

0 投票
1 回答
437 浏览

kubernetes - Istio bookinfo 示例部署 连接已超时

我正在尝试在 Google 容器引擎上设置 istio,已成功安装 istio,但未能加载预订示例。

有什么我以错误的方式配置的吗?请帮帮我!提前致谢!

这是我尝试过的:

kubectl 获取 svc

获取入口 IP 并导出环境变量然后 curl

0 投票
1 回答
1936 浏览

http - 从 Envoy 后面的容器与 Redis 服务器通信

我已经在 k8s 上部署了 envoy 容器作为 Istio 部署的一部分。每个 Envoy 代理容器都作为“sidecar”安装在 k8s 的 pod 中的应用容器旁边。

我能够从应用程序内部发起 HTTP 流量,但是当尝试联系 Redis 服务器(具有另一个特使代理的另一个容器)时,我无法连接并接收HTTP/1.1 400 Bad Request来自特使的消息。

在检查特使的日志时,只要此连接通过特使,我就会看到以下消息:HTTP/1.1" 0 - 0 0 0 "_"."_"."_"."_""

据我了解,Redis 命令是使用纯 TCP 传输而不使用 HTTP 发送的。Envoy 是否可能只希望看到 HTTP 流量并拒绝仅 TCP 流量?假设我的理解是正确的,有没有办法使用 Istio 改变这种行为并接受和处理通用 TCP 流量?

以下是我相关的部署yaml文件:

谢谢

0 投票
4 回答
1030 浏览

mixer - 使用 Istio 阻止从 ANY 到服务的传入连接

试图找到使用 Istio 阻止从 Internet 到 k8s 服务的任何连接的最佳方法。

Istio 策略中的最佳选择是什么?

Mixer - 拒绝或列出 Pilot - 路由规则 - 例如注入中止故障 (400) 或目标策略 - 例如断路(最大连接 0???)

尝试了以上所有方法,但没有任何效果,其中很少有配置不是很直观(并且没有充分记录)。

感谢是否会附上一个工作示例

以下是注入 HTTP 故障策略的示例。

首先,Ist​​io 要求一个“类型”:

错误:Istio 没有配置类型,类型为destination-policy、ingress-rule、route-rule

手动添加类型后:

它对方法大喊大叫:

I0914 17:44:32.417839 1003 request.go:991] 响应正文:405:方法不允许错误:服务器不允许在请求的资源上使用此方法

谢谢

0 投票
2 回答
1985 浏览

kubernetes - 将 IP 列入白名单以使用 Kubernetes 入口 Istio 访问部署

我正在尝试将 IP 列入白名单以访问我的 Kubernetes 集群内的部署。

我在网上找了一些关于这个的文档,但我只找到了

入口以授予对特定 IP 范围的访问权限。但是,我仍然无法隔离部署。

这是入口配置 YAML 文件:

我可以从我的白名单 IP 和手机访问部署(配置中未列入白名单的不同 IP)

有没有人使用 ingress 和 Istio 解决过同样的问题?

任何帮助、提示、文档或替代配置将不胜感激。

0 投票
1 回答
603 浏览

kubernetes - 从网格外部的服务访问启用了 Istio 的 K8S pod

假设启用 Istio 的服务公开了一个名为A的端口,因此 Istio 在从网格内部访问它时会执行 L7 负载平衡。8080http

我想知道是否有办法从没有 Istio sidecar8080的 pod/服务访问此端口。B在这种情况下,流量将是: B -> A Envoy -> A B -> A 这样,我可以访问A未命名的端口http(即,只有 L4 负载平衡到位)

我的特殊用例是我有 Prometheus(不在网格中运行),Prometheus Operator 直接抓取在网格中运行的服务(不涉及 Istio Mixer;这些服务公开了它们自己的业务逻辑指标)。它仅适用于我,并且仅当给定服务未命名其 port 时http

0 投票
1 回答
529 浏览

istio - istio 对入口后端路径的处理不正确?

我尝试使用以下配置通过 istio 入口路由我的微服务:

当我测试这个配置时,我得到了来自集群的 404 响应。似乎 istio 威胁到我作为正则表达式的路径

我发现的唯一方法是摆脱“。” 在服务 API 版本中并使用如下内容:

结果是:

结果是:

uri 类型从“regex”更改为“prefix”和“exact”

我假设那个点“。” 被处理为正则表达式部分而不是常规符号。试图用“\”转义它,但没有结果。

那是一个错误吗?因为“/internal/v1.0/service”不是正则表达式

0 投票
1 回答
715 浏览

azure - 使用自动 Sidecar 注入在 Kubernetes 中安装 Istio:istio-inializer.yaml 验证失败

我正在尝试将 Istio 与自动边车注入安装到 Kubernetes 中。我的环境由三个主节点和两个节点组成,并使用 Azure 容器服务市场产品在 Azure 上构建。

按照位于此处的文档,到目前为止,我已启用RBACDynamicAdmissionControl. 我通过/etc/kubernetes/istio-inializer.yaml在 Kubernetes Master 上进行修改来实现这一点,方法是添加以下红色标出的内容,然后使用 Unix 命令重新启动 Kubernetes Master reboot,.

文档中的下一步是使用kubectl. 我假设文档打算让用户cd在此步骤之前克隆 Istio 存储库并将其放入其中,但未提及。

之后发生以下错误:

如果我尝试kubectl apply使用提到的标志执行validate=false,则会生成此错误:

我不知道从这里去哪里。该问题似乎与该admissionregistration.k8s.io/v1alpha1块中的块有关,yaml但我不确定该块中具体有什么不正确的。

安装的 Kubernetes 版本:

我怀疑这是版本不匹配。作为后续问题,是否可以使用 ACS 将 kubernetes >= 1.7.4 的版本部署到 Azure?

我对使用 Kubernetes 还很陌生,所以如果有人能提供帮助,我将不胜感激。感谢您的时间。