kubernetes - 禁止来自 Istio 以外的来源的流量
问题描述
我正在研究 Istio,我认为我缺少一些基本的东西。
我一直在关注文档,并在 AWS 中为一些虚拟服务提供了一个工作场所。我有一个网关配置为发送到虚拟服务,该服务通过与 K8s 服务对应的主机定义进行路由。这一切都很好。
但令我困惑的是,这将如何帮助限制内部集群流量。我研究 Istio 的部分原因是它的 mTLS 和外部授权功能,但在我看来,如果我无需通过 Istio 的虚拟服务 X 就可以使用服务 X,那么至少在内部,这是一个不太令人信服的解决方案.
例如,为了获得到 service 的路由amazing
,我们需要一个像这样的虚拟服务:
apiVersion: networking.istio.io/v1alpha3
kind: VirtualService
metadata:
name: amazing
namespace: amazing-app
spec:
hosts:
- "amazing.internal"
gateways:
- amazing
http:
- match:
- uri:
prefix: /
- uri:
prefix: /
route:
- destination:
port:
number: 80
host: amazing
这一切都很好,但是是什么阻止了集群中的任何东西直接访问主机amazing
(由 K8s 服务提供amazing
)?我知道这不是 Istio 的责任,但是我不确定它是如何完成的,只要需要公开服务以便虚拟服务路由到它。应该用 a 来完成NetworkPolicy
吗?
解决方案
推荐阅读
- sql - 在 ORACLE:ORA-00923:FROM 关键字未指定
- node.js - Apache Kafka 2.3 + Node.js 10.15 + 消费者 + 生产者
- javascript - 在 Next.js 自定义服务器中记录错误的 Express 中间件
- python - ITK 过滤器上的非零退出代码
- executable - 将自定义数据嵌入到不会被 ld.so 映射的 ELF 文件中
- angularjs - AngularJS查询字符串值不更新
- azure-devops - 在 Azure Boards 上,我可以创建一个“规则”以在将积压项目分配给迭代/冲刺时自动分配“已提交”状态吗?
- android - AndroidX 纯单元测试 - 无仪器
- javascript - 简短的解释请求
- react-native - 在模态演示中,导航栏未显示