[CKS] 使用ingress公开https服务

目前的所有题目为2024年10月后更新的最新题库,考试的k8s版本为1.31.1

BackGround

您必须使用HTTPS路由来公开web应用程序。

Task

在prod02 namespace创建一个名为web的Ingress资源,并按照如下方式配置它:

  • 将主机web.k8sng.local和所有路径的流量路由到现有的web Service。
  • 使用现有的web-cert Secret来启用TLS终止。
  • 将HTTP请求重定向到HTTPS

Notes: 你可以使用以下命令测试Ingress配置:

shell 复制代码
curl -Lk https://web.k8sng.local 

Practice

本题可以参考k8s官网关于service的ingress配置

https://kubernetes.io/docs/concepts/services-networking/ingress/

创建ingress yaml文件

创建名为ingress-http.yml的文件,文件内容如下

yaml 复制代码
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: web
  namespace: prod02
  annotations:
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
spec:
  tls:  
  - hosts:
    - web.k8sng.local
    secretName: web-cert
  rules:    
  - host: web.k8sng.local
    http: 
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: web
            port:
              number: 80

需要注意的是annotations: nginx.ingress.kubernetes.io/ssl-redirect: "true"这个是将http的请求重定向到https上。

创建Ingress

shell 复制代码
kubectl create -f  ingress-https.yml

验证

shell 复制代码
curl -Lk https://web.k8sng.local 

如果结果如下,则表示这个题对了

相关推荐
❀͜͡傀儡师18 分钟前
docker 安装数据集成平台 Apache SeaTunnel 服务
docker·容器
B1nna3 小时前
Docker学习
学习·docker·容器
缘友一世3 小时前
网安系列【15】之Docker未授权访问漏洞
docker·容器
armcsdn14 小时前
基于Docker Compose部署Traccar容器与主机MySQL的完整指南
mysql·docker·容器
铅笔侠_小龙虾16 小时前
Docker 实战 -- Mysql
mysql·docker·容器
阿里云云原生16 小时前
Higress MCP 服务管理,助力构建私有 MCP 市场
云原生
IvanCodes16 小时前
三、Docker常用命令
docker·容器
zzywxc78717 小时前
云原生 Serverless 架构下的智能弹性伸缩与成本优化实践
云原生·架构·serverless