【转】Rancher部署Træfik实现微服务的快速发现
Rancher部署Træfik实现微服务的快速发现
原文链接:http://dwz.cn/6rhDAz
Træfik 是什么?
Træfik 是一个为了让部署微服务更加便捷而诞生的现代HTTP反向代理、负载均衡工具。它支持多种后台 (Rancher、Docker、Swarm、Kubernetes、Marathon、Mesos、Consul、Etcd、Zookeeper、BoltDB、Rest API、file…) 来自动、动态的刷新配置文件,以实现快速地服务发现。
特性
它非常快
无需安装其他依赖,通过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证书)
高可用集群模式
清爽的界面
Træfik 拥有一个基于AngularJS编写的简单网站界面。
以上内容转自:https://traefik.cn
Rancher-Træfik部署
为了保证 Træfik 资源不受其他服务的影响,我们可以通过指定专机专用的方式,让 Træfik 服务独自运行在某一台节点上。
PS:专机专用功能,目前只适用于 Rancher 自动调度容器。
一、运行 Rancher Server 并添加 Rancher-Agent 专机专用节点
通过http://rancher-server:8080 地址登录 WEB;
功能定位到 基础设施|主机,并点击添加主机,复制生成的命令来添加一台 Rancher-Agent;
主机成功添加后,页面定位到 基础设施|主机 ,找到需要的主机,在主机视图的右上角,点击三个点的省略号,再点击编辑;
在主机编辑视图中,分别在标签与容器标签需求中添加 træfik_lb=true;
PS:第一个标签:Træfik 服务在启动时会检查主机是否有 træfik_lb=true 标签,只有带有这个标签的主机才能安装Træfik服务。
第二个容器标签需求:这个就是专机专用的功能,通过设置 træfik_lb=true 这个标签,只有带有 træfik_lb=true 标签的服务才能运行到这个节点上。
二、进入商店(Catalog)搜索并安装
Træfik应用
标签设置好之后,进入商店搜索Træfik并安装;
点击查看详情进入配置界面,这里我们把 http port 端口改为80 ,其他配置保持默认。最后点击启动;
进入 应用|用户 视图,可以看到Træfik应用已正常运行;
进入 基础架构|主机 视图下,可以看到Træfik运行在指定主机上;
三、运行 demo 应用
新建一个名为 demo 的空应用栈;
在 demo 中添加一个名为 nginx 的服务,把数量设置为4,
在标签设置中,添加如下几条标签:
træfik.enable = true 可以理解为是否把此服务注册到træfik的一个开关; træfik.domain = test.local 一个适用于所有服务访问的主域名,可以设置多个用逗号隔开;træfik.alias = nginx 服务别名,可以理解为主域名下的二级域名,可以设置多个用逗号隔开;træfik.port = 80 告诉træfik 服务暴露的端口号;
Træfik默认强制开启健康检查,所有只有健康的服务才会被注册到Træfik上。在健康检查中配置健康检查
服务正常运行
四、demo-nginx 服务配置
Træfik有服务管理控制台,默认端口8000。
在控制台中可以看到访问地址:nginx.demo.test.local,nginx.test.local,以前当前后端 健康server 数目
测试访问:nginx.demo.test.local, nginx.test.local
公众号:RancherLabs
官 网:cnrancher.com
加它好友
【转】Rancher部署Træfik实现微服务的快速发现相关推荐
- Rancher部署Traefik实现微服务的快速发现
Traefik 是什么? Traefik 是一个为了让部署微服务更加便捷而诞生的现代HTTP反向代理.负载均衡工具.它支持多种后台 (Rancher.Docker.Swarm.Kubernetes.M ...
- OpenShift 4 之Service Mesh教程(1)- 创建ServiceMesh环境,部署Istio的微服务
<OpenShift 4.x HOL教程汇总> 说明:本文已经在OpenShift 4.8环境中验证 文章目录 创建ServiceMesh环境 部署Istio的微服务 参考 创建Servi ...
- Java架构师-微服务:微服务架构【单体部署 --改造--> 微服务架构】【分布式:分散压力;微服务:分散能力】【RESTFul+Docker+K8S、SpringCloud】
一.微服务概述 微服务架构是团队面对互联网产品爆发式增长的最优选择,要解决的是快速迭代.高可靠和高可用等问题,把复杂度很高的产品拆分成一些较小的模块,并遵循康威定律,每一个模块用5-9个小团队来维护, ...
- nodejs 调用微服务器_无服务器NodeJS:构建下一个微服务的快速,廉价方法
nodejs 调用微服务器 by Filipe Tavares 由Filipe Tavares 无服务器NodeJS:构建下一个微服务的快速,廉价方法 (Serverless NodeJS: the ...
- python eureka服务发现_Spring Cloud版——电影售票系统—Eureka微服务注册与发现
一.服务提供者与服务消费者 使用微服务构建的是分布式系统,微服务之间通过网络进行通信.我们使用服务提供者与服务消费者来描述微服务之间的调用关系. 名称 定义 服务提供者 服务的被调用方(为其他服务提供 ...
- 这是我见过最好的微服务 SaaS 快速开发平台。功能完整,代码结构清晰!
大家好,我是宝哥! 今天,推荐一个微服务 SaaS 快速开发平台系统项目.第一次使用就有点上头,爱不释手,必须要推荐给大家. 上次是谁要的微服务 SaaS 快速开发平台系统项目啊,帮你找到了. 这是我 ...
- Consul微服务注册与发现
Consul微服务注册与发现 概念 安装与运行 服务提供者 服务消费者 总结:Eureka.Zookeeper.Consul 的异同 概念 1.什么是Consul? Consul是一套开源的分布式服务 ...
- centos部署python flask_python 微服务框架之nameko实践
大纲: 1.本篇关键技术点及其释义 2.实际需求和目标 3.可行的三大解决方案 4.微服务与传统服务的差别 5.代码大纲:安装依赖及nameko五个完整的代码示例 6.附录:docker的在线安装方式 ...
- openshift 部署_在OpenShift上部署Java EE微服务
openshift 部署 我昨天用WildFly Swarm在博客上发布了有关简单JAX-RS微服务的博客. 您学习了如何使用Maven构建所谓的"胖子",还使用Maven Doc ...
最新文章
- 论坛报名 | 数理基础:人工智能的重大理论挑战和最新成果
- mysql 查询姓张或者姓王_mysql查询练习
- Java--语言基础
- Java可能使用UTF-8作为其默认字符集
- centos yum方式安装nginx 并支持https
- python 自动登录网站_python实现网站用户名密码自动登录功能
- IT技术人同献爱心行动倡议书
- 三种基本排序方法-冒泡排序,选择排序,插入排序
- linux用tar打包文件,linux tar打包、解包命令
- GIT、小乌龟、语言包下载
- win7 简体中文 旗舰版 种子 永久激活 全在附件
- 就这?阿里p6的面试竟然这么简单
- python爬网易云_python爬网易云音乐-知了汇智
- 西安理工大学计算机科学与工程学院官网,罗靖-西安理工大学计算机科学与工程学院...
- 定义Point类,采用友元类的方式计算两个点之间的水平和垂直距离
- python老王卖西瓜_搞不懂Python?大神教你用Python买西瓜!
- Linux系统库函数之strsep
- 电子垃圾绿色回收之路怎么走?
- 97岁的诺奖得主,活着就会有好事发生
- 教学|怎样制作360度全景图,更炫更酷3D建模步骤
热门文章
- 微信拉群服务器繁忙,微信群拉人有限制吗?解决方案是什么?
- 软件设计与体系结构(第二版)部分习题
- 科普下域名续费中的宽限期和赎回期
- [Android] 星空漫步2 v2.11.6 推荐一个强大的观星神器 StarWalk2
- 用C语言实现三子棋小游戏(C语言菜单创建--设置光标,隐藏光标)
- java语言的执行模式是什么,Java语言的执行模式是()?
- Mautic使用手册翻译8: 渠道 Channels
- 头歌MySQL数据库实训答案 有目录
- MacOS系统目录结构与垃圾清理
- Iphone/Android开发囧事