我有一个 Kubernetes 集群。它使用 flannel 来提供网络功能。它关闭了 cni 网络插件。
但是,flannel 不支持 kubernetes 网络策略,我将对其进行测试。我想要的是保留现有的网络配置,并以仅策略模式安装 calico。
Canal是一个结合了法兰绒和印花布的项目。但是它将 flannel 和 calico 都视为 cni 插件。
我将canal_etcd_tls.yaml更改为仅安装策略印花布。不幸的是,它效果不佳。这是我更改的 cni 网络配置:
{
"name": "calico",
"cniVersion": "0.3.0",
"plugins": [
{
"type": "calico",
"etcd_endpoints": "__ETCD_ENDPOINTS__",
"etcd_key_file": "__ETCD_KEY_FILE__",
"etcd_cert_file": "__ETCD_CERT_FILE__",
"etcd_ca_cert_file": "__ETCD_CA_CERT_FILE__",
"log_level": "info",
"policy": {
"type": "k8s",
"k8s_api_root": "https://__KUBERNETES_SERVICE_HOST__:__KUBERNETES_SERVICE_PORT__",
"k8s_auth_token": "__SERVICEACCOUNT_TOKEN__"
},
"kubernetes": {
"kubeconfig": "/etc/cni/net.d/__KUBECONFIG_FILENAME__"
}
}
]
}
那么,有没有一种方法可以将仅策略的 calico 安装为 cni 插件,并保持现有的无 cni 法兰绒工作?