iT邦幫忙

2024 iThome 鐵人賽

DAY 7
0

基本上網路的基礎知識都介紹完了,接下來就要進入容器的網路了(Kubernetes 的 CNI 還要再等等)。

各位應該都知道容器能可以到資源隔離,包含 CPU、記憶體、檔案系統以及網路都能進行隔離(namespace 負責資源隔離,cgroups 負責資源限制)。
這時問題就出來了,CPU、記憶體這些資源進行隔離是沒什麼問題,但網路跟著隔離就不對勁了。因為網路需要與其他裝置進行連接,並互相交換數據,就像我們開個後端服務,總是需要網路讓其他人能夠進行連線才對吧。

因此這時候就需要有一個能夠進行隔離、但依然能夠進行資料傳輸的方式來負責容器網路的隔離。
最為簡單的方式就是在容器跟宿主機之間建立一個隧道,使宿主機收到的網路可以通過隧道進到容器中,而這個方案就是 veth-pair 。

veth-pair 可以將網路封包送入宿主機的網路介面,經過隧道後從容器中的網路介面出來,這樣容器中的服務就可以收到封包了。反過來說,容器中的服務將網路封包送入容器中的網路介面,經過隧道後從宿主機的網路介面出來。
透過這種方式,容器就可以接收及發送網路封包了。

那今天就到這邊,各位明天再見。


上一篇
Day 06 overlay & underlay 網路
下一篇
Day 08 入門 Kubernetes CNI — flannel
系列文
Kubernetes 中關於網路的二三事30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言