文章转载自:https://mp.weixin.qq.com/s?__biz=MzU4MjQ0MTU4Ng==&mid=2247485572&idx=1&sn=8ffa2bc7bc048fab170454f0842841f8&chksm=fdb90799cace8e8f389bdd90b0e98deda3c44ec4a642d21c36e98c8b6af792dd5284050de093&scene=178&cur_album_id=1319287026209947648#rd

注:这篇文章只是单纯的叙述Pilot是什么,怎么用,有啥用

Traefik 在2.x版本过后提供了 TCP、UDP 的支持,提出了中间件的概念,但是目前中间件都是官方内置的,在实际使用的过程中很多企业都有自己的实际需求,所以在社区版本中提到最多的功能也就是希望能够支持自定义中间件,前面我们有介绍过通过修改源码的方式来添加自定义中间件,但是这种方式比如侵入性太高,需要重新编译源码,所以并不推荐使用这种方式。

Traefik 近期在 v2.3.0-rc1 版本中发布了一个新的全局控制面板 SaaS 服务:Traefik Pilot(https://pilot.traefik.io ),Pilot 可以扩展 Traefik 的功能,为每个 Traefik 实例在一个统一的 Dashboard 页面上提供强大的可观测性和控制功能,此外 Pilot 还为 Traefik 引入了大家非常关心的插件功能,包括一个插件应用中心,通过定制请求和响应处理来扩展 Traefik 中间件。

自定义中间件

新的插件系统构建在 Yaegi 的基础之上,提供了一种优雅的、可扩展和高性能的方式来增强 Traefik 的功能,而无需修改或编译 Traefik 的源代码。

插件通过一个额外的包来对用户的请求和响应进行转换,这些请求和响应都由 Traefik 来处理。以前给 Traefik 官方仓库贡献的插件由于各种原因可能无法被 Traefik 上游开发者接受,现在开发者完全不用担心了,直接使用官方的插件开发工具开发插件即可,还可以与其他用户共享插件,就像在 GitHub 上发布一样的,新的插件引擎使社区能够使用 Traefik Pilot 安装他们的自定义中间件,而无需重新编译代码。



Pilot 现在的初始版本包括一个免费使用的插件市场,通过直接从目录中安装中间件插件来扩展 Traefik,当然我们也可以很轻松地创建、发布和安装自己的插件。

安全和可用性

以前我们要确保 Traefik 的健康、可用和安全,基本上都是通过部署额外的监控系统来收集各种指标,然后通过报警系统来监控。现在 Pilot 就免费提供了 Traefik 的安全性和可用性监控的功能。

Traefik 注册后,内置的心跳机制将定期和 Pilot 进行检查,并报告 Traefik 实例的监控和可用性情况,此外,Pilot 还将检查适用于你的 Traefik 安装和配置的常见漏洞(CVE)。可以在 Pilot 页面上进行报警设置,可以通过 email 或 webhook 来接收通知。

使用

使用 Traefik Pilot 非常简单,首先通过页面 https://pilot.traefik.io 注册并登录 Pilot,然后会得到一个用于注册 Traefik 实例到 Pilot 的 Token,然后将获取的 Token 配置到 Traefik 的静态配置中,如下所示:

配置成功后,正常我们的 Traefik 实例就会被注册到 Pilot 页面上了:

然后我们就可以在插件市场上选择合适的插件,点击 Install Plugin:

就会获得安装该插件的方法:

要开发一个自定义的插件可以参考官方的示例仓库:https://github.com/containous/plugindemo。

Traefik 控制面板 SaaS 服务 Pilot的更多相关文章

  1. [在线Demo]使用Hibernate多租户实现SaaS服务

    上一篇文章 基于Hibernate实现多租户(Multi-Tendency)功能简单介绍了利用Hibernate的多租户功能提供SaaS服务的方法,但其中有很多不足,后来都得到了解决. 我尝试过抽取实 ...

  2. 一文了解腾讯云数据库SaaS服务

    本文由云+社区发表 作者:邵宗文,2009年加入腾讯,现为腾讯云数据库专家产品经理.之前曾负责为OMG事业群构建数据库平台,部署,规划及运维支持,为腾讯网,新闻客户端,快报,视频,财经,体育等提供了稳 ...

  3. 基于云端的通用权限管理系统,SAAS服务,基于SAAS的权限管理,基于SAAS的单点登录SSO,企业单点登录,企业系统监控,企业授权认证中心

    基于云端的通用权限管理系统 SAAS服务 基于SAAS的权限管理 基于SAAS的单点登录SSO 基于.Net的SSO,单点登录系统,提供SAAS服务 基于Extjs 4.2 的企业信息管理系统 基于E ...

  4. 下一个亿万市场:企业级SaaS服务谁能独领风骚

    注:SaaS是Software-as-a-Service(软件即服务)的简称,一种完全创新的软件应用模式,简单来说SaaS即为提供商基于互联网为企业提供软件服务. ​对中小型企业来说:SaaS是采用先 ...

  5. saas服务提供商

    这段时间接触了不少行业的东西,这里谈几点肤浅的看法.从市场行情上讲,SaaS风口还在,不过热度明显向大数据.物联网.人工智能.区块链等转移. 做得比较好的有这些SaaS提供商,每个领域的都有那么几家的 ...

  6. saas 服务多语言 SDK

    简介 saas 服务一般提供了一个文档来描述提供的 OpenAPI,然会每个用户根据文档自己实现签名.调用等功能的封装,这部分会出现各种各样的问题,因此用户更希望平台直接提供一个 SDK. darab ...

  7. SaaS服务和个性化需求,就不能鱼和熊掌兼得吗?

    随时随地.轻松高效,移动工作让人类的自由度最大化.但企业的移动化过程却不轻松:要综合考虑销售.产品.客服.市场销售.人力资源等错综复杂的流程和需求,以及原有IT系统.数据信息的对接. 千企千面,很难有 ...

  8. Kubernetes 系列(三):Kubernetes使用Traefik Ingress暴露服务

    一.Kubernetes 服务暴露介绍 从 kubernetes 1.2 版本开始,kubernetes提供了 Ingress 对象来实现对外暴露服务:到目前为止 kubernetes 总共有三种暴露 ...

  9. 所谓的SaaS服务到底是什么?

    先从SaaS说起,SaaS是英文Soft as a Service(软件即服务)的简写.SaaS并不是指代一个行业或者一种技术,它是一种2B的专业型软件租赁使用模式. 什么是专业型软件? 就是为了解决 ...

随机推荐

  1. mvc Ensure that HttpConfiguration.EnsureInitialized()

    The object has not yet been initialized. Ensure that HttpConfiguration.EnsureInitialized() is called ...

  2. C# MVCapi跨域问题

     he 'Access-Control-Allow-Origin' header contains multiple values ', *', but only one is allowed. Or ...

  3. P2512 【一本通提高篇贪心】「一本通 1.1 练习 6」[HAOI2008]糖果传递

    [HAOI2008]糖果传递 题目描述 有 n n n 个小朋友坐成一圈,每人有 a i a_i ai​ 个糖果.每人只能给左右两人传递糖果.每人每次传递一个糖果代价为 1 1 1. 输入格式 小朋友 ...

  4. tokitsukaze and Soldier 来源:牛客网

    题目 链接:https://ac.nowcoder.com/acm/contest/28886/1004 来源:牛客网 时间限制:C/C++ 1秒,其他语言2秒 空间限制:C/C++ 524288K, ...

  5. React + Antd Menu组件实现菜单树

    准备好两个变量,一个用来保存平级菜单列表,一个用来保存遍历后的菜单树. 推荐后端返回平级菜单树,假如菜单比较多,可以直接结合find方法找到菜单,做搜索功能很省事. const [menuList, ...

  6. 从零开始Blazor Server(2)--整合数据库

    开篇 上一篇文章我们留了个尾巴,没有把freesql整合进去,这篇文章我们来整合. 目前的思路呢,是做一个简单的四不像的RABC,也有用户.角色. 权限三部分. 但是其中每个用户只有一个角色,即用户和 ...

  7. php和js的不定参

    function my_func() { $args = func_get_args(); print_r($args); } my_func('php','java','node.js'); jav ...

  8. npm run dev 启动项目报错我的解决办法

    我的报错截屏 解决方案   1.    config文件中 index 文件中的 host 值如果是数字串就将其改为 localhost 2.    再次尝试 如果有遇到其他问题阔以将 node-mo ...

  9. 5.6 NOI模拟

    \(5.6\ NOI\)模拟 明天就母亲节了,给家里打了个电话(\(lj\ hsez\)断我电话的电,在宿舍打不了,只能用教练手机打了) 其实我不是很能看到自己的\(future,\)甚至看不到高三的 ...

  10. 轮询以及webSocket与socket.io原理

    概述: 首先,我们知道,起初的http协议只是为了能够进行通信而被创造出来(也就是请求-响应的过程).并没有双向通信这一说,后面随着历史业务的需求,人们使用轮询http来解决双向通信也就是使用xhr或 ...