k8s學習記錄4_通訊原理

1,通訊方式,k8s網絡模型是期望pod在一個直接連通的扁平的網絡空間中。

            從pod角度來看是所有pod都可以通過ip“直接”到達。直接加引號,下面會看到如何實現。

2,openstack中使用了ovs+trunk的方式實現了扁平化網絡,待會後面會對比k8s的實現方式,大同小異,都是報頭跟udp。

3,同一個pod之間通過pause,用同一個網卡跟io可以直接訪問。

4,pod跟service之間,主要通過ipTables規則,最新版本已經可以使用lvs。

5, 跨節點之間的pod之間的交互,首先在扁平化網絡中,它們的ip是不能衝突的,因此全集羣唯一。

6,跨主機的pod之間的通信,進行了一層封裝,docker內部甚至不感知,主要是分爲innerIP和outerIP通過upd的方式在局域網裏廣播。

7,ETCD中存儲了IP映射信息,還有就是docker中不會存數據,全部存在etcd中,因此一個pod掛了也沒事,讓另外一個執行就好了。

8,總結:同個pod內,共享網絡命名空間;

pod1->pod2使用inner和outer加報頭形式轉發,

pod到service主要是iptables,最新的使用了lvs。

pod訪問外網:路由等

外網訪問pod:service

 

9,可參加下以下博文

https://www.cnblogs.com/yaohong/archive/2019/09/08/11478749.html

10,pod不穩定因此引入了service的概念,然後label來查找pod。 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章