当前位置: 首页 > article >正文

K8s介绍代理外部服务的svc几种方式

在 Kubernetes 中,若需让集群内应用访问外部服务,可通过以下 **Service 配置方式**实现代理:

---

### 1. **ClusterIP Service + 手动维护 Endpoints**
- **原理**:创建 `ClusterIP` 类型的 Service 并手动指定 `Endpoints`,将流量导向外部服务的 IP 和端口。
- **适用场景**:外部服务有固定 IP,且需通过 Service DNS 名称统一访问。
- **配置示例**:
  ```yaml
  # Service 定义
  apiVersion: v1
  kind: Service
  metadata:
    name: external-db
  spec:
    ports:
    - port: 3306
      targetPort: 3306
    type: ClusterIP

  # Endpoints 定义
  apiVersion: v1
  kind: Endpoints
  metadata:
    name: external-db
  subsets:
  - addresses:
    - ip: 192.168.1.100  # 外部服务 IP
    ports:
    - port: 3306
  ```
- **注意事项**:需手动维护 IP,变更时需更新 Endpoints。

---

### 2. **ExternalName Service**
- **原理**:通过 DNS CNAME 将 Service 名称映射到外部域名。
- **适用场景**:外部服务有固定域名,无需处理 IP 变化。
- **配置示例**:
  ```yaml
  apiVersion: v1
  kind: Service
  metadata:
    name: external-api
  spec:
    type: ExternalName
    externalName: api.external.com  # 外部服务域名
    ports:
    - port: 80
  ```
- **注意事项**:
  - 不支持端口映射(需与外部服务端口一致)。
  - TLS 证书需匹配目标域名。

---

### 3. **Headless Service + Endpoints**
- **原理**:创建无头 Service(`ClusterIP: None`)并配置 Endpoints,直接暴露外部服务的地址。
- **适用场景**:需绕过 ClusterIP 直接访问外部服务端点。
- **配置示例**:
  ```yaml
  # Headless Service
  apiVersion: v1
  kind: Service
  metadata:
    name: external-headless
  spec:
    clusterIP: None
    ports:
    - port: 5432

  # Endpoints 同上
  ```
- **注意事项**:适用于需要直接与服务实例通信的场景


http://www.kler.cn/a/529839.html

相关文章:

  • 图像噪声处理技术:让图像更清晰的艺术
  • 如何配置Java JDK
  • 41【文件名的编码规则】
  • 【大模型LLM面试合集】大语言模型架构_MHA_MQA_GQA
  • 5.4.2 结构化设计方法+结构化程序设计方法
  • AI(计算机视觉)自学路线
  • 力扣 215. 数组中的第K个最大元素
  • AWS EMR上的Spark日志实时搜索关键指标网页呈现的设计和实现
  • 测压表压力表计量表针头针尾检测数据集VOC+YOLO格式4862张4类别
  • 使用MATLAB进行雷达数据采集可视化
  • MySQL的覆盖索引
  • Games104——网络游戏的架构基础
  • Eigen::Tensor使用帮助
  • Qt常用控件 输入类控件
  • 文本复制兼容方案最佳实现落地。
  • Node.js常用知识
  • 在Qt中,slots 关键字有什么用?
  • GIt使用笔记大全
  • 面经-C语言——指针相关概念总结
  • 1. 【.NET Aspire 从入门到实战】--理论入门与环境搭建--引言
  • vue3-element-plus-admin 框架
  • 如何让跨域文件管控简单又高效
  • Hot100之贪心算法
  • 记录一下【Facebook 】expansionToken参数逆向
  • lstm代码解析1.1
  • Ubuntu 下 nginx-1.24.0 源码分析 main函数 — ngx_cdecl 宏