K8s暴露服务的三种方式

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

在 Kubernetes 中,我们可以使用三种方式来暴露服务,以便外部应用程序可以访问它们。这些方式包括:

  1. NodePort

NodePort 是 Kubernetes 中最简单的一种暴露服务的方式。它允许我们将容器端口映射到主机的某个端口上。这样,我们就可以通过主机的 IP 地址和该端口访问服务。NodePort 的主要优点是易于设置和使用,但它也有一些缺点。首先,NodePort 只能使用主机上的端口,这意味着我们需要管理端口的分配和冲突。其次,由于 NodePort 使用主机 IP 地址,因此我们需要确保每个节点都有一个公共 IP 地址或 DNS 名称。

  1. LoadBalancer

LoadBalancer 是一种更高级的方式,它允许我们在云平台上创建负载均衡器,并将其配置为将流量路由到 Kubernetes 服务。这样,我们就可以使用单个 IP 地址访问多个节点上的服务。LoadBalancer 的主要优点是它是高度可扩展的,并且可以自动管理端口和负载均衡器。但是,它也有一些缺点。首先,它需要云平台支持,并且可能会导致额外的费用。其次,它可能需要一些配置才能正常工作。

  1. Ingress

Ingress 是一种更高级的方式,它允许我们在 Kubernetes 集群中创建一个统一的入口点,并将流量路由到不同的服务上。这样,我们就可以使用单个 IP 地址和端口访问多个服务。Ingress 的主要优点是它是高度可扩展的,并且可以自动管理路由规则和 SSL 证书。但是,它也有一些缺点。首先,它需要 Ingress 控制器支持,并且可能需要额外的配置才能正常工作。其次,它可能会导致一些性能问题。

总结

在 Kubernetes 中,我们可以使用 NodePort、LoadBalancer 和 Ingress 三种方式来暴露服务。每种方式都有其优点和缺点,我们需要根据具体情况选择最适合自己的方式。如果只是简单地暴露服务并让其可用,则 NodePort 是最简单的选择。如果需要在云平台上创建负载均衡器,则可以选择 LoadBalancer。如果需要更高级的路由规则和 SSL 支持,则可以选择 Ingress。无论选择哪种方式,都需要仔细考虑其优点和缺点,并确保其符合我们的需求。文章来源地址https://www.toymoban.com/news/detail-677672.html

到了这里,关于K8s暴露服务的三种方式的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • k8s 对外服务之 ingress|ingress的对外暴露方式|ingress http,https代理|ingress nginx的认证,nginx重写

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

    2024年02月10日
    浏览(46)
  • k8s使用traefik暴露http服务和tcp服务

    3.1、几个重要的端口配置 将traefik、web、websecure、metrics下的expose都改为true。 3.2、service配置: 配置使用何种方式将traefik的相关服务暴露出去,使得在集群外可以访问,我这里使用NodePort暴露。 3.3、使用hostNetwork 必须将hostNetwork的值设为true。 3.4、配置traefik ingressClass 我这里将

    2023年04月08日
    浏览(37)
  • k8s svc通过externalIPs并结合Keepalived对外暴露服务

    Kubemetes 的 Service需要对集群外暴露,可以通过NodePort、Ingress和LoadBalancer,其中 NodePort:需要预先知道k8s集群节点的IP地址,在使用时需指定node的ip(这样配置存在单点故障); Ingress:实现的是HTTP(S)负载均衡器,只能代理七层; LoadBalancer:需要通过云服务商提供的负载均衡器

    2024年02月05日
    浏览(62)
  • Kubernetes(K8s)使用 kubeadm 方式搭建多 master 高可用 K8s 集群

    本篇主要针对上篇文章的单 master 节点的 K8s 集群上搭建多 master 节点集群 和 LB 负载均衡服务器。 Kubernetes(K8S)集群搭建基础入门教程 虚拟机 IP 地址: IP 操作系统 主机名称 192.168.2.121 centos7.9 k8s-master01 192.168.2.124 centos7.9 k8s-master02 192.168.2.125 centos7.9 k8s-node01 192.168.2.126 centos

    2023年04月26日
    浏览(48)
  • K8s: Ingress对象, 创建Ingress控制器, 创建Ingress资源并暴露服务

    Ingress对象 1 )概述 Ingress 是对集群中服务的外部访问进行管理的 API 对象,典型的访问方式是 HTTP Ingress-nginx 本质是网关,当你请求 abc.com/service/a, Ingress 就把对应的地址转发给你,底层运行了一个 nginx 但 K8s 为什么不直接使用 nginx 呢,是因为 K8s 也需要把转发的路由规则纳入

    2024年04月28日
    浏览(43)
  • 【云原生 • Kubernetes】认识 k8s 网络、外部网络访问 k8s 内部服务

    目录 一、认识 Kubernetes 网络 二、外部网络如何访问 k8s 内部服务 1. NodePort 2. Load Balancer 3. Ingress Kubernetes 最底层的网络为节点网络,用来保证 k8s 集群的节点(master 和 worker、worker 节点之间)能够做正常的 IP 寻址和通讯。 Kubernetes 第二层网络就是 Pod 网络,构建于节点网络之上

    2024年01月16日
    浏览(68)
  • k8s(kubernetes)的两种部署方式(kubeadm)

    在开始之前,部署Kubernetes集群机器需要满足以下几个条件: 一台或多台机器,操作系统CentOS7.x-86_x64 硬件配置:2GB或更多RAM,2个CPU或更多CPU,硬盘30GB或更多 可以访问外网,需要拉取镜像,如果服务器不能上网,需要提前下载镜像并导入节点禁止swap分区 角色 IP master 192.168.1.11 node1 192.16

    2024年02月22日
    浏览(56)
  • 【kubernetes】关于k8s集群的资源发布方式(灰度/滚动发布)

    目录 一、常见的发布方式 二、详解kubectl陈述式方式做灰度发布(金丝雀发布) 步骤一:先基于deployment控制器创建pod,然后发布 步骤二:基于命令行灰度发布 步骤三:测试等到版本稳定以后,再完成继续发布 三、滚动发布详解 蓝绿发布:两套环境交替升级,旧版本保留一定

    2024年04月23日
    浏览(46)
  • centos安装部署Kubernetes(k8s)步骤使用kubeadm方式

    机器地址: 192.168.0.35 k8s-master 192.168.0.39 k8s-node1 192.168.0.116 k8s-node2 修改每台机器的名字 关闭防火墙和selinux 临时关闭selinux: 永久关闭: 修改selinux为disabled或者permissive 重启生效 配置本地解析 确保每个节点MAC地址和 product_uuid 的唯一性 同步时间 如果各机器上时间都没有问题

    2024年02月06日
    浏览(52)
  • K8S暴露pod内多个端口

    公司统一用的某个底包跑jar服务,只暴露了8080端口  由于有些服务在启动jar服务后,会启动多个端口,除了8080端口,还有别的端口需要暴露,我这里就还需要暴露9999端口。 注:解决办法其实是可以直接改底包就好了,在底包中多暴露几个端口,但是我这边因为无法改底包,

    2024年02月14日
    浏览(37)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包