容器服务kubernetes federation v2实践二:基于FederatedSecrets管理多集群TLS证书

简介: 概要 随着网络安全越来越重要,越来越多的网站都使用HTTPS/TLS来加强访问安全。在federation v2联邦集群中,可以使用FederatedSecrets来管理多个k8s集群的证书,下面简单介绍在阿里云容器服务下使用FederatedSecrets管理TLS证书。

概要

随着网络安全越来越重要,越来越多的网站都使用HTTPS/TLS来加强访问安全。在federation v2联邦集群中,可以使用FederatedSecrets来管理多个k8s集群的证书,下面简单介绍在阿里云容器服务下使用FederatedSecrets管理TLS证书。

验证环境准备

环境参考容器服务kubernetes federation v2实践一:基于External-DNS的多集群Ingress DNS实践 ,即准备好两个k8s集群组成的联邦集群,部署好External-DNS,并部署好相应的验证服务,通过域名可以访问nginx服务。

TLS证书准备

云盾证书服务 申请个人免费版本,注意生成证书域名和测试使用域名需要一致。完成之后下载至本地。

部署FederatedSecret

yaml如下,其中tls.crt和tls.key分别为上一步生成的证书和私钥的base64转码值。

apiVersion: types.federation.k8s.io/v1alpha1
kind: FederatedSecret
metadata:
  name: ingress-secret
  namespace: test-namespace
spec:
  template:
    data:
      tls.crt: {{tls.crt}}
      tls.key: {{tls.key}}
    type: kubernetes.io/tls
  placement:
    clusterNames:
    - cluster1
    - cluster2

验证创建结果

kubectl get secret ingress-secret  -n test-namespace --context cluster1
NAME             TYPE                DATA   AGE
ingress-secret   kubernetes.io/tls   2      39s
kubectl get secret ingress-secret  -n test-namespace --context cluster2
NAME             TYPE                DATA   AGE
ingress-secret   kubernetes.io/tls   2      42s

更新配置FederatedIngress:

apiVersion: types.federation.k8s.io/v1alpha1
kind: FederatedIngress
metadata:
  name: test-ingress
  namespace: test-namespace
  annotations:
    kubernetes.io/ingress.class: "nginx"
spec:
  template:
    spec:
       rules:
       - host: ingress-example.example.club
         http:
           paths:
           - backend:
               serviceName: test-service
               servicePort: 80
       tls:
       - secretName: ingress-secret
  placement:
    clusterNames:
    - cluster2
    - cluster1

【ingress-example.example.club】为测试域名,请更换为自己测试域名。

访问验证

image

总结

本文通过一个简单的例子介绍了如何在阿里云上使用FederatedSecret进行配置TLS证书,通过FederatedSecret,无需每个k8s集群进行配置,简化了多集群TLS证书管理成本。

目录
相关文章
|
12月前
|
存储 Kubernetes 网络安全
关于阿里云 Kubernetes 容器服务(ACK)添加镜像仓库的快速说明
本文介绍了在中国大陆地区因网络限制无法正常拉取 Docker 镜像的解决方案。作者所在的阿里云 Kubernetes 集群使用的是较旧版本的 containerd(1.2x),且无法直接通过 SSH 修改节点配置,因此采用了一种无需更改 Kubernetes 配置文件的方法。通过为 `docker.io` 添加 containerd 的镜像源,并使用脚本自动修改 containerd 配置文件中的路径错误(将错误的 `cert.d` 改为 `certs.d`),最终实现了通过多个镜像站点拉取镜像。作者还提供了一个可重复运行的脚本,用于动态配置镜像源。虽然该方案能缓解镜像拉取问题,
1206 3
|
Cloud Native 中间件 调度
云原生信息提取系统:容器化流程与CI/CD集成实践
本文介绍如何通过工程化手段解决数据提取任务中的稳定性与部署难题。结合 Scrapy、Docker、代理中间件与 CI/CD 工具,构建可自动运行、持续迭代的云原生信息提取系统,实现结构化数据采集与标准化交付。
1495 1
云原生信息提取系统:容器化流程与CI/CD集成实践
|
运维 Kubernetes 持续交付
ACK One GitOps:让全球化游戏服务持续交付更简单
ACK One GitOps 致力于提供开箱即用的多集群 GitOps 持续交付能力,简化游戏等服务的多集群/多地域统一部署,让您更加专注于业务开发。
|
Ubuntu 关系型数据库 MySQL
容器技术实践:在Ubuntu上使用Docker安装MySQL的步骤。
通过以上的操作,你已经步入了Docker和MySQL的世界,享受了容器技术给你带来的便利。这个旅程中你可能会遇到各种挑战,但是只要你沿着我们划定的路线行进,你就一定可以达到目的地。这就是Ubuntu、Docker和MySQL的灵魂所在,它们为你开辟了一条通往新探索的道路,带你亲身感受到了技术的力量。欢迎在Ubuntu的广阔大海中探索,用Docker技术引领你的航行,随时准备感受新技术带来的震撼和乐趣。
609 16
|
存储 监控 对象存储
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
388 1
|
存储 监控 对象存储
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
516 0
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
|
监控 Kubernetes Cloud Native
基于阿里云容器服务Kubernetes版(ACK)的微服务架构设计与实践
本文介绍了如何基于阿里云容器服务Kubernetes版(ACK)设计和实现微服务架构。首先概述了微服务架构的优势与挑战,如模块化、可扩展性及技术多样性。接着详细描述了ACK的核心功能,包括集群管理、应用管理、网络与安全、监控与日志等。在设计基于ACK的微服务架构时,需考虑服务拆分、通信、发现与负载均衡、配置管理、监控与日志以及CI/CD等方面。通过一个电商应用案例,展示了用户服务、商品服务、订单服务和支付服务的具体部署步骤。最后总结了ACK为微服务架构提供的强大支持,帮助应对各种挑战,构建高效可靠的云原生应用。
|
存储 运维 Kubernetes
容器数据保护:基于容器服务 Kubernetes 版(ACK)备份中心实现K8s存储卷一键备份与恢复
阿里云ACK备份中心提供一站式容器化业务灾备及迁移方案,减少数据丢失风险,确保业务稳定运行。
|
监控 Cloud Native Java
基于阿里云容器服务(ACK)的微服务架构设计与实践
本文介绍如何利用阿里云容器服务Kubernetes版(ACK)构建高可用、可扩展的微服务架构。通过电商平台案例,展示基于Java(Spring Boot)、Docker、Nacos等技术的开发、容器化、部署流程,涵盖服务注册、API网关、监控日志及性能优化实践,帮助企业实现云原生转型。
|
存储 Kubernetes API
在K8S集群中,如何正确选择工作节点资源大小? 2
在K8S集群中,如何正确选择工作节点资源大小?

相关产品

  • 容器计算服务
  • 容器服务Kubernetes版
  • 推荐镜像

    更多