【问题标题】:Is it possible to change the CNI plugin to Calico in GKE?是否可以在 GKE 中将 CNI 插件更改为 Calico?
【发布时间】:2021-11-21 15:37:28
【问题描述】:

似乎 EKS (AWS) 支持某些 CNI here,但我们找不到任何类似的 GKE (GCP) 文档

是否可以更改 GKE 集群的 CNI 插件?我可以将 GKE v1.18.x 集群的 CNI 更改为具有 IP-in-IP 封装的 Calico 吗?

【问题讨论】:

    标签: google-cloud-platform google-kubernetes-engine calico


    【解决方案1】:

    正如 Gari 的反馈中提到的,您可以按照后续步骤来启用网络策略实施。

    Enabling network policy enforcement

    网络策略实施内置于 GKE Dataplane V2。您无需在使用 GKE Dataplane V2 的集群中启用网络策略实施。

    当您在不使用 GKE Dataplane V2 的 GKE 集群中启用网络策略实施时,GKE 会在该集群内管理和实施网络策略。

    注意:

    默认情况下,为您的集群启用网络策略强制执行也会启用对集群节点的强制执行。

    您可以使用 gcloud 工具、Google Cloud Console 或 GKE API 在 GKE 中启用网络策略实施。

    要在创建新集群时启用网络策略实施,请运行以下命令:

    gcloud container clusters create CLUSTER_NAME --enable-network-policy
    

    将 CLUSTER_NAME 替换为新集群的名称。

    要为现有集群启用网络策略实施,请执行以下任务:

    1. 运行以下命令启用插件:
    gcloud container clusters update CLUSTER_NAME --update-addons=NetworkPolicy=ENABLED
    

    将 CLUSTER_NAME 替换为集群的名称。

    1. 运行以下命令以在您的集群上启用网络策略实施,从而重新创建启用网络策略实施的集群节点池:
    gcloud container clusters update CLUSTER_NAME --enable-network-policy
    

    【讨论】:

    • 感谢@Arden 的回复。我们是否有机会选择具有 IP-in-IP 封装的 Calico 特定版本?
    • 你好奥利,不可能
    【解决方案2】:

    GKE 通过在不使用 Dataplane V2 的集群中实施网络策略来内置对 Calico 的支持。

    您可以在现有集群上启用网络策略实施:

    gcloud container clusters update CLUSTER_NAME --update-addons=NetworkPolicy=ENABLED
    

    然后为现有的节点池启用它(将被重新创建):

    gcloud container clusters update CLUSTER_NAME --enable-network-policy
    

    这实际上安装了 Calico,因此您应该可以访问整个 Calico API。

    【讨论】:

    • 谢谢!为您解答。我们想切换到 Calico 作为我们集群的 CNI 插件,而不仅仅是启用 N/W 策略。那么有可能吗?
    • 如果您启用 N/W 策略插件,它会在幕后安装 Calico,因此您还应该能够使用除 N/W 策略之外的其他 Calico 功能。
    • 感谢加里的回复。我们是否有机会选择具有 IP-in-IP 封装的 Calico CNI 的特定版本?
    • 很遗憾没有
    • 谢谢!!非常。很有帮助。
    猜你喜欢
    • 2021-10-26
    • 1970-01-01
    • 2019-05-22
    • 2017-07-02
    • 1970-01-01
    • 1970-01-01
    • 2018-04-15
    • 2021-12-21
    • 1970-01-01
    相关资源
    最近更新 更多