`
lykops
  • 浏览: 86200 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

让外部网络访问K8S service的四种方式

 
阅读更多

本文基于kubernetes 1.5.2版本编写

kube-proxy+ClusterIP

kubernetes版本大于或者等于1.2时,配置:

修改master的/etc/kubernetes/proxy,把KUBE_PROXY_ARGS=”“改为KUBE_PROXY_ARGS=”–proxy-mode=userspace”
重启kube-proxy服务
在核心路由设备或者源主机上添加一条路由,访问cluster IP段的路由指向到master上。

kubernetes版本小于1.2时,直接添加路由

这里写图片描述

负载均衡器+NodePort

部署一个负载均衡器(nginx、keepalive等)

这里写图片描述

Ingress

Ingress是一种HTTP方式的路由转发机制,由Ingress Controller和HTTP代理服务器组合而成。Ingress Controller实时监控Kubernetes API,实时更新HTTP代理服务器的转发规则。HTTP代理服务器有GCE Load-Balancer、HaProxy、Nginx等开源方案。详细说明请见http://blog.csdn.net/liyingke112/article/details/77066814这里写图片描述

loadbalance

LoadBalancer在NodePort基础上,K8S可以请求底层云平台创建一个负载均衡器,将每个Node作为后端,进行服务分发。该模式需要底层云平台(例如GCE)支持。

分享到:
评论

相关推荐

    K8s外部网络访问之NodePort资源附件

    NodePort是一种Service类型,它允许外部网络访问K8s集群内的服务,无需复杂的网络配置。本资源附件将深入探讨NodePort的工作原理、配置方法以及如何通过NodePort实现外部网络访问。 首先,理解NodePort的含义:Node...

    K8s外部网络访问之Ingress附件

    在Kubernetes(K8s)集群中,Ingress是一种用于管理外部访问服务的重要机制,它提供了统一的入口点,使得外部网络可以方便地与内部运行的应用进行交互。本篇文章将详细探讨Kubernetes Ingress及其附件,帮助你理解...

    k8s部署有状态 nacos2.0.3,通过ingress外网访问

    在Kubernetes(k8s)集群中部署有状态的应用服务,如Nacos 2.0.3,并通过Ingress实现外网访问,是一项常见的任务,它涉及到容器化、集群管理、服务发现和网络路由等多个技术领域。下面我们将深入探讨这个过程中的...

    K8S入门基础课件docx版本

    2. **Service**: Service是K8S中的抽象层,它定义了一种访问Pod的方式,提供了负载均衡和持久化DNS名称。即使Pod重启,Service仍然可以继续提供服务。 3. **Deployment**: Deployment是用于管理Pod和ReplicaSet的...

    实现k8s网络互通方便本机调用k8s应用

    对于外部访问,k8s提供了NodePort和LoadBalancer两种方式。NodePort会在每个节点上开放一个端口,任何可以访问节点IP的人都可以通过这个端口访问到Service。而LoadBalancer则更适用于云环境,它会创建一个云负载...

    K8S监控blackbox-exporter镜像及资源清单文件

    Kubernetes(简称K8S)作为现代云原生应用的基石,提供了一种高效、灵活的容器编排方式。在K8S环境中,对服务的健康状态进行监控至关重要。Blackbox Exporter是Prometheus监控体系中的一个重要组件,它允许我们对...

    k8s+k8s+pod介绍与网络通讯+配合博文

    Flannel是k8s的一种网络插件,用于实现跨节点的Pod间通信。它为每个节点分配一个子网,并在节点间建立隧道,使得Pod可以在集群内部自由通信。Flannel提供了多种网络后端,如VXLAN、UDP等,以适应不同的网络环境。 5...

    k8s ingress调研成果及使用示例,包含4层、7层

    Ingress在k8s集群中扮演着网络路由的角色,它可以将外部请求定向到特定的Service或Pod。Ingress资源定义了外部网络如何与k8s内部的服务交互,包括基于HTTP/HTTPS的路径规则、重定向、SSL/TLS终止等。通过配置Ingress...

    K8S部署+实战+集群架构图.zip

    8. **实战应用**:实战文档可能包含如何将一个应用部署到K8s集群的步骤,包括编写YAML配置文件、使用kubectl命令行工具与集群交互、暴露服务给外部访问、监控和日志收集等。 9. **K8S网络模型**:Kubernetes采用了...

    k8s安装文档和系统间集成ppt

    例如,使用Ingress资源实现外部网络对K8s服务的访问,或者通过API Gateway将多个Service暴露给外部。 5. **服务发现的实现机制**:Kube-proxy监听apiserver的事件,当Service或Pod发生变化时,自动更新iptables规则...

    k8s之ServiceIngress,service-nodeport.yaml,mandatory.yaml

    在Kubernetes(k8s)集群中,Service和Ingress是两个关键的组件,它们用于定义和管理应用的网络访问策略。本篇文章将深入探讨这两个概念以及如何通过配置文件`service-nodeport.yaml`和`mandatory.yaml`来设置它们。...

    nacos-k8s-yaml.zip

    6. **NFS服务器配置**: 在k8s集群外部,需要有一个运行NFS服务器的节点,提供共享存储。NFS服务器的设置不在YAML文件中,但必须确保集群能够正确挂载NFS目录。 部署过程通常包括以下步骤: 1. **创建StorageClass*...

    K8s讲义(md版).rar

    K8s广泛应用于微服务架构、CI/CD流程、大数据处理、AI训练等场景,提供了一种可移植、可扩展的平台,简化了云原生应用的管理和运维。 综上所述,Kubernetes是现代云环境下的基础架构组件,通过其强大的功能和灵活的...

    阿里云k8s 一键部署nacos2.0.3

    Service可以是ClusterIP类型,仅供集群内部使用,或者NodePort或LoadBalancer类型,以便外部访问。你需要指定服务名、目标端口以及选择的暴露方式。 3. **持久化存储**: 由于Nacos需要持久化数据,所以需要创建一个...

    k8s资源发布demo

    总的来说,"k8s资源发布demo"是一个实用的学习工具,它让我们有机会亲手实践k8s的各种操作,掌握如何编写和应用yaml文件,从而更好地理解和掌握kubernetes的核心功能。在探索这个demo时,结合官方文档和其他教程,你...

    GaussDB,K8s环境一键安装shell脚本

    3. **创建K8s资源**:通过kubectl命令创建GaussDB的Deployment、Service、PersistentVolumeClaim等K8s资源。 4. **挂载数据存储**:配置持久卷挂载,确保数据的持久化存储。 5. **设置权限**:创建必要的K8s角色和...

    k8s-fordocker-desktop-v1.29.1

    10. **服务发现与负载均衡**:Kubernetes通过Service对象实现服务发现,并利用Ingress资源进行外部访问的负载均衡,确保高可用性。 11. **监控与日志**:Kubernetes提供了一套监控和日志收集的框架,可以集成...

    Kubernetes(k8s)2020版入门笔记和资料(尚).zip

    Kubernetes,简称k8s,是Google开源的一种容器编排系统,用于自动化容器化应用程序的部署、扩展和管理。本资源包含2020版的Kubernetes入门笔记和相关资料,对于初学者或希望深入理解k8s的IT从业者来说极具价值。 ...

Global site tag (gtag.js) - Google Analytics