Linux学习-kubernetes之Ingress

这篇具有很好参考价值的文章主要介绍了Linux学习-kubernetes之Ingress。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

资源下载
IngressController
IngressYAML文章来源地址https://www.toymoban.com/news/detail-731918.html

Ingress安装部署
#1.将下载的ingress.tar.gz通过docker的方式导入harbor仓库
[root@master ingress]# docker load -i ingress.tar.xz
[root@master ingress]# docker images|while read i t _;do
    [[ "${t}" == "TAG" ]] && continue
    [[ "${i}" =~ ^"harbor:443/".+ ]] && continue
    docker tag ${i}:${t} harbor:443/plugins/${i##*/}:${t}
    docker push harbor:443/plugins/${i##*/}:${t}
    docker rmi ${i}:${t} harbor:443/plugins/${i##*/}:${t}
done
#2.修改YAML文件,YAML文件中的仓库根据自己仓库地址修改
[root@master ingress]# sed -ri 's,^(\s*image: )(.*/)?(.+)@.*,\1harbor:443/plugins/\3,' deploy.yaml
458:    image: harbor:443/plugins/controller:v1.5.1
565:    image: harbor:443/plugins/kube-webhook-certgen:v20220916-gd32f8c343
614:    image: harbor:443/plugins/kube-webhook-certgen:v20220916-gd32f8c343
#3.应用yaml文件
[root@master ingress]# kubectl apply -f deploy.yaml
# 通过标签指定在那台机器上发布应用
[root@master ingress]# kubectl label nodes node-0001 ingress-ready="true"
node/node-0001 labeled
#4.验证后端服务
[root@master ingress]# kubectl -n ingress-nginx get pods
NAME                                        READY   STATUS      RESTARTS
ingress-nginx-admission-create--1-lm52c     0/1     Completed   0
ingress-nginx-admission-patch--1-sj2lz      0/1     Completed   0
ingress-nginx-controller-5664857866-tql24   1/1     Running     0
[root@master ~]# kubectl get pods,services 
NAME       READY   STATUS    RESTARTS   AGE
pod/web1   1/1     Running   0          35m

NAME                 TYPE        CLUSTER-IP    EXTERNAL-IP   PORT(S)
service/kubernetes   ClusterIP   10.245.0.1    <none>        443/TCP
service/mysvc        ClusterIP   10.245.1.80   <none>        80/TCP
service/mysvc1       NodePort    10.245.1.88   <none>        80:30080/TCP

[root@master ~]# curl http://10.245.1.80
Welcome to The Apache.
# 5.对外发布服务
[root@master ~]# kubectl get ingressclasses.networking.k8s.io 
NAME    CONTROLLER             PARAMETERS   AGE
nginx   k8s.io/ingress-nginx   <none>       5m7s
# 资源对象模板
[root@master ~]# kubectl create ingress mying --class=nginx --rule=nsd.tedu.cn/*=mysvc:80 --dry-run=client -o yaml
[root@master ~]# vim mying.yaml
---
kind: Ingress
apiVersion: networking.k8s.io/v1
metadata:
  name: mying
spec:
  ingressClassName: nginx
  rules:
  - host: nsd.tedu.cn
    http:
      paths:
      - path: /
        pathType: Prefix
        backend:
          service:
            name: mysvc
            port:
              number: 80

[root@master ~]# kubectl apply -f mying.yaml 
ingress.networking.k8s.io/mying created
[root@master ~]# kubectl get ingress
NAME    CLASS   HOSTS         ADDRESS        PORTS
mying   nginx   nsd.tedu.cn   192.168.1.51   80
[root@master ~]# curl -H "Host: nsd.tedu.cn" http://192.168.1.51
Welcome to The Apache.

到了这里,关于Linux学习-kubernetes之Ingress的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Kubernetes系列-Ingress

    Kubernetes 对外暴露服务(Service)主要有两种方式: NodePort , LoadBalance ,此外  externalIps  也可以使各类 service 对外提供服务,但是当集群服务很多的时候,NodePort方式最大的缺点是会占用很多集群机器的端口;LB方式最大的缺点则是每个Service一个LB又有点浪费和麻烦,并且需

    2024年02月14日
    浏览(40)
  • Kubernetes部署ingress

    RHEL 9.3 Docker Community 24.0.7 minikube v1.32.0 通过minikube启用 ingress : 注:接下来在不能访问 registry.k8s.io 的环境里,用该环境作为“标准环境”,以便做对比。 通过minikube启用 ingress 会报错: ingress使用的是 ingress-nginx namespace: 查看 ingress-nginx namespace: 查看deployment: 查看job: 所

    2024年01月20日
    浏览(40)
  • kubernetes之Ingress

            Ingress是k8s中实现7层负载的实现方式,是公开集群外部流量到集群内服务的HTTP和HTTPS路由         通常Ingress实现由Ingress 控制器和Ingress组成,Ingress控制器负责具体实现反向代理及负载均衡,Ingress负责定义匹配规则和路由         Ingress-nginx控制器部署参见:Install

    2024年02月14日
    浏览(40)
  • kubernetes Ingress资源管理

    k8s 对外服务之 Ingress //Ingress 简介 service的作用体现在两个方面,对集群内部,它不断跟踪pod的变化,更新endpoint中对应pod的对象,提供了ip不断变化的pod的服务发现机制;对集群外部,他类似负载均衡器,可以在集群内外部对pod进行访问。 在Kubernetes中,Pod的IP地址和service的

    2024年02月16日
    浏览(66)
  • 【云原生系列之kubernetes】--Ingress使用

    service的缺点: 不支持基于URL等机制对HTTP/HTTPS协议进行高级路由、超时、重试、基于流量的灰度等高级流量治理机制 难以将多个service流量统一管理 1.1ingress的概念 ingress是k8s中的一个对象,作用是如何将请求转发到service的规则 ingress controller是实现反向代理以及负载均衡的程

    2024年02月21日
    浏览(46)
  • Kubernetes中Ingress、Ingress Controller、IngressClass的产生缘由、YAML描述及使用详解

    本文深入探讨了Kubernetes中Ingress、Ingress Controller、IngressClass的产生缘由及作用,详细介绍了它们在管理集群进出流量中的重要性。通过对Ingress和Ingress Class的YAML描述和使用方法的解释,展示了如何配置和管理这些对象以实现流量路由和负载均衡。

    2024年02月09日
    浏览(58)
  • 云原生(二十二) | Kubernetes篇之Ingress案例实战

    文章目录 Ingress案例实战 一、基本配置 二、默认后端 三、路径重写 四、配置SSL

    2023年04月09日
    浏览(45)
  • Nginx Ingress轻松上手 | Kubernetes服务管理指南

    Nginx Ingress是你Kubernetes集群中的得力助手,无需额外安装,已内置于K8s。作为基于Nginx的扩展,它担任负载均衡器和入口控制器的重要角色。 2.1 服务曝露的便利 通过简单配置,Nginx Ingress将外部流量巧妙引导至各服务,无需直接暴露端口。 2.2 负载均衡的智慧 它智能分发流量

    2024年01月17日
    浏览(32)
  • Kubernetes(k8s)使用ingress发布服务

    目录 一.系统环境 二.前言 三.Kubernetes ingress简介 四.Ingress vs NodePort vs LoadBalancer 五.安装部署Nginx Ingress Controller控制器 六.使用Ingress来发布Kubernetes服务 6.1 创建3个pod 6.2 配置ingress规则发布服务 七.总结 本文主要基于Kubernetes1.21.9和Linux操作系统CentOS7.4。 服务器版本 Nginx Ingress C

    2024年02月08日
    浏览(51)
  • Kubernetes技术--k8s核心技术 ingress

    1.引入        我们之前在部署应用(如nginx)的时候,如果你需要外部进行访问,使用的是service中的nodePort方式进行对外的暴露。然后外部就可以使用ip + 端口号来进行访问部署应用。         其实这一种方式是存在着较为明显的缺陷,每一个端口你只能够使用一次,一个端口

    2024年02月10日
    浏览(38)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包