gpt4 book ai didi

kubernetes - 如何在 istio 中进行安全的服务到服务通信?

转载 作者:行者123 更新时间:2023-12-02 11:39:04 26 4
gpt4 key购买 nike

我正在尝试从 istio 中的一个 pod 调用在另一个 pod 中运行的 Web 服务。

我用python编写了两个微服务。你能告诉我如何从一个运行在一个 Pod 中的微服务到另一个运行在另一个 Pod 中的微服务进行 https 调用吗?

我可以从 istio 网站找到以下示例命令。

kubectl exec $(kubectl get pod -l app=sleep -o jsonpath={.items..metadata.name}) -c istio-proxy -- curl https://httpbin:8000/headers -o /dev/null -s -w '%{http_code}\n' --key /etc/certs/key.pem --cert /etc/certs/cert-chain.pem --cacert /etc/certs/root-cert.pem -k

但那是从 istio-proxy 容器进行 https 调用,但是我的微服务如何将请求转发到 istio-proxy,然后将请求转发到不同 pod 中的另一个 istio-proxy?

从这个链接 https://istio.io/docs/concepts/security/ ,我无法理解语句“Istio 将来自客户端的出站流量重新路由到客户端的本地 sidecar Envoy。”?我的 python 微服务中调用 https web 服务的代码更改是什么?如果你有的话,请给出完整的例子?

最佳答案

task来自 istio docs 展示了双向 TLS 如何与 HTTPS 服务配合使用。这包括:

  • 在没有 Istio sidecar 的情况下部署 HTTPS 服务
  • 在禁用双向 TLS 的情况下使用 Istio 部署 HTTPS 服务
  • 部署启用双向 TLS 的 HTTPS 服务。

  • 以上所有场景都提供了可以在一个微服务容器上运行的命令来访问另一个微服务的 https 端点。例如从 sleep 容器通过 https 访问 nginx
    kubectl exec $(kubectl get pod -l app=sleep -o jsonpath={.items..metadata.name}) -c sleep -- curl https://my-nginx -k

    istio 的好处是你不需要在你的 python 应用程序中做任何代码更改。 Istio 代理侧车将做必要的事情来启用安全功能,例如 mTLS。

    关于kubernetes - 如何在 istio 中进行安全的服务到服务通信?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59907689/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com