资讯专栏INFORMATION COLUMN

如何通过Rancher webhook微服务实现Service/Host的弹性伸缩

leone / 1687人阅读

摘要:概述结合大家的应用场景,本篇旨在介绍如何通过的微服务来实现的弹性伸缩。流程介绍创建服务对象。通过阿里云创建实例对象,打上标签。第三方触发,完成弹性伸缩。环境准备,,,,,均可部署。本次准备的引擎版本是。

概述

结合大家CICD的应用场景,本篇Blog旨在介绍如何通过Rancher的webhook微服务来实现Service/Host的弹性伸缩。

流程介绍

Service Scale

创建example服务对象。

创建service scale webhook对象。

第三方触发webhook,完成service弹性伸缩。

Host Sacle

通过阿里云machine driver创建实例对象,打上scale-up标签。

创建host scale webhook对象。

第三方触发webhook,完成host弹性伸缩。

webhook介绍

Rancher webhook的服务流程大致如下:

Webhook Driver(WD)初始化。

Router Handler(RH)初始化。

接收请求URL和Method,匹配调用RH.Execute或其他方法,RH.Execute解析请求数据得到WD_Id,进而执行WD.Execute,最后返回并response。

环境准备 Platform

Mac,Windows,Linux,Docker Cloud,AWS,Azure均可部署。

本次准备的平台是Ubuntu发行版(14.04),为了兼容docker,选择linux发行版的时候内核需控制在3.10以上。

Docker

根据用户选择的平台安装docker引擎,安装指导可参考https://docs.docker.com官方文档,搭配Rancher使用,docker引擎版本最优选择1.12.6或者1.13.1。
本次准备的docker引擎版本是1.12.6。

Rancher

实践步骤 Service Scale

创建example service

curl -u "xx:xx" 
-X POST 
-H "Accept: application/json" 
-H "Content-Type: application/json" 
-d "{
"description": "example service for scaling",
"name": "webapp",
"system": false,
"dockerCompose": "version: "2"
services:
  NGX:
    image: nginx:alpine
    stdin_open: true
    tty: true
    cpuset: "0"
    ports:
    - 8787:80/tcp
    cpu_shares: 1024
    labels:
      io.rancher.container.pull_image: always
      servicename: nginx",
"rancherCompose": "version: "2"
services:
  NGX:
    scale: 1
    start_on_create: true",
"binding": null,
"startOnCreate": true
}" "http://a.b.c.d:8080/v2-beta/projects/1a5/stacks"

创建webhook

Trigger webhook



Host Scale

创建example host


创建webhook

Trigger webhook



文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/27062.html

相关文章

  • container-as-a-service-0x01 -- 基于Docker私有云&混合

    摘要:基于的私有云混合云构建方案苏依蜀黍是一个开源的引擎,可以轻松的为任何应用创建一个轻量级的可移植的自给自足的容器。开发者在笔记本上编译测试通过的容器可以批量地在生产环境中部署,包括虚拟机集群和其他的基础应用平台。 container-as-a-service-0x01 -- 基于Docker的私有云&混合云构建方案 By 苏依蜀黍 . 2016.06.07 what Docker是一...

    import. 评论0 收藏0
  • Webhooks初体验

    摘要:对于,唯一可以指向的两个行为是增加容器的数量和减少容器的数量。使用在超出范围内对服务进行伸缩是不允许的。没有身份认证或实物需要通过请求发送到。 Rancher 1.4已于上周全面发布!新版本带来了Dashboard和Helm的集成,更细致的网络策略控制,直接构建进平台中的保密管理,当然还有今天要重点介绍的主角,Webhooks! Rancher 1.4版本为webhooks添加了一个新...

    苏丹 评论0 收藏0
  • 如何在Kubernetes上进行微服部署

    摘要:今天我们将探讨如何基于微服务部署来构建。还能监控并保障所需要数量正在运行,并将那些停止的替换掉。目前你的部署应显示以下信息。我们将更细致地探讨如何设置终端多服务部署服务发现及应用要如何应对失败场景等。 原文来源:Rancher Labs 大多数人在生产环境中运行Docker,是把它作为构建和移动部署配置的一种方式。然而,他们的部署模型要么非常整体化,要么有几个大的服务模块组成。使用真实...

    keithyau 评论0 收藏0
  • 如何在Kubernetes上进行微服部署

    摘要:今天我们将探讨如何基于微服务部署来构建。还能监控并保障所需要数量正在运行,并将那些停止的替换掉。目前你的部署应显示以下信息。我们将更细致地探讨如何设置终端多服务部署服务发现及应用要如何应对失败场景等。 原文来源:Rancher Labs 大多数人在生产环境中运行Docker,是把它作为构建和移动部署配置的一种方式。然而,他们的部署模型要么非常整体化,要么有几个大的服务模块组成。使用真实...

    jsummer 评论0 收藏0

发表评论

0条评论

leone

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<