【发布时间】:2021-05-02 02:14:33
【问题描述】:
我在 centos-7.8(3.10.0-1127.el7.x86_64) 上的多节点(12GB RAM 和 4 CPU)上安装了新的 k8s 1.18.6,docker 版本(19.03.6)和 runc 版本 1.0 .0-rc10.
我使用了 calico(3.11.1) 网络插件,直到这里一切正常 美好的。当我尝试在其上安装 istio 1.5.7 时,我遇到了问题 如下
问题:
- 检测到您的集群不支持第三方 JWT 验证。退回到不太安全的第一方 JWT。看 https://istio.io/docs/ops/best-practices/security/#configure-third-party-service-account-tokens 了解详情。
- 错误安装程序等待资源失败:资源没有 10m0s 后准备就绪:等待条件超时 部署/istio-system/istiod
kubectl 获取 pods -n istio-system NAME READY STATUS RESTARTS AGE grafana-5f6f8cbf75-lngb7 1/1 运行 0 41s istio-egressgateway-cbd86567c-5x6rk 0/1 ContainerCreating 0 44s istio-ingressgateway-799d5b8875-4ztq8 0/1 ContainerCreating 0 42s istio-tracing-9dd6c4f7c-vv64n 1/1 运行 0 41s istiod-b7d8f955b-mtqgb 0/1 CrashLoopBackOff 5 10m kiali-869c6894c5-pw7sm 1/1 运行 0 41s prometheus-7d697b95b-2rjvn 0/2 ContainerCreating 0 41s
istiod-pod-logs: info 未指定证书,跳过 DNS 证书控制器 信息 CRD 控制器监视命名空间“” 信息入口控制器监视命名空间“” 警告 Config Store &{0xc00020c6c0 cluster.local 0xc00026b1e0 0xc000795e00 0xc00079eea0 []} 无法跟踪总体分布 info 添加 Kubernetes 注册表适配器 info 服务控制器监视服务、端点、节点和 Pod 的命名空间“”,刷新 1m0s info JWT 策略是第一方-jwt info 使用自签名证书作为 CA 证书 info pkica 获取密钥失败(错误:Get https://10.96.0.1:443/api/v1/namespaces/istio-system/secrets/istio-ca-secret: dial tcp 10.96.0.1:443: i/o timeout),将创建一个 错误:创建发现服务失败:enableCA:创建自签名 Citadel 失败:由于秘密写入错误,创建 CA 失败 错误 pkica 无法向 CA 写入密钥(错误:发布 https://10.96.0.1:443/api/v1/namespaces/istio-system/secrets: dial tcp 10.96.0.1:443: i/o timeout)。中止。 错误创建发现服务失败:enableCA:创建自签名 Citadel 失败:由于秘密写入错误,创建 CA 失败
【问题讨论】:
-
从我在日志中看到的您提供的集群不支持第三方 JWT 身份验证。您可以在安装 istio 时尝试使用
--set values.global.jwtPolicy=first-party-jwt吗?在 istio documentation 中有相关部分。另外值得注意的是,已经有 istio 版本 1.8.2,由于改进,请考虑安装新版本。 -
嗨,Jakub,感谢您回复我的帖子。我按照您的建议尝试使用该标志,但我仍然因同样的问题而失败。就像这个标志在添加到命令后没有影响我使用它如下 = "istioctl manifest apply --set profile=demo --set values.global.jwtPolicy=first-party-jwt"
-
这很奇怪,你有可能在你的设置中添加 4GB 的内存吗?如果我没记错的话, istio 至少需要 16GB 的内存,也许正因为如此,它才会崩溃。
标签: docker kubernetes centos7 istio