k8s负载均衡

在Kubernetes中,负载均衡通常由服务对象来实现。你可以使用Service资源来暴露一个容器(或一组容器),并且提供负载均衡功能。

以下是一个简单的服务定义示例,它使用了Cluster内部负载均衡器实现(也就是说,它不暴露给外部网络,只在集群内部使用):

XML 复制代码
apiVersion: v1
kind: Service
metadata:
  name: my-service
spec:
  selector:
    app: my-app
  ports:
    - protocol: TCP
      port: 80
      targetPort: 9376

在这个例子中,my-service 服务将会将进入的流量均衡到标签为app=my-app的Pod上,这些Pod的目标端口是9376。

如果你需要一个外部负载均衡器,你可以设置type: LoadBalancer,这将依赖于你的云提供商,但大多数云服务提供商都支持这种类型的服务。

html 复制代码
apiVersion: v1
kind: Service
metadata:
  name: my-loadbalancer
spec:
  type: LoadBalancer
  selector:
    app: my-app
  ports:
    - protocol: TCP
      port: 80
      targetPort: 9376

在这个例子中,Kubernetes将为你的服务设置一个外部可访问的负载均衡器,你可以通过服务状态中的**LoadBalancer Ingress**字段找到它的IP地址。

相关推荐
运维开发故事13 小时前
基于 Arthas 的多集群在线诊断系统设计与实现
kubernetes
Patrick_Wilson2 天前
从「改个端口」到 502:Next.js on k8s 的容器端口、Service 映射与 env 覆盖
docker·kubernetes·next.js
探索云原生3 天前
K8s 1.36 这个 GA 特性,把 initContainer 拉模型的 hack 干掉了
ai·云原生·kubernetes
云恒要逆袭3 天前
运行你的第一个Docker容器
后端·docker·容器
Java之美4 天前
一次k8s升级引发的DevicePlugin注册失败
云原生·kubernetes
程序员老赵4 天前
10 分钟部署 OpenCode:Docker 一键安装,浏览器打开就能用 AI 写代码(附完整命令与排错)
docker·容器·ai编程
武子康7 天前
调查研究-183 Apple container:Mac 上用轻量 VM 跑 Linux 容器,Swift 会改写本地容器体验吗?
docker·容器·apple
2601_9618752411 天前
决战申论100题2026|最新|范文
linux·容器·centos·debian·ssh·fabric·vagrant
java_cj11 天前
深入kube-apiserver认证机制:从Bearer Token到mTLS的完整认证链解析
linux·运维·服务器·云原生·容器·kubernetes