一、Service的詳細作用
負載均衡,外網訪問,DNS服務的搭建,Ingress7層路由機制
yaml格式的Service定義文件的完整內容如下:
apiVersion: v1 //Required
kind: Service //Required
metadata: //Required
name: string //Required
namespace: string //Required
labels:
- name: string
annotations:
- name: string
spec: //Required
selector: [] //Required
type: string //Required
clusterIP: string
sessionAffinity: string
ports:
- name: string
- protocol: string
- port: int
- targetPort: init
- nodePort: int
status:
loadBalancer:
ingress:
ip: string
hostname: string
創建服務
kubectl create -f servicexx.yaml
獲得Pod的IP地址:
kubectl get pods -l app=webapp -o yaml |grep podIP
kubernetes提供了兩種負載分發策略:RoundRobin和SessionAffinity
RoundRobin:輪詢模式,輪詢將請求轉發到後端各個pod上
SessionAffinity:基於客戶端IP地址進行會話保持的模式
可以通過service.spec.sessionAffinity=ClientIP來啓用SessionAffinity策略
集羣的自動添加,我們可以用
kubectl scale rc xxxxx --replicas = 2
更多技術文章請關注公衆號:架構師Plus,
掃碼添加