Istio Vault CA 集成
- 创建一个新的 Kubernetes 集群以运行本教程中的示例。
- 使用 Helm 安装 Istio 启用 SDS 和向节点代理发送证书签名请求来测试 Vault CA :
本教程中使用的测试 Vault 服务器的 IP 地址为 。配置 global.proxy.excludeIPRanges ="35.233.249.249/32"
将测试 Vault 服务器的 IP 地址列入白名单,以便 Envoy 不会拦截从 Node Agent 到 Vault 的流量。
这个 yaml 文件 包含 Istio 中启用 SDS(密钥发现服务)的配置。Vault CA 相关配置设置为环境变量:
env:
value: "https://35.233.249.249:8200"
- name: CA_PROVIDER
- name: "VAULT_ADDR"
value: "https://35.233.249.249:8200"
- name: "VAULT_AUTH_PATH"
value: "auth/kubernetes/login"
- name: "VAULT_ROLE"
value: "istio_ca/sign/istio-pki-role"
本节部署测试工作负载 httpbin
。当测试工作负载的 sidecar 通过 SDS 请求证书时,Node Agent 将向 Vault 发送证书签名请求。
- 生成示例
httpbin
后端的部署:
- 部署示例后端:
$ kubectl apply -f httpbin-injected.yaml
- 列出节点代理的 pod:
- 查看每个节点代理的日志。驻留在与测试工作负载相同的节点上的节点代理将包含与 Vault 相关的日志。
$ kubectl logs -n istio-system THE-POD-NAME-FROM-PREVIOUS-COMMAND
- 生成上述日志后,您已完成本文中的教程,该教程将整合外部 Vault CA 并将证书签名请求路由到 Vault。
完成本教程后,您可以删除在本教程开头创建的测试集群。
描述 Istio 的授权功能以及如何在各种用例中使用它。
如何在 Kubernetes 中启用 Citadel 的健康检查。
展示为 HTTP 服务设置基于角色的访问控制方法。
展示如何对 Istio service 进行健康检查。
展示如何为 TCP 服务设置基于角色的访问控制。
如果 Citadel 表现不正常该怎么办。