LoadBalancer配置
1.配置
# app1-service.yaml
apiVersion: v1
kind: Service
metadata:name: app1-service
spec:selector:app: app1ports:- protocol: TCPport: 80targetPort: 80type: LoadBalancer # 类型为LoadBalancer
---
# app2-service.yaml
apiVersion: v1
kind: Service
metadata:name: app2-service
spec:selector:app: app2ports:- protocol: TCPport: 80targetPort: 80type: LoadBalancer # 类型为LoadBalancer
---
# api-service.yaml
apiVersion: v1
kind: Service
metadata:name: api-service
spec:selector:app: apiports:- protocol: TCPport: 80targetPort: 80type: LoadBalancer # 类型为LoadBalancer
三个独立的公网IP:云平台会为每个LoadBalancer Service分配一个唯一的外部IP。
app1-service
->11.22.33.44
app2-service
->55.66.77.88
api-service
->99.00.11.22
访问方式:
访问App1:
http://11.22.33.44
或http://app1.com
(需将域名app1.com
解析到11.22.33.44
)访问App2:
http://55.66.77.88
或http://app2.com
(需将域名app2.com
解析到55.66.77.88
)访问API:
http://99.00.11.22
或http://api.app1.com
(需将域名api.app1.com
解析到99.00.11.22
)
核心问题:
成本高:在公有云上,每个负载均衡器都是一个独立的收费资源,价格不菲。
管理复杂:需要管理三个外部IP和三个负载均衡器。
浪费资源:每个服务哪怕流量很小,也需要独占一个负载均衡器。