最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

配置Ingress的SSL/TLS證書全過程

 更新時間:2025年10月14日 09:50:59   作者:火星MARK  
在Kubernetes中配置Ingress的SSL/TLS證書涉及兩個主要步驟:首先是創(chuàng)建包含證書的Secret,然后是配置Ingress資源以使用該Secret,這要求已部署IngressController如NGINX,并擁有有效的SSL/TLS證書,可以通過Cert-Manager自動管理證書的申請和續(xù)期

在 Kubernetes 中為 Ingress 配置 SSL/TLS 證書,需要完成「準(zhǔn)備證書 Secret」和「配置 Ingress 資源」兩個核心步驟,以下是詳細(xì)操作指南:

一、前提條件

已部署 Ingress Controller(如 NGINX、Traefik 等),確保其正常運(yùn)行。

擁有有效的 SSL/TLS 證書文件:

  • 公鑰證書(通常命名為 tls.crt
  • 私鑰文件(通常命名為 tls.key)證書可通過 Let's Encrypt 免費(fèi)獲取,或使用自簽名證書(僅用于測試)。

二、步驟 1:創(chuàng)建存儲證書的 Secret

Kubernetes 中需將證書存儲為 kubernetes.io/tls 類型的 Secret,供 Ingress 引用。

1. 準(zhǔn)備證書文件

假設(shè)證書文件路徑為:

  • 公鑰:./tls.crt
  • 私鑰:./tls.key

2. 創(chuàng)建 Secret

執(zhí)行以下命令,在目標(biāo)命名空間(與 Ingress 相同)創(chuàng)建 Secret:

kubectl create secret tls my-tls-secret \
  --cert=./tls.crt \
  --key=./tls.key \
  --namespace=default  # 替換為實(shí)際命名空間
  • my-tls-secret:自定義 Secret 名稱(后續(xù) Ingress 需引用此名稱)
  • --namespace:需與 Ingress 資源所在命名空間一致

3. 驗(yàn)證 Secret

kubectl get secret my-tls-secret -n default -o yaml

輸出中應(yīng)包含 tls.crt 和 tls.key 的 Base64 編碼內(nèi)容,類型為 kubernetes.io/tls。

三、步驟 2:配置 Ingress 資源引用證書

在 Ingress YAML 中通過 tls 字段關(guān)聯(lián)上一步創(chuàng)建的 Secret,并指定證書對應(yīng)的域名。

示例 Ingress 配置(啟用 HTTPS)

apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: https-ingress
  namespace: default
  annotations:
    # 可選:強(qiáng)制 HTTP 重定向到 HTTPS(以 NGINX 為例)
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
spec:
  ingressClassName: nginx  # 匹配部署的 Ingress Controller 類型
  tls:
  - hosts:
    - example.com          # 證書綁定的域名(必須與證書中 CN 或 SAN 一致)
    - api.example.com      # 支持多個域名(需證書包含這些域名)
    secretName: my-tls-secret  # 引用之前創(chuàng)建的證書 Secret
  rules:
  - host: example.com
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: web-service
            port:
              number: 80
  - host: api.example.com
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: api-service
            port:
              number: 8080

關(guān)鍵配置說明

  • tls.hosts:指定證書生效的域名,必須與證書中配置的域名(Common Name 或 Subject Alternative Name)完全一致。
  • tls.secretName:關(guān)聯(lián)存儲證書的 Secret 名稱(與步驟 1 中創(chuàng)建的名稱一致)。
  • annotations 中的 ssl-redirect: "true":自動將 HTTP 請求(80 端口)重定向到 HTTPS(443 端口),需 Ingress Controller 支持(如 NGINX)。

四、測試 HTTPS 訪問

  • 部署 Ingress 資源:
kubectl apply -f ingress-https.yaml
  • 驗(yàn)證 Ingress 狀態(tài):
kubectl get ingress https-ingress -n default

輸出中 ADDRESS 字段為 Ingress Controller 的入口 IP(或域名)。

  • 測試訪問:
curl https://example.com --resolve example.com:443:<INGRESS-IP>

若配置正確,會返回后端服務(wù)響應(yīng),且瀏覽器訪問時顯示「安全鎖」圖標(biāo)。

五、擴(kuò)展場景

1. 自簽名證書(僅用于測試)

若沒有正式證書,可生成自簽名證書:

# 生成私鑰和證書(有效期 365 天)
openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
  -keyout ./tls.key \
  -out ./tls.crt \
  -subj "/CN=example.com/O=example"  # CN 為域名

# 后續(xù)步驟同正式證書(創(chuàng)建 Secret 并配置 Ingress)

注意:自簽名證書會被瀏覽器標(biāo)記為「不安全」,僅用于測試環(huán)境。

2. 多證書配置

若需為不同域名配置不同證書,可在 tls 字段中添加多個條目:

tls:
- hosts:
  - example.com
  secretName: example-tls-secret  # 對應(yīng) example.com 的證書
- hosts:
  - test.com
  secretName: test-tls-secret     # 對應(yīng) test.com 的證書

3. 自動證書管理(生產(chǎn)推薦)

通過 Cert-Manager 工具可自動申請、續(xù)期 Let's Encrypt 證書,無需手動管理:

部署 Cert-Manager:

kubectl apply -f https://github.com/cert-manager/cert-manager/releases/download/v1.13.0/cert-manager.yaml

創(chuàng)建 Issuer 或 ClusterIssuer 資源定義證書來源。

在 Ingress 中添加注解 cert-manager.io/cluster-issuer: "letsencrypt-prod" 自動關(guān)聯(lián)證書。

六、常見問題排查

證書不生效

  • 檢查 tls.hosts 與證書域名是否完全一致。
  • 確認(rèn) Secret 與 Ingress 在同一命名空間。
  • 查看 Ingress Controller 日志:kubectl logs -n ingress-nginx <nginx-controller-pod>。

HTTP 無法重定向到 HTTPS

確認(rèn) Ingress Controller 支持 ssl-redirect 注解(不同控制器注解可能不同,如 Traefik 使用 traefik.ingress.kubernetes.io/redirect-entry-point: https)。

通過以上步驟,即可為 Ingress 配置 SSL/TLS 證書,實(shí)現(xiàn) HTTPS 加密訪問。

總結(jié)

以上為個人經(jīng)驗(yàn),希望能給大家一個參考,也希望大家多多支持腳本之家。

相關(guān)文章

  • k3s安裝部署流程

    k3s安裝部署流程

    文章詳細(xì)介紹了如何在國內(nèi)配置K3s鏡像源、部署儀表盤、配置角色和權(quán)限、獲取儀表盤token、進(jìn)行端口轉(zhuǎn)發(fā)以及使用nerdctl和buildkitd構(gòu)建容器鏡像的方法,并附帶了注意事項(xiàng)和驗(yàn)證步驟
    2026-01-01
  • Kubernetes中創(chuàng)建命名空間實(shí)現(xiàn)方法

    Kubernetes中創(chuàng)建命名空間實(shí)現(xiàn)方法

    這篇文章主要為大家介紹了Kubernetes中創(chuàng)建命名空間實(shí)現(xiàn)方法詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-11-11
  • 訪問k8s集群部署的微服務(wù)內(nèi)部服務(wù)接口問題

    訪問k8s集群部署的微服務(wù)內(nèi)部服務(wù)接口問題

    文章介紹了在Kubernetes集群中訪問微服務(wù)內(nèi)部服務(wù)接口的幾種方法,包括通過Pod的localhost訪問、使用服務(wù)名和DNS解析、以及通過注冊中心的地址訪問
    2026-02-02
  • K8S中若要掛載其他命名空間中的 Secret操作方法

    K8S中若要掛載其他命名空間中的 Secret操作方法

    在Kubernetes中,通過創(chuàng)建ServiceAccount和RoleBinding,可以實(shí)現(xiàn)一個命名空間中的Pod掛載另一個命名空間中的Secret,以下是具體步驟和示例代碼,包括創(chuàng)建ServiceAccount、Role和RoleBinding,以及在Pod中使用這些資源掛載Secret,感興趣的朋友一起看看吧
    2025-03-03
  • 在K8S中使用ArgoCD做持續(xù)部署的方案

    在K8S中使用ArgoCD做持續(xù)部署的方案

    ArgoCD是一個基于Kubernetes的GitOps持續(xù)交付工具,應(yīng)用的部署和更新都可以在Git倉庫上同步實(shí)現(xiàn),并自帶一個可視化界面,本文介紹如何使用Git+Argocd方式來實(shí)現(xiàn)在k8s中部署和更新應(yīng)用服務(wù),感興趣的朋友一起看看吧
    2025-03-03
  • K8S?Operator部署及自定義詳解

    K8S?Operator部署及自定義詳解

    這篇文章主要為大家介紹了K8S?Operator部署及自定義詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2023-04-04
  • MinIO使用基礎(chǔ)教程(最新整理)

    MinIO使用基礎(chǔ)教程(最新整理)

    文章介紹了MinIO云存儲服務(wù)的快速安裝和使用,并通過SpringBoot實(shí)現(xiàn)文件上傳和查詢的功能,感興趣的朋友跟隨小編一起看看吧
    2025-03-03
  • kubernetes調(diào)度之NodeSelector使用解讀

    kubernetes調(diào)度之NodeSelector使用解讀

    本文介紹Kubernetes中兩種簡單調(diào)度策略:NodeName通過指定節(jié)點(diǎn)名稱強(qiáng)制調(diào)度,跳過調(diào)度器;NodeSelector基于節(jié)點(diǎn)標(biāo)簽匹配,需為節(jié)點(diǎn)打標(biāo)簽并在Pod定義中配置,兩者均為強(qiáng)制約束機(jī)制
    2025-08-08
  • k8s擴(kuò)展調(diào)度能力的三種實(shí)現(xiàn)方式

    k8s擴(kuò)展調(diào)度能力的三種實(shí)現(xiàn)方式

    Kubernetes調(diào)度器擴(kuò)展主要通過調(diào)度框架和調(diào)度器擴(kuò)展器實(shí)現(xiàn),調(diào)度框架提供多種插件接口,如QueueSort、Filter、Score等,允許擴(kuò)展調(diào)度邏輯,調(diào)度器擴(kuò)展器通過HTTP服務(wù)擴(kuò)展調(diào)度功能,支持Filter、Prioritize等擴(kuò)展點(diǎn)
    2025-10-10
  • K8S中五種控制器的介紹以及使用

    K8S中五種控制器的介紹以及使用

    這篇文章主要給大家介紹了關(guān)于K8S中五種控制器及使用的相關(guān)資料,控制器 又稱之為工作負(fù)載,本文通過圖文以及實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2021-12-12

最新評論

滕州市| 郑州市| 诸暨市| 仁化县| 准格尔旗| 厦门市| 区。| 重庆市| 阜平县| 抚顺市| 鄂尔多斯市| 开远市| 宜春市| 大埔县| 民乐县| 平安县| 苍梧县| 卢湾区| 临泽县| 缙云县| 搜索| 连山| 综艺| 华池县| 聂荣县| 梅州市| 嘉峪关市| 孟村| 秦皇岛市| 林西县| 枣强县| 太仓市| 庆安县| 山阳县| 永善县| 介休市| 安福县| 三亚市| 达州市| 祥云县| 汉沽区|