api - 如何以安全的方式在Kubernetes中的服务之间进行通信

标签 api kubernetes microservices

我在Kubernetes中运行了一些node.js微服务,现在我需要找到一种在它们之间进行通信的方法。我正在考虑公开只能从其他Pod内部访问的端点。我一直在搜索数小时,但没有找到足够安全的解决方案。有没有办法使它像这样工作?谢谢!

最佳答案

如果您希望只能从选定的Pod访问服务,则可以使用Network Policies。它们允许定义哪些Pod可以与网络级别的Pod对话。例如,您可以通过入口公开您的服务,并且仅允许入口 Controller 与您的应用程序对话。这样,您可以确保您的应用程序只能通过入口(带有身份验证)才能使用,而不能通过其他方式使用。

仅某些网络插件支持网络策略:

  • 印花棉布
  • 打开vSwitch
  • Cilium
  • 编织
  • 罗马娜
  • 关于api - 如何以安全的方式在Kubernetes中的服务之间进行通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55915228/

    相关文章:

    c# - 如何返回带有我自己的错误的完整 BadRequest 响应正文

    azure - 将 Azure 容器日志记录流式传输到 Web 应用程序

    Jenkins Kubernetes 插件 - sshagent 到 git 克隆 terraform 模块

    c# - 从 JSON 字符串中获取特定值

    api - Magento API 返回哪个时区的日期

    kubernetes - Kubectl警戒线和排水命令期间涉及哪些api?

    Kubernetes - 一个部署可以有多个 ReplicaSets 吗?

    java - 是否可以使一种方法(处理程序)从 Spring Cloud Stream 中的多个入站 channel 接收消息?

    docker - 如何在 kubernetes 应用程序中提供静态内容

    java - 如何强制我的方法接受来自外部软件的对象?