zoukankan      html  css  js  c++  java
  • Nginx-ingress-controller部署应用

    https://blog.51cto.com/newfly/2060587

    参考:https://cloud.tencent.com/developer/article/1490975

    1.下载并执行了mandatory.yaml文件

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

    2.下载https://raw.githubusercontent.com/kubernetes/ingress-nginx/master/deploy/static/provider/baremetal/service-nodeport.yaml

    -----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

    上面的没有安装成功,故弃之。

    参考:https://blog.51cto.com/hequan/2432608(主要参考)

     https://www.cnblogs.com/cnmumian/p/10660207.html

    https://blog.csdn.net/aixiaoyang168/article/details/81661459

    1、下载mandatory.yaml文件

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

    出现了拒绝访问:百度大概是缺少证书一类的吧,

    先安装:

    ca-certificates
      yum -y install ca-certificates

    把命令改成 :

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

    于是下载成功。

    2、执行命令 替换里面的,镜像default-http的镜像默认是google的镜像地址,你懂得,所以替换成国内镜像地址。

    sed -i 's#quay.io/kubernetes-ingress-controller/nginx-ingress-controller#registry.cn-hangzhou.aliyuncs.com/google_containers/nginx-ingress-controller#g' mandatory.yaml 

    mandatory.yaml文件内容比较多,在这里就不做展示。主要就是镜像源需要找很久。

    3、创建service-nodeport.yaml文件,这里容易出错的地方是pode的端口号,修改service文件,指定一下nodePort,使用80端口和443端口作为nodePort。

    一般这个端口号会不在端口号的范围内,也会出错。所以需要自己去修改nodePort的范围:https://blog.csdn.net/fuck487/article/details/102519225。或者将其修改为32080 和32443。

    apiVersion: v1
    kind: Service
    metadata:
      name: ingress-nginx
      namespace: ingress-nginx
      labels:
        app.kubernetes.io/name: ingress-nginx
        app.kubernetes.io/part-of: ingress-nginx
    spec:
      type: NodePort
      ports:
        - name: http
          port: 80
          targetPort: 80
          protocol: TCP
          nodePort: 32080  ## http请求对外映射端口
        - name: https
          port: 443
          targetPort: 443
          protocol: TCP
          nodePort: 32443  #https
      selector:
        app.kubernetes.io/name: ingress-nginx
        app.kubernetes.io/part-of: ingress-nginx

    4、运行命令,生成一个叫ingress-nginx的namespace,以及一个叫ingress-nginx的service。

    kubectl create -f mandatory.yaml

    kubectl create -f service-nodeport.yaml

    5、检查生成状态(这一步应该是mandatory.yaml 文件中的镜像一直没下载下来导致的。)

     6、部署一个tomcat用于测试ingress转发功能(也就是部署一个tomcat服务)

     apiVersion: v1
    kind: Service
    metadata:
      name: tomcat
      namespace: default
    spec:
      selector:
       app: tomcat
       release: canary
      ports:
      - name: http
        targetPort: 8080
        port: 8080
      - name: ajp
        targetPort: 8009
        port: 8009
     
    ---
     
    apiVersion: apps/v1
    kind: Deployment
    metadata:
      name: tomcat-deploy
      namespace: default
    spec:
      replicas: 1
      selector:
       matchLabels:
         app: tomcat
         release: canary
      template:
       metadata:
         labels:
           app: tomcat
           release: canary
       spec:
         containers:
         - name: tomcat
           image: tomcat
           ports:
           - name: http
             containerPort: 8080
    7、

    
    
  • 相关阅读:
    core.net 创建coreclass 项目出现一些问题
    【BZOJ4144】[AMPPZ2014]Petrol 最短路+离线+最小生成树
    【BZOJ4774/4006】修路/[JLOI2015]管道连接 斯坦纳树
    【BZOJ2595】[Wc2008]游览计划 斯坦纳树
    【BZOJ4149】[AMPPZ2014]Global Warming 单调栈+RMQ+二分
    【BZOJ4764】弹飞大爷 LCT
    【BZOJ3529】[Sdoi2014]数表 莫比乌斯反演+树状数组
    【BZOJ5008】方师傅的房子 三角剖分
    【BZOJ4282】慎二的随机数列 乱搞
    【BZOJ1568】[JSOI2008]Blue Mary开公司 线段树
  • 原文地址:https://www.cnblogs.com/maowuyu-xb/p/11950351.html
Copyright © 2011-2022 走看看