zoukankan      html  css  js  c++  java
  • 第十章 Ingress

    一、资料信息

    Ingress-Nginx github 地址:https://github.com/kubernetes/ingress-nginx

    Ingress-Nginx 官方网站:https://kubernetes.github.io/ingress-nginx/

    进入官方下载

    wget https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/mandatory.yaml

     

    二、部署 Ingress-Nginx

    kubectl apply -f mandatory.yaml

    kubectl apply -f service-nodeport.yaml

    Ingress HTTP 代理访问

    deploymentServiceIngress Yaml 文件

    apiVersion: extensions/v1beta1

    kind: Deployment

    metadata:

    name: nginx-dm

    spec:

      replicas: 2

    template:

     metadata:

    labels:

     name: nginx

     spec:

     containers:

     - name: nginx

     image: wangyanglinux/myapp:v1

     imagePullPolicy: IfNotPresent

     ports:

     - containerPort: 80

    apiVersion: v1

    kind: Service

    metadata:

     name: nginx-svc

    spec:

     ports:

     - port: 80

     targetPort: 80

     protocol: TCP

     selector:

     name: nginx

    apiVersion: extensions/v1beta1

    kind: Ingress

    metadata:

       name: nginx-test

    spec:

     rules:

    - host: www1.atguigu.com

     http:

    paths:

     - path: /

    backend:

     serviceName: nginx-svc

     servicePort: 80

    三、Ingress HTTPS 代理访问

    创建证书,以及 cert 存储方式

    openssl req -x509 -sha256 -nodes -days 365 -newkey rsa:2048 -keyout tls.key -out tls.crt -subj"/CN=nginxsvc/O=nginxsvc"

    kubectl create secret tls tls-secret --key tls.key --cert tls.crt

    deploymentServiceIngress Yaml 文件

    apiVersion: extensions/v1beta1

    kind: Ingress

    metadata:

     name: nginx-test

    spec:

     tls:

    - hosts:

     - foo.bar.com

     secretName: tls-secret

     rules:

    - host: foo.bar.com

     http:

    paths:

    - path: /

    backend:

    serviceName: nginx-svc

    servicePort: 80

    四、Nginx 进行 BasicAuth

    yum -y install httpd

    htpasswd -c auth foo

    kubectl create secret generic basic-auth --from-file=auth

    apiVersion: extensions/v1beta1

    kind: Ingress

    metadata:

      name:ingress-with-auth

     annotations:

     nginx.ingress.kubernetes.io/auth-type: basic

     nginx.ingress.kubernetes.io/auth-secret: basic-auth

     nginx.ingress.kubernetes.io/auth-realm: 'Authentication Required - foo'

    spec:

     rules:

     - host: foo2.bar.com

     http:

     paths:

     - path: /

    backend:

    serviceName: nginx-svc

     servicePort: 80

    五、Nginx 进行重写

     

    apiVersion: extensions/v1beta1

    kind: Ingress

    metadata:

      name: nginx-test

      annotations:

      nginx.ingress.kubernetes.io/rewrite-target: http://foo.bar.com:31795/hostname.html

    spec:

    rules:

    - host: foo10.bar.com

       http:

         paths:

         - path: /

    backend:

    serviceName: nginx-svc

        servicePort: 80

    链接:https://www.bilibili.com/video/av66617940/?p=35

  • 相关阅读:
    面向对象与原型2---原型
    JavaScript 引用【转】
    面向对象与原型1---创建对象的方法
    匿名函数和闭包(下)
    从输入 URL 到页面加载完的过程中都发生了什么事情?
    匿名函数和闭包(上)
    聚美优品前端开发面试题
    hdoj1045 Fire Net(二分图最大匹配)
    hdoj1180 诡异的楼梯(bfs+奇偶判断)
    hdoj1373 Channel Allocation(极大团)
  • 原文地址:https://www.cnblogs.com/LiuQizhong/p/11579924.html
Copyright © 2011-2022 走看看