五月婷婷丁香性爱|j久久一级免费片|久久美女福利视频|中文观看在线观看|加勒比四区三区二|亚洲裸女视频网站|超碰97AV在线69网站免费观看|有码在线免费视频|久久青青日本视频|亚洲国产AAAA

什么是服務(Service)


直接訪問Pod的問題

Pod創(chuàng)建完成后,如何訪問Pod呢?直接訪問Pod會有如下幾個問題:

  1. Pod會隨時被Deployment這樣的控制器刪除重建,那訪問Pod的結果就會變得不可預知。
  2. Pod的IP地址是在Pod啟動后才被分配,在啟動前并不知道Pod的IP地址。
  3. 應用往往都是由多個運行相同鏡像的一組Pod組成,逐個訪問Pod也變得不現實。

舉個例子,假設有這樣一個應用程序,使用Deployment創(chuàng)建了前臺和后臺,前臺會調用后臺做一些計算處理。后臺運行了3個Pod,這些Pod是相互獨立且可被替換的,當Pod出現狀況被重建時,新建的Pod的IP地址是新IP,前臺的Pod無法直接感知。


使用Service解決Pod的訪問問題

Kubernetes中的Service對象就是用來解決上述Pod訪問問題的。Service有一個固定IP地址(在創(chuàng)建CCE集群時有一個服務網段的設置,這個網段專門用于給Service分配IP地址),Service將訪問它的流量轉發(fā)給Pod,具體轉發(fā)給哪些Pod通過Label來選擇,而且Service可以給這些Pod做負載均衡。

那么對于上面的例子,為后臺添加一個Service,通過Service來訪問Pod,這樣前臺Pod就無需感知后臺Pod的變化。

如何創(chuàng)建服務(Service)

集群內訪問(ClusterIP)

集群內訪問表示工作負載暴露給同一集群內其他工作負載訪問的方式,通過集群的內部 IP 暴露服務,選擇該值時服務只能夠在集群內部訪問。

通過集群內部域名訪問的格式為“<服務名稱>.<工作負載所在命名空間>.svc.cluster.local:<端口號>”,例如“nginx.default.svc.cluster.local:80”。

節(jié)點訪問(NodePort)

節(jié)點訪問 ( NodePort )是指在每個節(jié)點的IP上開放一個靜態(tài)端口,通過靜態(tài)端口對外暴露服務。節(jié)點訪問 ( NodePort )會路由到ClusterIP服務,這個ClusterIP服務會自動創(chuàng)建。通過請求 <NodeIP>:<NodePort>,可以從集群的外部訪問一個NodePort服務。

負載均衡(LoadBalancer)

負載均衡(LoadBalancer)類型的服務可以通過彈性負載均衡(ELB)從公網訪問到工作負載,與彈性IP方式相比提供了高可靠的保障。負載均衡訪問方式由公網彈性負載均衡服務地址以及設置的訪問端口組成,例如“10.117.117.117:80”。

在訪問負載均衡類型的服務時,從ELB過來的流量會先訪問到節(jié)點,然后通過Service轉發(fā)到Pod。

DNAT網關(DNAT)

“DNAT網關”可以為集群節(jié)點提供網絡地址轉換服務,使多個節(jié)點可以共享使用彈性IP。

NAT網關與彈性IP方式相比增強了可靠性,彈性IP無需與單個節(jié)點綁定,任何節(jié)點狀態(tài)的異常不影響其訪問。訪問方式由公網彈性IP地址以及設置的訪問端口組成,例如“10.117.117.117:80”。

常見問題

常見問題

更多常見問題????????????????

???????????????更多常見問題

  • 集群內部無法使用ELB地址訪問負載

    當LoadBalancer Service設置了服務親和為節(jié)點級別,即externalTrafficPolicy取值為Local時,在使用中可能會碰到從集群內部(節(jié)點上或容器中)使用ELB地址訪問不通的情況。

    解決這個問題通常有如下辦法:

    ·(推薦)在集群內部訪問使用Service的ClusterIP或服務域名訪問。

    ·將Service的externalTrafficPolicy設置為Cluster,即集群級別服務親和。不過需要注意這會影響源地址保持。

    ·使用Service的pass-through特性,使用ELB地址訪問時繞過kube-proxy,先訪問ELB,經過ELB再訪問到負載。

    更多詳情請參考此文檔。


  • 使用CCE設置工作負載訪問方式時,端口如何填寫?

    CCE支持工作負載的內部互訪和被互聯(lián)網訪問兩種方式。

    在設置工作負載訪問方式時,一般需要填寫兩個端口號,分別為“容器端口”和“訪問端口”。

    “容器端口”指容器中應用程序的訪問端口。端口根據每個業(yè)務的不同而不同,一般在容器鏡像中已指定。

    “訪問端口”,需根據選擇訪問類型的不同來填寫。

    1. · ClusterIP:指該容器工作負載發(fā)布為服務后,所設定的服務端口號,請?zhí)顚?-65535之間的整數值。在內部工作負載互訪時,將通過“Cluster IP:訪問端口”來訪問。
    2. · NodePort:指容器映射到節(jié)點上的端口。配置完成后,系統(tǒng)會在用戶所在項目的所有節(jié)點上打開一個真實的端口號。訪問工作負載時可以通過“節(jié)點IP:訪問端口”來訪問工作負載。如無特殊需求,選擇“自動生成”即可,系統(tǒng)會自動分配訪問端口號。若選擇“指定端口”,請?zhí)顚?0000-32767之間的整數,且確保集群內該值唯一。
    3. · LoadBalancer:代表負載均衡上注冊的對外端口,外部訪問使用ELB的VIP+服務端口。
  • Service事件:Have no node to bind,如何排查?

    1.登錄CCE控制臺,進入集群,在左側導航欄選擇“服務發(fā)現”。

    2.在service列表里確認此服務是否有關聯(lián)的工作負載,或關聯(lián)的工作負載的相關實例是否正常。

  • 節(jié)點無法連接互聯(lián)網(公網),如何排查定位?

    排查項一:節(jié)點是否綁定彈性IP

    登錄ECS控制臺,查看節(jié)點對應的彈性云服務器是否已綁定彈性IP。

    如下圖,若彈性IP一欄有IP地址,表示已綁定彈性IP。若沒有,請為彈性云服務器綁定彈性IP。


    排查項二:節(jié)點是否配置網絡ACL

    登錄VPC控制臺,單擊左側導航欄的“訪問控制 > 網絡ACL”。排查節(jié)點所在集群的子網是否配置了網絡ACL,并限制了外部訪問。

  • 服務發(fā)布到ELB,ELB的后端為何會被自動刪除?

    1.創(chuàng)建ELB時候,如果ELB監(jiān)控檢查失敗,后端服務器組會刪除,而且后續(xù)服務正常以后也不會添加。如果是更新已有的SVC時則不會刪除。

    2.添加刪除節(jié)點的時候,由于集群狀態(tài)的改變,可能會引起集群內的Node訪問方式的改變,為保證服務正常運行,所以ELB會進行一次刷新操作,這個過程類似于更新ELB。