K8资源之endpoint资源&EP资源

1 endpoint资源概述

  • endpoint资源在K8S中用来表s示vc与后端 Pod 之间的连接关系的对象。当创建svc时,svc根据标签是否相同或svc名字是否和ep名字相同,把svc和ip关联上。

  • 删除svc时,会自动的删除同名的ep资源。

2 ep资源和svc的关联测试

yaml 复制代码
[root@master23107-ep]# cat 01-pod-svc.yaml 
apiVersion: v1
kind: Endpoints
metadata:
  name: wzy-web
subsets:
- addresses:
  - ip: 47.120.55.69
  # 如果一个ip地址下有多个port,需要指定名称
  ports:
  - port: 80
    name: http
  - port: 443
    name: https
---

apiVersion: v1
kind: Service
metadata:
  name: wzy-web
spec:
  type: ClusterIP
  ports:
  - port: 80
    # 由于ep使用了名称,所以这里必须指定一样的名称,否则无法关联
    name: http
  - port: 443
    name: https
bash 复制代码
[root@master23107-ep]# kubectl get ep,svc
NAME                   ENDPOINTS                          AGE
endpoints/kubernetes   10.0.0.231:6443                    7d7h
endpoints/wzy-web      47.120.55.69:80,47.120.55.69:443   8m13s

NAME                 TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)          AGE
service/kubernetes   ClusterIP   10.200.0.1       <none>        443/TCP          7d7h
service/wzy-web      ClusterIP   10.200.254.222   <none>        80/TCP,443/TCP   5m34s

2.访问测试。我的公网服务器设置了80会临时跳转到443

bash 复制代码
[root@master23107-ep]# curl 10.200.254.222:80
<html>
<head><title>302 Found</title></head>
<body>
<center><h1>302 Found</h1></center>
<hr><center>nginx/1.24.0</center>
</body>
</html>

[root@master23107-ep]# curl -k https://10.200.254.222:443
<!DOCTYPE html>
<html>
<head>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
	<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" />
	<meta http-equiv="Cache-Control" content="no-transform" />

3.删除svc wzy-web测试,发现ep wzy-web真的不见了

bash 复制代码
[root@master23107-ep]# kubectl get ep,svc
NAME                   ENDPOINTS                          AGE
endpoints/kubernetes   10.0.0.231:6443                    7d7h
endpoints/wzy-web      47.120.55.69:80,47.120.55.69:443   23s

NAME                 TYPE        CLUSTER-IP      EXTERNAL-IP   PORT(S)          AGE
service/kubernetes   ClusterIP   10.200.0.1      <none>        443/TCP          7d7h
service/wzy-web      ClusterIP   10.200.92.170   <none>        80/TCP,443/TCP   23s
[root@master23107-ep]# kubectl delete svc wzy-web
service "wzy-web" deleted
[root@master23107-ep]# kubectl get ep
error: resource(s) were provided, but no name was specified
相关推荐
dog25017 分钟前
为何新增网络路径反而引入额外时延
服务器·网络·php
newnazi26 分钟前
RedHat10 安装MS SQL Server2025
linux·服务器·数据库
w1wi28 分钟前
CRA 差距分析完全指南 | 合规落地第一步
网络·人工智能·安全
万里侯37 分钟前
微服务与人生:从服务网格看人际关系
微服务·容器·k8s
zkkkkkkkkkkkkk1 小时前
Linux进行管理工具Supervisor配置与使用
linux·python·supervisor
缪懿1 小时前
应用层中的UDP协议原理
网络·网络协议·udp·javaee
hbugs0011 小时前
EVE-NG桥接外网的5种方式
开发语言·网络·php·eve-ng·rstp·流量洞察
开发者联盟league1 小时前
linux普通用户使用pip安装模块
linux·python·pip
QuestLab1 小时前
③-进阶篇:vLLM实战——多卡部署、压测与排障
linux·服务器·网络
颖火虫盟主1 小时前
Claude Code Hook 系统详解与 Hello World 实操
前端·网络·数据库