问题标签 [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.
ibm-cloud - Istio 可以替代的核心 Kubernetes 微服务组件有哪些?
我们计划集成一个在 Kubernetes 中运行的微服务平台,其架构将类似于以下参考架构。
https://www.ibm.com/devops/method/content/architecture/microservices/1_0
在上述 Kubernetes 微服务架构上,哪些核心组件可以被 Istio 替代?
我知道它可以帮助请求路由、流量管理、策略和控制。
如果我需要迁移类似项目之一,Istio 中有哪些可用的组件可以在 Kubernetes 中替换,反之亦然?
google-cloud-platform - GKE 上的 Istio 安装失败,出现“clusterroles.rbac.authorization.k8s.io “istio-pilot”被禁止:尝试授予额外权限”
尝试在 GKE(Google Container Engine)上安装istio 0.1.6 。
运行 follow 以检查集群是否启用了 RBAC(基于角色的访问控制):
它显示“beta”版本,所以我运行:
集群角色绑定创建没有帮助:
知道如何解决这个问题吗?
更多细节:
node.js - 无法从运行在 Istio 中的 Node 容器访问 Mongo
我正在尝试在 Kubernetes 中运行一个有状态的 Mongo,它可以在 Istio 之外与这些配置一起使用。
但是当我在 Istio 中运行节点应用程序时,它失去了连接到 mongo 的能力。是我遗漏了什么,还是我还不能在 Istio 中使用有状态集?
下面有状态的 mongo 配置。
我收到的错误是
apache-kafka - 启用 K8s istio 的 pod 无法访问常规服务
我正在尝试在 AWS 上的 K8s 1.6 集群中使用 Istio。
我有一个以老式方式运行的 Kafka pod/服务,有一个没有 IP 的“kafka-zk-broker-kafka.dev”服务,所以 kafka-zk-broker-kafka.dev 服务(我在 dev 命名空间中) 解析为我的 3 个 Kafka pod 的内部名称。这很好用。
我使用 Istio sidecart 部署了一个 kafka 生产者应用程序,因为它还公开了一个 gRPC 端口以供内部使用。部署顺利,但我的应用程序无法连接到“kafka-broker”服务。DNS解析没问题,但我无法使用kafka客户端或telnet访问服务端口(TCP:9092)。
我的理解是,当部署 Istio (envoy) sidecart 时,POD 外的所有内容都通过 Envoy 代理......所以 envoy 代理不知道如何访问常规服务?
我错过了什么吗?有没有办法将 Istio/Envoy 与常规 k8s 服务混合使用?
google-cloud-platform - Istio 限制对谷歌云资源的访问
我有一个运行谷歌容器引擎(Kubernetes)的服务。它访问谷歌云存储并且工作正常。
在同一个 Kubernetes 集群上,我按照https://istio.io/v-0.1/docs/tasks/installing-istio.html安装了 Istio 0.1
我通过 kube-inject 部署我的服务
kubectl create -f <(istioctl kube-inject -f myservice.yaml)
但现在我的服务无法再访问 Google Cloud Storage。我收到以下错误消息:
java.lang.IllegalArgumentException: A project ID is required for this service but could not be determined from the builder or the environment. Please set a project ID using the builder.
对我来说,kube-inject 和 sidecar 似乎做了一些事情,所以我的服务无法访问有关我正在运行的谷歌云项目的信息。据我所知,sidecar 是唯一的区别。
在没有 kube-inject 的情况下部署服务仍然有效。
什么会导致这种影响?
kubernetes - 创建“install/kubernetes/istio-rbac-beta.yaml”时出错
我试图在我的环境中部署 Istio 并遇到以下错误。网上所有的解决方案都是关于集群角色绑定的,我尝试过这样做,但还是失败了。对我的问题有任何意见吗?
kubectl api 版本 | grep rbac
sudo kubectl apply -f install/kubernetes/istio-rbac-beta.yaml
istio - 如何使用 istio 实现高性能
我已经在 kubernets 上安装了 istio(托管在 aws 上),并通过 istio 入口公开了一个服务。通过每分钟 < 2000 个请求,我可以实现的目标非常少。我将该服务公开为标准 ELB,我能够达到每秒超过 600,000 个请求。是否有任何指南/步骤来调整 istio 以获得高性能?谢谢乔吉
nginx - 支持动态路由到 Kubernetes 服务的反向代理:端口名和 WebSockets
我想对支持 WebSocket 的 Kubernetes 服务执行基于路径的动态路由。
例如,这条路径:
应该使用路径foo将流量路由到命名端口myport(默认命名空间)上的服务myservice。
我使用以下 ConfiMap 路由器条目(使用 io.l5d.k8s 命名器)通过 Linkerd接近实现了这一点:
除了我需要在 Linkerd 中不可用的 WebSocket 支持之外,它可以工作。
我尝试使用正则表达式来定位NGINX并重写规则。这看起来像这样:
除了 NGINX 不会路由到 NGINX 启动后创建的服务之外,这很有效。我不确定这是否与 nginx 中的 DNS 缓存问题或对SRV DNS 记录的支持有关。这种情况应该在NGINX Plus中工作,但我必须只依赖开源软件。
反向代理/服务网格支持动态路由到 K8s service:port 以及 WebSockets 的任何想法?
编辑 这可以用Istio完成吗?似乎必须在Istio 路由配置中指定一个硬编码的目的地。我可以在源(请求)上指定一个正则表达式,但不能使用正则表达式捕获组来指定目标。
kubernetes - 我们可以在 Istio 中传递上下文吗?
假设一个来自 LB 的 HTTP 请求被转发到服务 A。现在服务 A 调用服务 B,B 调用 C 等等。
当服务相互通信时,是否可以自动嵌入实际的请求参数、数据等(可从控制平面配置)?