1. 程式人生 > 其它 >【K8s網路】為本地部署安裝 Calico 網路和網路策略

【K8s網路】為本地部署安裝 Calico 網路和網路策略

參考:https://docs.projectcalico.org/getting-started/kubernetes/self-managed-onprem/onpremises

確定您的資料儲存

Kubernetes API資料儲存是Kubernetes工作負載推薦的資料儲存。

注意 : 不建議將 etcd 資料庫用於新安裝。 但是,如果您將 Calico 作為 OpenStack 和 Kubernetes 的網路外掛執行,則它是一個選項。

在節點上安裝 Calico

根據您的資料儲存和節點數量,選擇下面的選項以安裝 Calico。

注意 :超過 50 個節點使用 Kubernetes API 資料儲存提供擴充套件 Typha 守護程序。 etcd 不包含 Typha,因為 etcd 已經處理了許多客戶端,因此使用 Typha 是多餘的,不推薦使用。

使用 Kubernetes API 資料儲存安裝 Calico,50 個或更少節點

1.下載 Kubernetes API 資料儲存的 Calico 網路清單。

curl https://docs.projectcalico.org/manifests/calico.yaml -O

2.如果您使用的是 pod CIDR 192.168.0.0/16,跳到下一步。 如果您在 kubeadm 中使用不同的 pod CIDR,則無需更改 - Calico 將根據執行配置自動檢測 CIDR。 對於其他平臺,請確保取消對清單中的 CALICO_IPV4POOL_CIDR 變數的註釋,並將其設定為與您選擇的 pod CIDR 相同的值。

3.根據需要自定義清單(https://docs.projectcalico.org/getting-started/kubernetes/installation/config-options)。

4.使用以下命令應用清單。

kubectl apply -f calico.yaml

預設部署的細節如下:

使用 Kubernetes API 資料儲存安裝 Calico,超過 50 個節點

1.下載 Kubernetes API 資料儲存的 Calico 網路清單。

curl https://docs.projectcalico.org/manifests/calico-typha.yaml -o calico.yaml

2.如果您使用的是 pod CIDR 192.168.0.0/16,跳到下一步。 如果您在 kubeadm 中使用不同的 pod CIDR,則無需更改 - Calico 將根據執行配置自動檢測 CIDR。 對於其他平臺,請確保取消對清單中的 CALICO_IPV4POOL_CIDR 變數的註釋,並將其設定為與您選擇的 pod CIDR 相同的值。

3.將calico-typha命名的Deployment副本計數修改為所需的數量

apiVersion: apps/v1beta1
kind: Deployment
metadata:
  name: calico-typha
  ...
spec:
  ...
  replicas: <number of replicas>

我們建議每 200 個節點至少有一個副本,並且不超過 20 個副本。 在生產中,我們建議至少三個副本以減少滾動升級和故障的影響。 副本數應始終小於節點數,否則滾動升級將停止。

警告 :如果你設定 typha_service_name並設定 Typha 部署副本 計數到 0,Felix 將不會啟動。

4.如果需要,自定義清單(https://docs.projectcalico.org/getting-started/kubernetes/installation/config-options)。

5.應用清單。

kubectl apply -f calico.yaml

部署的細節如下:

使用 etcd 資料儲存安裝 Calico

注意: 不建議將 etcd 資料庫用於新安裝。 但是,如果您將 Calico 作為 OpenStack 和 Kubernetes 的網路外掛執行,則它是一個選項。

1.下載 etcd 的 Calico 網路清單。

curl https://docs.projectcalico.org/manifests/calico-etcd.yaml -o calico.yaml

2.如果您使用的是 pod CIDR 192.168.0.0/16,跳到下一步。 如果您在 kubeadm 中使用不同的 pod CIDR,則無需更改 - Calico 將根據執行配置自動檢測 CIDR。 對於其他平臺,請確保取消對清單中的 CALICO_IPV4POOL_CIDR 變數的註釋,並將其設定為與您選擇的 pod CIDR 相同的值。

3.在 calico-config 命名的 ConfigMap 裡面,設定 etcd_endpoints 值到您的 etcd 伺服器的 IP 地址和埠。

提示 :您可以指定多個 etcd_endpoint,使用逗號作為分隔符。

4.如果需要,可以 自定義清單(https://docs.projectcalico.org/getting-started/kubernetes/installation/config-options)。

5.使用以下命令應用清單。

kubectl apply -f calico.yaml

部署的細節如下:

作者:Varden 出處:http://www.cnblogs.com/varden/ 本文內容如有雷同,請聯絡作者! 本文版權歸作者和部落格園共有,歡迎轉載,但未經作者同意必須保留此段宣告,且在文章頁面明顯位置給出原文連線,否則保留追究法律責任的權利。