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
相关推荐
碎梦归途15 分钟前
Linux 软件安装方式全解(适用于 CentOS/RHEL 系统)
linux·运维·centos
啃火龙果的兔子18 分钟前
CentOS 7.9 安装 宝塔面板
linux·运维·centos
DexterLien26 分钟前
基于 Alpine 定制单功能用途(kiosk)电脑
linux·alpine·kiosk
贝锐27 分钟前
持续领跑中国异地组网路由器市场,贝锐蒲公英再次登顶销量榜首
网络
小和尚敲木头1 小时前
krpano 字符串拼接,传参。
java·linux·前端
#君君#2 小时前
解决 Ubuntu 20.04 虚拟机中 catkin_make 编译卡死问题
linux·运维·ubuntu
IT布道2 小时前
强制卸载openssl-libs导致系统异常的修复方法
linux·运维·服务器
太空1号2 小时前
飞腾D2000,麒麟系统V10,docker,ubuntu1804,小白入门喂饭级教程
linux·c++·docker
秦jh_2 小时前
【Linux网络】传输层TCP协议
linux·运维·服务器·网络·网络协议·tcp/ip
chirrupy_hamal2 小时前
为什么建立 TCP 连接时,初始序列号不固定?
网络·tcp