k8s,service如何找到容器

Kubernetes之所以需要Service,一方面是因为Pod的IP不是固定的,另一方面则是因为一组Pod实例之间总会有负载均衡的需求

被selector选中的Pod,就称为Service的Endpoints,查看方式:

shell 复制代码
kubectl get endpoints hostnames

需要注意的是,只有处于Running状态,且readinessProbe检查通过的Pod,才会出现在Service的Endpoints列表里。

vip地址查看,svc - 是 service 的缩写

shell 复制代码
kubectl get svc hostnames
NAME        TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)   AGE
hostnames   ClusterIP   10.0.1.175   <none>        80/TCP    5s

输出信息包含:

NAME: Service 的名称

TYPE: Service 的类型(如 ClusterIP, NodePort, LoadBalancer 等)

CLUSTER-IP: 集群内部的 IP 地址

EXTERNAL-IP: 外部可访问的 IP 地址(如果有的话)

PORT(S): Service 暴露的端口

AGE: Service 创建后的运行时间

这个命令常用于:

检查服务是否正常运行

获取服务的 IP 地址和端口信息

验证服务的配置是否正确

故障排查时查看服务状态

Service是由kube-proxy组件,加上iptables来共同实现的。

不难想到,当你的宿主机上有大量Pod的时候,成百上千条iptables规则不断地被刷新,会大量占用该宿主机的CPU资源,甚至会让宿主机"卡"在这个过程中。所以说,一直以来,基于iptables的Service实现,都是制约Kubernetes项目承载更多量级的Pod的主要障碍。

相关推荐
Waay2 小时前
图文详解|K8s Pod内部结构
docker·云原生·kubernetes
码点滴2 小时前
CRI-O选型与容器运行时标准
开发语言·人工智能·架构·kubernetes·cri-o
openFuyao3 小时前
以开源之力,突破多样化算力困局——openFuyao开源一周年背后的故事
人工智能·云原生·开源·openfuyao·多样化算力·集群软件
JiaWen技术圈3 小时前
IaC 双引擎:Terraform + Ansible 完整最佳实践
云原生·ansible·terraform
万里侯4 小时前
Kubernetes成本优化:降低云原生基础设施成本的完整指南
微服务·容器·k8s
r-t-H6 小时前
KVM虚拟化与Docker基础实践-第二章
阿里云·docker·容器
牛奶咖啡138 小时前
k8s容器编排技术实践——OpenEuler安装部署k8s
kubernetes·信创·containerd配置加速器·openeuler安装k8s·k8s的常见安装方式·彻底关闭swap·工作节点使用kubectl
老码观察8 小时前
K8s 容器化部署的宿主机资源规划的踩坑实录
docker·容器·kubernetes
步步为营DotNet8 小时前
深入.NET 11:.NET Aspire 在云原生资源编排与管理的卓越实践
云原生·.net
我是谁??8 小时前
【6】基于 Docker + YOLOv8 的模型部署实战(GTX1660S + Ubuntu22.04)
yolo·docker·容器