W3Cschool
恭喜您成為首批注冊(cè)用戶
獲得88經(jīng)驗(yàn)值獎(jiǎng)勵(lì)
FEATURE STATE: Kubernetes v1.23 [stable]
你的集群包含雙協(xié)議棧組網(wǎng)支持, 這意味著集群網(wǎng)絡(luò)允許你在兩種地址族間任選其一。在集群中,控制面可以為同一個(gè) Pod 或者 Service 同時(shí)賦予 IPv4 和 IPv6 地址。
你需要已經(jīng)遵從安裝 kubeadm 中所給的步驟安裝了 kubeadm 工具。
針對(duì)你要作為節(jié)點(diǎn)使用的每臺(tái)服務(wù)器, 確保其允許 IPv6 轉(zhuǎn)發(fā)。在 Linux 節(jié)點(diǎn)上,你可以通過以 root 用戶在每臺(tái)服務(wù)器上運(yùn)行 ?sysctl -w net.ipv6.conf.all.forwarding=1
? 來(lái)完成設(shè)置。
你需要一個(gè)可以使用的 IPv4 和 IPv6 地址范圍。集群操作人員通常為 IPv4 使用 私有地址范圍。對(duì)于 IPv6,集群操作人員通常會(huì)基于分配給該操作人員的地址范圍, 從 ?2000::/3
? 中選擇一個(gè)全局的單播地址塊。你不需要將集群的 IP 地址范圍路由 到公眾互聯(lián)網(wǎng)。
Note:
如果你在使用 ?kubeadm upgrade
? 命令升級(jí)現(xiàn)有的集群,?kubeadm
?不允許更改 Pod 的 IP 地址范圍(“集群 CIDR”),也不允許更改集群的服務(wù)地址范圍(“Service CIDR”)。
要使用 ?kubeadm init
? 創(chuàng)建一個(gè)雙協(xié)議棧集群,你可以傳遞與下面的例子類似的命令行參數(shù):
# 這里的地址范圍僅作示例使用
kubeadm init --pod-network-cidr=10.244.0.0/16,2001:db8:42:0::/56 --service-cidr=10.96.0.0/16,2001:db8:42:1::/112
為了更便于理解,參看下面的名為 ?kubeadm-config.yaml
? 的 kubeadm 配置文件, 該文件用于雙協(xié)議??刂泼娴闹骺刂乒?jié)點(diǎn)。
---
apiVersion: kubeadm.k8s.io/v1beta3
kind: ClusterConfiguration
networking:
podSubnet: 10.244.0.0/16,2001:db8:42:0::/56
serviceSubnet: 10.96.0.0/16,2001:db8:42:1::/112
---
apiVersion: kubeadm.k8s.io/v1beta3
kind: InitConfiguration
localAPIEndpoint:
advertiseAddress: "10.100.0.1"
bindPort: 6443
nodeRegistration:
kubeletExtraArgs:
node-ip: 10.100.0.2,fd00:1:2:3::2
InitConfiguration 中的 ?advertiseAddress
?給出 API 服務(wù)器將公告自身要監(jiān)聽的 IP 地址。?advertiseAddress
?的取值與 ?kubeadm init
? 的標(biāo)志 ?--apiserver-advertise-address
? 的取值相同。
運(yùn)行 kubeadm 來(lái)實(shí)例化雙協(xié)議??刂泼婀?jié)點(diǎn):
kubeadm init --config=kubeadm-config.yaml
kube-controller-manager 標(biāo)志 ?--node-cidr-mask-size-ipv4|--node-cidr-mask-size-ipv6
? 是使用默認(rèn)值來(lái)設(shè)置的。
Note:
標(biāo)志 ?--apiserver-advertise-address
? 不支持雙協(xié)議棧。
在添加節(jié)點(diǎn)之前,請(qǐng)確保該節(jié)點(diǎn)具有 IPv6 可路由的網(wǎng)絡(luò)接口并且啟用了 IPv6 轉(zhuǎn)發(fā)。
下面的名為 ?kubeadm-config.yaml
? 的 kubeadm 配置文件 示例用于向集群中添加工作節(jié)點(diǎn)。
apiVersion: kubeadm.k8s.io/v1beta3
kind: JoinConfiguration
discovery:
bootstrapToken:
apiServerEndpoint: 10.100.0.1:6443
token: "clvldh.vjjwg16ucnhp94qr"
caCertHashes:
- "sha256:a4863cde706cfc580a439f842cc65d5ef112b7b2be31628513a9881cf0d9fe0e"
# 請(qǐng)更改上面的認(rèn)證信息,使之與你的集群中實(shí)際使用的令牌和 CA 證書匹配
nodeRegistration:
kubeletExtraArgs:
node-ip: 10.100.0.3,fd00:1:2:3::3
下面的名為 ?kubeadm-config.yaml
? 的 kubeadm 配置文件 示例用于向集群中添加另一個(gè)控制面節(jié)點(diǎn)。
apiVersion: kubeadm.k8s.io/v1beta3
kind: JoinConfiguration
controlPlane:
localAPIEndpoint:
advertiseAddress: "10.100.0.2"
bindPort: 6443
discovery:
bootstrapToken:
apiServerEndpoint: 10.100.0.1:6443
token: "clvldh.vjjwg16ucnhp94qr"
caCertHashes:
- "sha256:a4863cde706cfc580a439f842cc65d5ef112b7b2be31628513a9881cf0d9fe0e"
# 請(qǐng)更改上面的認(rèn)證信息,使之與你的集群中實(shí)際使用的令牌和 CA 證書匹配
nodeRegistration:
kubeletExtraArgs:
node-ip: 10.100.0.4,fd00:1:2:3::4
JoinConfiguration.controlPlane 中的 ?advertiseAddress
?設(shè)定 API 服務(wù)器將公告自身要監(jiān)聽的 IP 地址。?advertiseAddress
?的取值與 ?kubeadm join
? 的標(biāo)志 ?--apiserver-advertise-address
? 的取值相同。
kubeadm join --config=kubeadm-config.yaml
Note:
雙協(xié)議棧支持并不意味著你需要使用雙協(xié)議棧來(lái)尋址。 你可以部署一個(gè)啟用了雙協(xié)議棧聯(lián)網(wǎng)特性的單協(xié)議棧集群。
為了更便于理解,參看下面的名為 ?kubeadm-config.yaml
? 的 kubeadm 配置文件示例, 該文件用于單協(xié)議??刂泼婀?jié)點(diǎn)。
apiVersion: kubeadm.k8s.io/v1beta3
kind: ClusterConfiguration
networking:
podSubnet: 10.244.0.0/16
serviceSubnet: 10.96.0.0/16
Copyright©2021 w3cschool編程獅|閩ICP備15016281號(hào)-3|閩公網(wǎng)安備35020302033924號(hào)
違法和不良信息舉報(bào)電話:173-0602-2364|舉報(bào)郵箱:jubao@eeedong.com
掃描二維碼
下載編程獅App
編程獅公眾號(hào)
聯(lián)系方式:
更多建議: