部落格376 k8s中的幾種IP

2021-10-09 12:44:00 字數 1702 閱讀 3730

內容:記錄k8s中的幾種ip

一、node ip

可以是物理機的ip(也可能是虛擬機器ip)。每個service都會在node節點上開通乙個埠,

外部可以通過nodeip:nodeport即可訪問service裡的pod,和我們訪問伺服器部署的專案一樣,

ip:埠/專案名

在kubernetes查詢node ip:

1.kubectl get nodes

2.kubectl describe node nodename

二、pod ip

pod ip是每個pod的ip位址,他是docker engine根據docker網橋的ip位址段進行分配的,

通常是乙個虛擬的二層網路

# 同service下的pod可以直接根據podip相互通訊

# 不同service下的pod在集群間pod通訊要借助於 cluster ip

# pod和集群外通訊,要借助於node ip

在kubernetes查詢pod ip

1.kubectl get pods

2.kubectl describe pod podname

三、cluster ip

service的ip位址,此為虛擬ip位址。外部網路無法ping通,只有kubernetes集群內部訪問使用。

在kubernetes查詢cluster ip:

kubectl -n 命名空間 get service即可看到clusterip

# cluster ip僅僅作用於kubernetes service這個物件,並由kubernetes管理和分配p位址

# cluster ip無法被ping,他沒有乙個「實體網路物件」來響應

# cluster ip只能結合service port組成乙個具體的通訊埠,單獨的cluster ip不能通訊

# cluster ip 屬於kubernetes集群這樣的乙個封閉空間

# 在不同service下的pod節點在集群間相互訪問可以通過cluster ip

三種ip網路間的通訊

service位址和pod位址在不同網段,service位址為虛擬位址,不配在pod上或主機上,

外部訪問時,先到node節點網路,再轉到service網路,最後**給pod網路。

1、node ip是kubernetes集群中每個節點(伺服器)物理網絡卡的ip位址,這是乙個真實存的物理

網路(也可能是虛擬機器網路),每個節點(伺服器)之間可以通過這個網路通訊,kubernetes

集群外的機器與集群內的機器也是通過這個網路通訊。

2、pod ip是每個pod 的ip位址,它是docker engine根據docker0網路的ip段進行分配的,

通常是乙個虛擬的二層網路,預設kubernetes集群內不同node上的pod是不能通訊的,需

要對集群網路進行管理,確保pod之間可以互相通訊,pod之前的通訊是通過node ip物理

網絡卡**出去的。

3、servicede cluster ip,這是虛擬ip,只作用於service這個物件,由kubernetes

管理和分配。

K8S中的資源

k8s中所有的內容都抽象為資源,資源例項化之後,叫做物件 pod replicaset deployment,statefulset,daemonset,job,cronjob replicationcontroller 在v.11版本被廢棄 service,ingress.volume 儲存卷 c...

K8S資料遷移方法 Portworx的部落格

kubernetes改變了我們所有人對計算平台的看法。我們同樣也需要改變現代應用程式儲存資料的方式。企業越來越多地依賴數字服務來接觸客戶,傳統企業正在kubernetes上重新部署它們的it應用和服務。容器的可移植性和kubernetes自動化的好處意味著在整個it開發 測試和生產生命週期中我們可以...

k8s中的dns服務

kubernetes中有乙個很重要的特性,服務自發現。一旦乙個service被建立,該service的service ip和service port等資訊都可以被注入到pod中供它們使用。kubernetes主要支援兩種service發現 機制 環境變數和dns。沒有dns服務的時候,kuberne...