Ingress详解

概述

使用Service里面的NodePort可以将端口号对外暴露,通过IP+端口号进行访问。

NodePort缺陷:

  • 在每个节点上都会用到端口,在访问时候在任何节点,通过节点IP+端口可以实现访问。意味着每个端口只能使用一次,一个端口对应一个应用。
  • 实际访问中都是用域名,根据不同域名跳转到不同端口服务中。

Ingress和Pod关系

pod和ingress通过service关联。

ingress作为统一入口,由service关联一组pod

在这里插入图片描述

Ingress工作流程

在这里插入图片描述

使用Ingress

  • 部署Ingress Controller
  • 创建Ingress规则
kubectl create deployment web --image=nginx
kubectl expose deployment web --port=80 --target-port=80 --type=NodePort

网上下载ingress-controller.yaml

apiVersion: v1
kind: Namespace
metadata: 
  name: ingress-nginx
  labels: 
    app.kubernetes.io/name: ingress-nginx
    app.kubernetes.io/part-of: ingress-nginx
---
...
...

将hostNetwork改为true

kubectl apply -f ingress-controller.yaml

查看ingress controller状态:

kubectl get pods -n ingress-nginx

创建ingress规则:

apiVersion: networking.k8s.io/v1beta1
kind: Ingress
metadata:
  name: example-ingress
spec:
  rules:
  - host: example.ingressdemo.com
    http:
      paths:
      - path: /
        backend:
          serviceName: web
          servicePort: 80
kubectl apply -f 

在Windows系统hosts文件中添加域名访问规则

192.168.44.145 example.ingressdemo.com
kubectl get ing
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值