k8s 创建service 暴漏集群ip

yam文件

复制代码
apiVersion: apps/v1
kind: Deployment
metadata: 
  name: nginx
spec:
  replicas: 2
  selector:
    matchLabels:
      app: mynginx
  template:
    metadata:
      labels:
        app: mynginx
    spec:
      containers:
      - name: nginx
        image: nginx:1.25                
        imagePullPolicy: IfNotPresent 
                
---

apiVersion: v1
kind: Service
metadata:
  name: nginx
spec:
  selector:
    app: mynginx 
  ports:
  - port: 8000
    protocol: TCP
    targetPort: 80 

重要部分:需要再service selector选择deployment的labels

port为暴漏的端口,targetport为nginx端口

kubectl apply -f nginx.yml启动

查看pod,service

复制代码
[admin@localhost k8s]$ kubectl get service -o wide
NAME         TYPE        CLUSTER-IP       EXTERNAL-IP   PORT(S)    AGE     SELECTOR
kubernetes   ClusterIP   10.96.0.1        <none>        443/TCP    5h32m   <none>
nginx        ClusterIP   10.105.245.100   <none>        8000/TCP   9m40s   app=mynginx


[admin@localhost k8s]$ kubectl get po -o wide
NAME                     READY   STATUS    RESTARTS   AGE   IP            NODE       NOMINATED NODE   READINESS GATES
nginx-58fd4875cd-5lfjw   1/1     Running   0          11m   10.244.0.39   minikube   <none>           <none>
nginx-58fd4875cd-pw7qp   1/1     Running   0          11m   10.244.0.37   minikube   <none>           <none>
nginx-58fd4875cd-qqsmp   1/1     Running   0          11m   10.244.0.38   minikube   <none>           <none>

servie启动成功

service会虚拟一个ip以轮训的方式访问后端nginx

测试,进入一个nginx终端

kubectl exec -it nginx-58fd4875cd-5lfjw -- /bin/bash

curl service ip

复制代码
root@nginx-58fd4875cd-5lfjw:/# curl 10.105.245.100:8000
<!DOCTYPE html>
<html>
<head>
<title>Welcome to nginx!</title>
<style>
html { color-scheme: light dark; }
body { width: 35em; margin: 0 auto;
font-family: Tahoma, Verdana, Arial, sans-serif; }
</style>
</head>
<body>
<h1>Welcome to nginx!</h1>
<p>If you see this page, the nginx web server is successfully installed and
working. Further configuration is required.</p>

成功!

相关推荐
Shadow(⊙o⊙)2 小时前
Linux网络——文件与网络的连接桥梁struct sock {
linux·运维·网络
李永奉2 小时前
中科蓝讯SDK开发-提示音音频文件格式转换和压缩教程
网络·单片机·嵌入式硬件·mcu·物联网
新时代牛马2 小时前
Linux 性能调优与追踪完整篇:ftrace、perf、eBPF从采样到落地验证
linux·运维·服务器
sunoo-2292 小时前
【网络编程 + 数据库】select 与 epoll 核心区别详解 + SQLite 入门到 C 接口全攻略
linux·网络·数据库·vscode·学习·sqlite
长脖鹿Johnny2 小时前
游戏输入系统框架设计(三):网络输入权威与可验证性
网络·游戏·游戏开发·架构设计·输入系统·网络同步
Mortalbreeze2 小时前
深入理解 Linux IO 模型(二):多路复用——select
linux·运维·服务器·网络·tcp/ip
Mrs_DongDong2 小时前
华为云 Windows 服务器远程桌面自定义端口排障指南
服务器·windows·华为云
SamChan902 小时前
PDF翻译服务端到端基准测试:4款主流方案的吞吐量、延迟、内存占用对比
服务器·网络·python·ai·pdf·wpf
Sagittarius_A*2 小时前
CVE-2026-42271:从 MCP stdio 测试接口看 LiteLLM 的命令执行风险与防御闭环
网络·windows·安全·cve·rce
DLYSB_2 小时前
旧上位机不肯改怎么办:原生 TCP 字节帧接入声光语音终端的改造实录
网络·网络协议·tcp/ip·报警灯