Ingress

Ingress



ingress-nginx

  • 部署ingress-nginx 控制器

    kubectl apply -f https://raw.githubusercontent.com/kubernetes/ingress-nginx/controller-v1.0.4/deploy/static/provider/cloud/deploy.yaml

    annotation 中的内容有用,后面需学习

  • 测试tls

    openssl genrsa -out tls.key 2048
    openssl req -x509 -new -key tls.key -out tls.crt -subj /CN="*" -days 3650
    kubectl create secret tls https-test --cert=./tls.crt --key=./tls.key
    cat <<EOF|kubectl -f -
    apiVersion: v1
    kind: Pod
    metadata:
    name: test-tls
    labels:
    app: python
    spec:
    containers:
    - name: test-tls
    image: python
    command: ["python","-m","http.server"]
    ports:
    - name: http
    containerPort: 8000
    ---
    apiVersion: v1
    kind: Service
    metadata:
    name: test-tls-svc
    labels:
    tier: frond
    spec:
    selector:
    app: python
    ports:
    - name: http
    port: 80
    targetPort: 8000
    type: ClusterIP
    ---
    apiVersion: networking.k8s.io/v1
    kind: Ingress
    metadata:
    name: tls-example-ingress
    annotations:
    kubernetes.io/ingress.class: "nginx"
    ingressClass.kubernetes.io/is-default-class: "true"
    #ingressClassName: "nginx"
    nginx.ingress.kubernetes.io/ssl-redirect: "true"
    spec:
    ingressClassName: nginx
    tls:
    - hosts:
    - test.com
    secretName: https-test
    rules:
    - host: test.com
    http:
    paths:
    - path: /bin
    pathType: Prefix
    backend:
    service:
    name: test-tls-svc
    port:
    number: 80
    EOF
  • 在k8s 集群外使用代理访问

    upstream test {
    server 10.4.7.50:31196; # 10.4.7.50:31196 ingress controller的地址和端口
    }
    server {
    listen 80;
    location / {
    rewrite ^.*(.*) https://test.com:31196/$1 permanent;
    }

Ingress | Kubernetes

ingress-nginx/docs/examples/rewrite/README.md at main · kubernetes/ingress-nginx (github.com)

ingress-nginx/README.md at main · kubernetes/ingress-nginx (github.com)

Installation Guide - Ingress-Nginx Controller (kubernetes.github.io)

posted @   mingtian是吧  阅读(72)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· 葡萄城 AI 搜索升级:DeepSeek 加持,客户体验更智能
· 什么是nginx的强缓存和协商缓存
· 一文读懂知识蒸馏
点击右上角即可分享
微信分享提示