【问题标题】:User specific routing in Istio / KuberentesIstio / Kubernetes 中的用户特定路由
【发布时间】:2018-11-03 04:15:54
【问题描述】:

我想知道 Istio 是否是支持特定路由情况的好工具,如果不是(或者即使是),还有哪些其他方法可用。

  • 我有两个微服务,X 和 Y,每个都有一些副本。
  • X 向 Y 发送请求。
  • X 以特定用户的身份发送请求,例如“bob”。
  • Y 的一些副本子集(不是全部!)可以处理用户“bob”的请求。
  • 可以处理“bob”请求的 Y 子集不是静态的,而是随时间变化,具体取决于存储在临时副本中的某些状态。

所以当 X 发送请求时,它必须确定它正在发送请求的用户(“bob”),该特定请求可以发送到 Y 的哪个子集?

在 Istio 中,有一些通过查看 HTTP 标头与用户关联的路由规则示例。对于服务器端 Y,我是否只需在 Y 中有代码调用 k8s API 来针对副本 Pod 添加和删除标签?

例如,

Service-Y.Pod-1.Labels = {
  "user-bob": "true",
  "user-jane": "true",
  ...
}

不清楚标签如何处理这个问题,或者这种路由是否应该被提升到应用层,而不是试图在一个很大程度上透明的服务网格层中进行编码。

【问题讨论】:

    标签: routing kubernetes grpc istio


    【解决方案1】:

    你有来自 K8s 的open API。您可以编写一些代码,为 pod 添加标签,然后将此流量路由到您的 pod。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-10-09
      • 2020-11-16
      • 2018-10-23
      • 1970-01-01
      • 2020-09-01
      相关资源
      最近更新 更多