Kubernetes & Docker 的預設網段筆記
目錄
此篇記錄 Kubernetes ( use Weave-cni ) 的預設網段以及 Docker 預設網段,並且說明如何進行網段調整。
全預設網段
Docker (custom bridge) 為使用 ‘docker create network’ 命令後產生的新的 docker 內部網路。
由於預設網路 (default bridge) 中的 docker container 無法使用網路別名進行溝通,必須自行建立一個自訂網路來使用網路別名。
依照 Docker 產生新網路的邏輯,在預設不特別給定 subnet 的情況下,會在第二碼逐步遞增;未測試預設使用的網段最大值,正常來說也不大需要開到這麼多網段。
Used For | Subnet | GenMask | Start | End |
---|---|---|---|---|
Kubernetes (Weave-cni) | 10.32.0.0/12 | 255.240.0.0 | 10.32.0.1 | 10.47.255.254 |
Docker (default bridge) | 172.17.0.0/16 | 255.255.0.0 | 172.17.0.1 | 172.17.255.254 |
Docker (custom bridge1) | 172.18.0.0/16 | 255.255.0.0 | 172.18.0.1 | 172.18.255.254 |
Docker (custom bridge2) | 172.19.0.0/16 | 255.255.0.0 | 172.18.0.1 | 172.18.255.254 |
Weave.net cni 預設網段調整方式
安裝 Weave.net cni 時設定
安裝語法如下
kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')&env.IPALLOC_RANGE=172.30.0.0/16"
kubectl delete -f "https://cloud.weave.works/k8s/net?k8s-version=$(kubectl version | base64 | tr -d '\n')&env.IPALLOC_RANGE=172.30.0.0/16"
Docker 預設網段調整方式
使用 vi 編輯 /etc/docker/daemon.json
{
"default-address-pools": [
{"base":"10.48.0.0/14","size":16}
],
"bip": "10.48.0.1/16"
}
1 default-address-pools 說明
base = 可使用網段範圍 size = 每一個 bridge 網段大小
2 base 設定 10.48.0.0/14 時 Docker 可使用的網段如下
Used For | Subnet | GenMask | Start | End |
---|---|---|---|---|
Docker (default bridge) | 10.48.0.0/16 | 255.240.0.0 | 10.48.0.1 | 10.48.255.254 |
Docker (custom bridge) | 10.49.0.0/16 | 255.255.0.0 | 10.49.0.1 | 10.49.255.254 |
Docker (custom bridge) | 10.50.0.0/16 | 255.255.0.0 | 10.50.0.1 | 10.50.255.254 |
Docker (custom bridge) | 10.51.0.0/16 | 255.255.0.0 | 10.51.0.1 | 10.51.255.254 |
3 base 設定 10.48.0.0/15 時 Docker 可使用的網段如下
Used For | Subnet | GenMask | Start | End |
---|---|---|---|---|
Docker (default bridge) | 10.48.0.0/16 | 255.255.0.0 | 10.48.0.1 | 10.48.255.254 |
Docker (custom bridge) | 10.49.0.0/16 | 255.255.0.0 | 10.49.0.1 | 10.49.255.254 |
4 調整完畢後的網段表 - 以 base 設定 10.48.0.0/15 為例
Used For | Subnet | GenMask | Start | End |
---|---|---|---|---|
Kubernetes (Weave-cni) | 10.32.0.0/12 | 255.240.0.0 | 10.32.0.1 | 10.47.255.254 |
Docker (default bridge) | 10.48.0.0/16 | 255.255.0.0 | 10.48.0.1 | 10.48.255.254 |
Docker (custom bridge) | 10.49.0.0/16 | 255.255.0.0 | 10.49.0.1 | 10.49.255.254 |