首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在内部K8s TLS中应该如何配置Tyk和Kubernetes?

在内部K8s TLS中应该如何配置Tyk和Kubernetes?
EN

Stack Overflow用户
提问于 2018-10-31 03:51:55
回答 1查看 273关注 0票数 0

问题是:

我正在基于TykTechnologies/tyk-kubernetes存储库配置Tyk网关和仪表板:

现在,我希望使用TLS证书保护网关和仪表板K8s服务。

我购买了一个证书来保护外部URL (https://api.example.comhttps://dashboard.example.com),如下所示,但证书对于内部k8s服务端点无效,因此仪表板和网关无法再进行内部通信:

代码语言:javascript
复制
$ kubectl logs deployment/tyk-dashboard
...
time="Jan 01 00:00:00" level=error msg="Request failed with error Get https://tyk-dashboard.tyk.svc.cluster.local:443/register/node: x509: certificate is valid for *.example.com, not tyk-dashboard.tyk.svc.cluster.local; retrying in 5s"

到目前为止,我所做的是:

已修改tyk.conftyk_analytics.conf以更改侦听端口并引用证书:

代码语言:javascript
复制
{
"listen_port": 443,
"notifications_listen_port": 5000,
"tyk_api_config": {
    "Host": "https://tyk-gateway.tyk.svc.cluster.local",
    "Port": "443",
...
"http_server_options": {
    "use_ssl": true,
    "server_name": "api.example.com",
    "min_version": 771,
    "certificates": [
        {
        "domain_name": "*.example.com",
        "cert_file": "/etc/ssl/gateway-tls/tls.crt",
        "key_file": "/etc/ssl/gateway-tls/tls.key"
        }
    ]
},
...

我通过K8s TLS密钥将证书挂载到tyk pods中(仪表板也是如此):

代码语言:javascript
复制
kubectl create secret tls tyk-gateway --cert=example.com.crt --key=example.com.key

和相应的K8s部署更新:

代码语言:javascript
复制
...
ports:
- containerPort: 443
- containerPort: 5000
volumeMounts:
...
    - name: tyk-gateway-tls
    readOnly: true
    mountPath: "/etc/ssl/gateway-tls"
volumes:
...
- name: tyk-gateway-tls
    secret:
    secretName: tyk-gateway
EN

回答 1

Stack Overflow用户

发布于 2018-10-31 03:51:55

我正在考虑的一种可能的解决方案是使用DNS为服务的内部certificates.k8s.io名称(tyk-gateway.tyk.svc.cluster.local)生成有效的证书,该证书由K8s集群的CA签名,如Kubernetes documentation here中所述。

然后,可以将此证书添加到http_server_options配置并绑定到服务主机名。

但是,该示例似乎表明我需要将服务和pod in作为SAN包含在CSR中。我认为当pod使用不同的IP地址重新调度时,它将不再有效。

通过运行以下命令生成私钥和证书签名请求(或CSR):

"size":256 }} EOF

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/53071921

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档