[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 

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

相关推荐
旅僧3 分钟前
Ubantu docker环境配置(前置)
运维·docker·容器
正经教主2 小时前
【docker基础】第六课:Web应用与数据库容器部署
网络·docker·容器
Shacoray2 小时前
K8s 中 Ingress 的 HTTPS 证书 如何生成?
容器·https·kubernetes
开发者联盟league2 小时前
使用Jenkins整合Sonarqube/Gitlab/Harbor/Kubernetes的Demo工程
kubernetes·gitlab·jenkins
Patrick_Wilson2 小时前
Node.js SSR 内存治理:为什么 --max-old-space-size 不等于进程内存
kubernetes·node.js·v8
开发者联盟league2 小时前
使用k8s安装Jenkins
容器·kubernetes·jenkins
正经教主3 小时前
【docker基础】 第七课:Docker Compose 多容器实战
运维·docker·容器
正经教主3 小时前
【docker基础】Redis的docker部署
redis·docker·容器
DolphinScheduler社区3 小时前
Apache DolphinScheduler 3.4.2 正式发布!新增 Amazon EMR Serverless 插件,增强监控与补数据能力
大数据·云原生·serverless·apache·海豚调度·版本发版
成为你的宁宁3 小时前
【基于 Prometheus Operator 实现 K8s 环境下 Redis Cluster 集群监控部署】
redis·kubernetes·prometheus