K8s的ingress-nginx配置https

文章目录

一、自签证书&&创建ingress规则

shell 复制代码
## ingress配置https访问,这里使用自签证书实现https访问

openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout tls.key -out tls.crt -subj "/C=CN/ST=JS/L=CZ/O=Acme, Inc./CN=*.yaoyao.com"
kubectl create secret tls tls-secret --key=tls.key --cert=tls.crt -n myapp
kubectl apply -f test-ing-https.yml

test-ingress-https.yaml

yaml 复制代码
# 启动了一个nginx服务nginx-svc3,ingress的tls-secret为之前创建的secret
apiVersion: apps/v1
kind: Deployment
metadata:
  name: nginx-deployment3
  namespace: myapp
spec:
  replicas: 1
  selector:
    matchLabels:
      app: nginx-backend3
  template:
    metadata:
      labels:
        app: nginx-backend3
    spec:
      containers:
      - name: nginx
        image: docker.io/library/nginx:latest
        imagePullPolicy: IfNotPresent
---
apiVersion: v1
kind: Service
metadata:
  name: nginx-svc3
  namespace: myapp
spec:
  ports:
  - targetPort: 80
    port: 80
  selector:
    app: nginx-backend3
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
  name: nginx-ing3
  namespace: myapp
spec:
  ingressClassName: nginx
  tls:
  - hosts: 
    - www.yaoyao.com
    secretName: tls-secret
  rules:
  - host: www.yaoyao.com
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: nginx-svc3
            port:
              number: 80

二、测试https访问

在另一台机器上配置hosts解析www.yaoyao.com,然后访问 curl --cacert tls.crt https://www.yaoyao.com:10443
这里的10443端口是ingress-nginx-controller服务暴露的nodeport端口

相关推荐
牛奶9 小时前
HTTPS你不知道的事
前端·https·浏览器
AlfredZhao4 天前
生产环境里,为什么不建议把普通端口直接暴露到公网?
linux·https·443·80
运维开发故事4 天前
基于 Arthas 的多集群在线诊断系统设计与实现
kubernetes
Patrick_Wilson6 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
探索云原生7 天前
K8s 1.36 这个 GA 特性,把 initContainer 拉模型的 hack 干掉了
ai·云原生·kubernetes
Java之美8 天前
一次k8s升级引发的DevicePlugin注册失败
云原生·kubernetes
Avan_菜菜8 天前
FRP 内网穿透完整实战:从 HTTP 映射到 HTTPS 自签代理
运维·nginx·https
ping某12 天前
为什么 Nginx 明明监听了 80,转发后端时却用了 4xxxx 端口?
后端·nginx
程序员mine14 天前
HTTPS-TLS加密与证书完全指南(中)
网络协议·https·ssl