温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Rancher中怎么通过部署Traefik实现微服务

发布时间:2021-08-09 13:59:59 来源:亿速云 阅读:335 作者:Leah 栏目:云计算

这篇文章给大家介绍Rancher中怎么通过部署Traefik实现微服务,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

Traefik 是什么?

Traefik 是一个为了让部署微服务更加便捷而诞生的现代HTTP反向代理、负载均衡工具。它支持多种后台 (Rancher、Docker、Swarm、Kubernetes、Marathon、Mesos、Consul、Etcd、Zookeeper、BoltDB、Rest API、file…) 来自动、动态的刷新配置文件,以实现快速地服务发现。

Rancher中怎么通过部署Traefik实现微服务

特性

  • 它非常快

  • 无需安装其他依赖,通过Go语言编写的单一可执行文件

  • 支持 Rest API

  • 多种后台支持:Rancher、Docker、Swarm、Kubernetes、Marathon、Mesos、Consul、Etcd,并且还会更多

  • 后台监控,可以监听后台变化进而自动化应用新的配置文件设置

  • 配置文件热更新。无需重启进程

  • 正常结束http连接

  • 后端断路器

  • 轮询,rebalancer 负载均衡

  • Rest Metrics

  • 支持最小化 官方 docker 镜像

  • 后台支持SSL

  • 前台支持SSL(包括SNI)

  • 清爽的AngularJS前端页面

  • 支持Websocket

  • 支持HTTP/2

  • 网络错误重试

  • 支持Let’s Encrypt (自动更新HTTPS证书)

  • 高可用集群模式

清爽的界面

Traefik 拥有一个基于AngularJS编写的简单网站界面。

Rancher中怎么通过部署Traefik实现微服务 Rancher中怎么通过部署Traefik实现微服务

Rancher-Traefik部署

为了保证 Traefik 资源不受其他服务的影响,我们可以通过指定专机专用的方式,让 Traefik 服务独自运行在某一台节点上。

PS:专机专用功能,目前只适用于 Rancher 自动调度容器。

一、运行 Rancher Server 并添加 Rancher-Agent 专机专用节点

  • 通过http://rancher-server:8080 地址登录 WEB;

  • 功能定位到 基础设施|主机,并点击添加主机,复制生成的命令来添加一台 Rancher-Agent;

  • 主机成功添加后,页面定位到 基础设施|主机 ,找到需要的主机,在主机视图的右上角,点击三个点的省略号,再点击编辑;

  • 在主机编辑视图中,分别在标签与容器标签需求中添加 traefik_lb=true;

PS:第一个标签:Traefik 服务在启动时会检查主机是否有 traefik_lb=true 标签,只有带有这个标签的主机才能安装Traefik服务。 第二个容器标签需求:这个就是专机专用的功能,通过设置 traefik_lb=true 这个标签,只有带有 traefik_lb=true 标签的服务才能运行到这个节点上。

Rancher中怎么通过部署Traefik实现微服务 Rancher中怎么通过部署Traefik实现微服务

二、进入商店(Catalog)搜索并安装Traefik应用

标签设置好之后,进入商店搜索Traefik并安装;

Rancher中怎么通过部署Traefik实现微服务

点击查看详情进入配置界面,这里我们把 http port 端口改为80 ,其他配置保持默认。最后点击启动;

Rancher中怎么通过部署Traefik实现微服务

进入 应用|用户 视图,可以看到Traefik应用已正常运行;

Rancher中怎么通过部署Traefik实现微服务

进入 基础架构|主机 视图下,可以看到Traefik运行在指定主机上;

三、运行 demo 应用

新建一个名为 demo 的空应用栈; 在 demo 中添加一个名为 nginx 的服务,把数量设置为4,

Rancher中怎么通过部署Traefik实现微服务

在标签设置中,添加如下几条标签:

Rancher中怎么通过部署Traefik实现微服务

traefik.enable = true 可以理解为是否把此服务注册到traefik的一个开关; traefik.domain = test.local 一个适用于所有服务访问的主域名,可以设置多个用逗号隔开;traefik.alias = nginx 服务别名,可以理解为主域名下的二级域名,可以设置多个用逗号隔开;traefik.port = 80 告诉traefik 服务暴露的端口号; Traefik默认强制开启健康检查,所有只有健康的服务才会被注册到Traefik上。在健康检查中配置健康检查

Rancher中怎么通过部署Traefik实现微服务

服务正常运行

Rancher中怎么通过部署Traefik实现微服务

四、demo-nginx 服务配置

Traefik有服务管理控制台,默认端口8000。

Rancher中怎么通过部署Traefik实现微服务

关于Rancher中怎么通过部署Traefik实现微服务就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI