這篇文章將為大家詳細講解有關(guān)如何進行Network Policy中Canal的部署 ,文章內(nèi)容質(zhì)量較高,因此小編分享給大家做個參考,希望大家閱讀完這篇文章后對相關(guān)知識有一定的了解。
我們注重客戶提出的每個要求,我們充分考慮每一個細節(jié),我們積極的做好網(wǎng)站制作、網(wǎng)站設計服務,我們努力開拓更好的視野,通過不懈的努力,創(chuàng)新互聯(lián)贏得了業(yè)內(nèi)的良好聲譽,這一切,也不斷的激勵著我們更好的服務客戶。 主要業(yè)務:網(wǎng)站建設,網(wǎng)站制作,網(wǎng)站設計,微信平臺小程序開發(fā),網(wǎng)站開發(fā),技術(shù)開發(fā)實力,DIV+CSS,PHP及ASP,ASP.Net,SQL數(shù)據(jù)庫的技術(shù)開發(fā)工程師。
Network Policy 是 Kubernetes 的一種資源。Network Policy 通過 Label 選擇 Pod,并指定其他 Pod 或外界如何與這些 Pod 通信。
默認情況下,所有 Pod 是非隔離的,即任何來源的網(wǎng)絡流量都能夠訪問 Pod,沒有任何限制。當為 Pod 定義了 Network Policy,只有 Policy 允許的流量才能訪問 Pod。
不過,不是所有的 Kubernetes 網(wǎng)絡方案都支持 Network Policy。比如 Flannel 就不支持,Calico 是支持的。我們接下來將用 Canal 來演示 Network Policy。Canal 這個開源項目很有意思,它用 Flannel 實現(xiàn) Kubernetes 集群網(wǎng)絡,同時又用 Calico 實現(xiàn) Network Policy。
部署 Canal 與部署其他 Kubernetes 網(wǎng)絡方案非常類似,都是在執(zhí)行了 kubeadm init
初始化 Kubernetes 集群之后通過 kubectl apply
安裝相應的網(wǎng)絡方案。也就是說,沒有太好的辦法直接切換使用不同的網(wǎng)絡方案,基本上只能重新創(chuàng)建集群。
要銷毀當前集群,最簡單的方法是在每個節(jié)點上執(zhí)行 kubeadm reset
。然后就可以按照我們在前面 “部署 Kubernetes Cluster” 一章的 “初始化 Master” 小節(jié)中的方法初始化集群。
kubeadm init --apiserver-advertise-address 192.168.56.105 --pod-network-cidr=10.244.0.0/16
然后按照文檔 https://kubernetes.io/docs/setup/independent/create-cluster-kubeadm/ 安裝 Canal。文檔列出了各種網(wǎng)絡方案的安裝方法:
執(zhí)行如下命令部署 Canal
kubectl apply -f https://raw.githubusercontent.com/projectcalico/canal/master/k8s-install/1.7/rbac.yaml
kubectl apply -f https://raw.githubusercontent.com/projectcalico/canal/master/k8s-install/1.7/canal.yaml
部署成功后,可以查看到 Canal 相關(guān)組件:
Canal 作為 DaemonSet 部署到每個節(jié)點,地屬于 kube-system
這個 namespace。
關(guān)于如何進行Network Policy中Canal的部署 就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。