本文介绍灰度发布新版本服务,系统运行一段时间,新版本服务稳定后,如何删除老版本服务。

前提条件

通过命令行删除

  1. 执行以下命令,编辑步骤2:发布新版本服务已经部署的yaml文件,删除老版本的服务。
    说明 请将 annotations一并删除。
    $ kubectl get ingress gray-release-02

通过控制台删除

  1. 登录容器服务管理控制台
  2. 在 Kubernetes 菜单下,单击左侧导航栏中的应用 > 路由,进入路由列表页面。
  3. 选择所需的集群和命名空间,选择前面创建的路由,并单击操作列的变更

  4. 在弹出的对话框中,对 Ingress 进行修改:
    1. 规则 > 服务区域,删除老版本服务规则。

    2. 单击更新
执行结果
  1. 返回路由列表页面,您可看到只有一条路由规则,指向新版本的 new-nginx 服务。

  2. 登录 Master 节点,执行 curl 命令,查看路由的访问情况。
    $ curl -H "Host: www.example2.com" http://<EXTERNAL_IP>


可以看到,现在的请求全部被路由到了新版本的服务中,至此完成了灰度发布的整个周期。最后,您也可以删除老版本的deployment和service。