通过Kong实现蓝绿部署

悠悠 2024-04-17 06:24 105阅读 0赞

蓝绿部署的起源

蓝绿部署的灵感起源于 “海腾”(海豚),海豚是永远不睡觉的,这是因为海豚有两个脑子,左脑和右脑,平时的时候左脑和右脑都在工作,而在休息的时候右脑是运作的以防止被攻击。

Kong的蓝绿部署简述

“蓝绿“是指蓝色环境和绿色环境,业务开始运行在蓝色环境,当要上新版本的时候,会把新版本更新在绿色环境并进行测试,确定没问题后,会把业务切换到绿色环境。依次类推,再有新版本的时候,就更新蓝色环境,然后业务切换到蓝色环境。
我理解的可能有问题,可以留言或者进群大家一起讨论

操作步骤

假设业务刚开始,我们创建一个蓝色环境:
  • 创建upstream

    upstreams/ POST

    {

    1. "name":"xjj.test.com"

    }

  • 创建target

    /upstreams/aab0d933-e0c8-4034-a4f1-4c1954567cff/targets

    {

    1. "target":"172.16.0.92:8899"

    }

  • aab0d933-e0c8-4034-a4f1-4c1954567cff 这个是第一步创建的upstream的id
  • 172.16.0.92:8899 这个是我自己写的一个服务的ip和端口
  • 创建service

    /services/ POST
    {
    “name”: “xjj.test.com”,
    “protocol”:”http”,
    “host”:”xjj.test.com”,
    “path”:”/“,
    “read_timeout”:6000
    }

  • 创建路由

    /routes/ POST
    {
    “protocols”: [“http”],
    “methods”: [“GET”],
    “paths”: [“/“],
    “service”:{“id”:”6a74901b-a7ab-4924-af49-215b73c6c801”}
    }

  • 6a74901b-a7ab-4924-af49-215b73c6c801这个是上面创建的service的id
    目前的流程是:
    在这里插入图片描述
  • 测试一下服务
    在这里插入图片描述

现在服务要升级了, 我们创建绿色环境

  • 创建upstreams

    /upstreams/ POST

    {

    1. "name":"xjj.v2.test.com"

    }

  • 创建target

    /upstreams/426362c1-e6eb-4542-9a33-931902718249/targets POST
    {

    1. "target":"172.16.0.92:8810"

    }

  • 426362c1-e6eb-4542-9a33-931902718249新创建的upstream的ID
  • 172.16.0.92:8810 新版本的服务
  • 切换到绿色环境

    services/6a74901b-a7ab-4924-af49-215b73c6c801 PATCH

    {
    “name”: “xjj.test.com”,
    “protocol”:”http”,
    “host”:”xjj.v2.test.com”,
    “path”:”/“,
    “read_timeout”:6000
    }

  • 访问测试
    在这里插入图片描述

  • 现在的流程是:
    在这里插入图片描述

先写到这里了,有问题进QQ群630300475

发表评论

表情:
评论列表 (有 0 条评论,105人围观)

还没有评论,来说两句吧...

相关阅读

    相关 通过Kong实现绿部署

    蓝绿部署的起源 蓝绿部署的灵感起源于 “海腾”(海豚),海豚是永远不睡觉的,这是因为海豚有两个脑子,左脑和右脑,平时的时候左脑和右脑都在工作,而在休息的时候右脑是运作...