pod多个端口(一口端口 划分多ip)
原标题:pod多个端口(一口端口 划分多ip)
导读:
K8S学习指南(22)-k8s核心对象EndpointK8s核心对象Endpoint学习指南:Endpoint概念 定义:Endpoint是Kubernetes中连接Serv...
k8s学习指南(22)-k8s核心对象Endpoint
K8s核心对象Endpoint学习指南:Endpoint概念 定义:Endpoint是Kubernetes中连接service和后端Pod的关键核心对象,它提供服务的抽象,并动态管理集群中服务的网络终端。 作用:Endpoint集合了服务后端真实运行pod的地址与端口,是Service的实现。
在kubernetes(K8s)中,Endpoint是连接Service和后端POD的关键核心对象。它提供服务的抽象,动态管理集群中服务的网络终端。本文将深入探讨Endpoint概念、作用及使用方法,并通过实例帮助读者理解。Endpoint代表Service后端的IP地址和端口号集合,用于引导流量从Service到实际运行应用的Pod。
Service在K8s中是一种抽象概念,它定义了一个Pod群体的逻辑集合,并为这组Pod提供了一个稳定且可访问的端点。这个端点可以是集群内部的虚拟IP地址或dns名称,使得其他应用或服务能方便地访问这组Pod,实现服务发现与负载均衡。
K8s核心对象Service的学习指南如下:Service的概念:定义:Service在K8s中是一种抽象概念,它定义了一个Pod群体的逻辑集合,并为这组Pod提供了一个稳定且可访问的端点。功能:提供服务发现与负载均衡的功能,使得其他应用或服务能方便地访问这组Pod。
申请pod是什么意思?
1、申请Pod是指在Kubernetes上部署应用程序,让这些程序在容器中运行的过程。以下是关于申请Pod的详细解释:Pod的基本概念:Pod是Kubernetes中最主要的资源对象之一,可以理解为一组或多个容器的集合。它通常用于部署和管理容器应用。申请Pod的准备工作:需要确保已经创建了一个Kubernetes集群。
2、Pod是Kubernetes中最主要的资源对象之一,它可以理解为一组或多个容器的集合,通常用于部署和管理容器应用。申请Pod意味着您需要在Kubernetes上部署您的应用程序,让它们在容器中运行。在提交Pod申请之前,您需要确保已经创建了一个Kubernetes集群,并且了解如何使用Kubernetes API进行操作。
3、POD:卸货港。指货物被卸载的港口。POL:起运港。指货物开始运输的港口。S/O:订舱号。用于标识货物的订舱信息。S/I:补料。补充或修改订舱信息的操作。T/R:电放。通过电子方式放货,无需纸质提单。Truck:拖车。用于运输货物的车辆。Customs Declaration:报关。向海关申报货物的进出口手续。
4、第二种模式即按需打印服务,也被称为电商卖货模式:通过与POD供应商合作,在自营网站或第三方平台店铺上销售POD产品。买家在自营网站或Etsy第三方平台店铺购买个性化连帽衫后,相关订单信息将直接同步到POD供应商系统,然后由供应商完成打印、生产、打包、发货等一系列操作。
5、不同的船公司表格稍微不一样,但核心内容就那些。表格上面有下面大概的内容: 发货人(Shipper) ,收货人(Consignee), 装货港(POL), 卸货港(POD)。
6、PV概念:PV是对K8S存储资源的抽象,一般由运维人员创建和配置,供容器申请使用。PV相当于对磁盘的分区,为容器提供存储空间。PVC概念:PVC是Pod对存储资源的一个申请,主要包括存储空间申请、访问模式等。创建PV后,Pod就可以通过PVC向PV申请磁盘空间。
通过Prometheus-Operator实现对k8s集群的监控
1、特此说明:本篇时基于prometheus-operator官网提供的kube-prometheus原生包进行部署的,由于我的k8s集群为10版本,考虑到对原生的兼容性,发现官方从release-0.5已经开始支持k8s18了,但是在实际使用中我使用的最新版本安装包并没有报错。
2、Prometheus-Operator 是一个用于简化 Kubernetes 中 Prometheus 监控的解决方案,它提供自动部署、管理和配置服务。通过 ServiceMonitor,用户无需底层配置即可实现对K8s应用的自动监控。本文将详细介绍它的使用方法和关键组件。
3、独立部署Prometheus使用Nodeexporter+CADvisor+kubestatemetrics监控k8s集群的步骤如下:搭建环境:Prometheus Server:部署在指定的节点上。node Exporter:在Kubernetes集群的每个节点上安装,用于收集节点级的监控数据。部署kubestatemetrics:位置:部署在指定的节点上。
K8S之nodePort、port、targetPort和CONTAINERPort
targetPort是针对docker容器设置的端口。当数据从nodePort或port进入时,kube-proxy将数据路由至后端pod的targetPort上,最终进入容器内部。值得注意的是,targetPort与containerport必须保持一致。containERPort则是定义在pod控制器中的端口,用于容器需要暴露给外界的接口。例如,mysql服务通常暴露3306端口,而redis服务则暴露6379端口。
Service的端口范围(port)通过参数--service-node-port-range指定(默认30000-32767),并映射到Pods的特定端口(containerPort)。这样,Service IP + port组合可以提供稳定的服务访问,而无需担心Pods的变化。为了实现更复杂的服务发现和路由,Kubernetes提供了几种解决方案。
由于Apache SkyWalking Kubernetes默认的安装方式是采用的ClusterIP,我们需要改为NodePort方式。在skywalking-kubernetes/chart/skywalking/templates下找到oap-svc.yaml文件,修改其中的配置,添加targetPort和nodePort。如果仅仅用于安装演示skywalking。本步骤可以跳过不执行。
我们使用的service type是NodePort,yaml里没有申明nodePort 所以k8s会默认创建一个nodePort (30000-40000),然后我们通过node ip 加 nodePort 就可以访问service。
kube-proxy通过配置DNAT规则,将到达服务地址的访问映射到本地的kube-proxy端口上。然后,它监听本地对应端口,将访问代理到远程真实的Pod地址。无论通过集群内部服务入口:port还是集群外部服务入口:nodePort的请求,都将重定向到本地kube-proxy端口(随机端口)的映射,然后代理到远端真实的Pod地址。
一文带你深入理解K8s-Pod的意义和原理
1、Pod作为Kubernetes中的核心概念之一,通过封装多个容器并共享名称空间等资源,实现了高效的空间利用和通信。Pod的引入解决了单容器单应用的局限性问题,提高了系统的稳定性和可靠性。同时,通过Pause容器的实现原理,Pod能够确保容器之间的状态一致性和协调性。深入理解Pod的意义和原理对于掌握Kubernetes的精髓至关重要。希望本文能够帮助读者更好地理解和应用Pod这一关键概念。
2、在软件安装与运行的场景下,对比个人电脑复杂系统环境的管理,软件包和安装部署原理,引出容器与Pod组件的概念。容器镜像,作为轻量级、独立且可执行的软件包,包含运行所需代码、运行时、系统工具、库与配置,携带创建容器说明,可通过脚本自定义或使用公开仓库。
3、k8s常用的Pod控制器在Kubernetes(k8s)中,Pod控制器是用于管理和自动化Pod部署、扩展、缩容和故障恢复的关键组件。以下是k8s中常用的Pod控制器:ReplicaSet(副本集):功能:ReplicaSet用于确保指定数量的Pod副本在集群中运行。工作原理:通过定义副本数和选择器来管理Pod的复制。