K8S Learning(8)—— Service
生活随笔
收集整理的這篇文章主要介紹了
K8S Learning(8)—— Service
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、Service簡介
利用Deployment來創建一組Pod來提供具有高可用性的服務,每個Pod都會分配一個單獨的Pod IP,卻存在以下兩個問題:
-
Pod IP 會隨著Pod的重建產生變化
-
Pod IP 僅僅是集群內可見的虛擬IP,外部無法訪問
對于訪問這個服務帶來了難度。kubernetes設計了Service來解決這個問題。
Service可以看作是一組同類Pod對外的訪問接口。借助Service,應用可以方便地實現服務發現和負載均衡。
二、Service配置
(1)命令式對象管理
# 創建集群內部可訪問的Service kubectl expose deploy tomcat --name=svc-tomcat1 --type=ClusterIP --port=80 --target-port=8080 -n mk ? # 查看service kubectl get svc svc-tomcat1 -n dev -o wide # 這里產生了一個CLUSTER-IP,這就是service的IP,在Service的生命周期中,這個地址是不會變動的# 創建集群外部也可訪問的Service # 修改type為NodePort kubectl expose deploy tomcat --name=svc-tomcat2 --type=NodePort --port=80 --target-port=8080 -n mk# 刪除Service kubectl delete svc svc-tomcat1 -n mk(2)命令式對象配置
創建一個svc-tomcat.yaml,內容如下:
apiVersion: v1 kind: Service metadata:name: svc-tomcatnamespace: dev spec:clusterIP: 172.21.12.34 #固定svc的內網ipports:- port: 80protocol: TCPtargetPort: 8080selector:name: tomcattype: ClusterIP然后就可以執行對應的創建和刪除命令了:
創建:kubectl create -f svc-tomcat.yaml
刪除:kubectl delete -f svc-tomcat.yaml
總結
以上是生活随笔為你收集整理的K8S Learning(8)—— Service的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 日本对谷歌展开反垄断调查,涉嫌要求手机默
- 下一篇: 256GB 版低过两千元:荣耀 80 G