Fabio 安装和简单使用

Fabio(Go 语言):https://github.com/eBay/fabio

Fabio 是一个快速、现代、zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的微服务。

Fabio 由 eBay Classifieds Group 开发,用于处理 marktplaats.nl 和 kijiji.it 的流量。Marktplaats 所有的流量都经过 Fabio ,每秒有 250000 个请求,分发于数个 Fabio 实例,并且没有出现任何延迟。

简单流程图(摘自 http://dockone.io/article/1567):

======    服务注册     =========       =========
A服务 <------> consul集群 ----> 健康的 A/不健康的 A 集群
====== 健康检查 ========= =========
^
| 加入/移出路由表
|
========
fabio 集群
========
|
| A服务 如果找到则成功路由否则返回错误
V
http 请求

Mac OS 安装命令(如果没有安装 Consul,会自动安装):

$ brew install fabio
Updating Homebrew...
==> Auto-updated Homebrew!
Updated 1 tap (homebrew/core).
==> New Formulae
crystal-icr gcc@4.7 gnome-autoar libchaos llvm@3.8 pdftoipe tomcat@8.0
dbt gcc@5 isl@0.12 libswiftnav mps-youtube recipes ucg
gcc@4.6 gcc@6 lasso llvm@3.7 ndenv servus
==> Updated Formulae
afflib dnscrypt-proxy handbrake mpv sassc
ant doxygen hebcal mysql sbcl
antigen duply highlight mysql-connector-c++ sqldiff
antlr flex hugo mysql-sandbox sqlite
apache-spark fluent-bit imagemagick nagios sqlite-analyzer
arangodb fobis ipv6calc nagios-plugins stunnel
astyle fontforge jasper ncdc syncthing
ats2-postiats fpp jenkins ncftp tarantool
aws-sdk-cpp freetype lean-cli neo4j taylor
awscli ganglia leptonica nvm tile38
bup gcc libass ooniprobe vim
cdiff gcc@4.9 libgit2 opentsdb volatility
cfr-decompiler geos libgit2-glib osm2pgsql vowpal-wabbit
checkstyle git-annex libpng osquery weechat
cloog git-lfs libxml2 pngpaste wine
compcert gitg lmdb poco winetricks
couchdb gitless m-cli pure-ftpd wireguard-tools
cppcheck gmic macosvpn qt5 x265
czmq gnome-builder menhir questdb yaz
dbhash gnutls mg rclone youtube-dl
dmd groonga mitmproxy re2
==> Deleted Formulae
cloog@0.18 qt tutum Error: Could not link:
/usr/local/share/man/man1/brew.1 Please delete these paths and run `brew update`.
==> Installing dependencies for fabio: consul
==> Installing fabio dependency: consul
==> Downloading https://homebrew.bintray.com/bottles/consul-0.7.2.sierra.bottle.tar.gz
######################################################################## 100.0%
==> Pouring consul-0.7.2.sierra.bottle.tar.gz
Error: The `brew link` step did not complete successfully
The formula built, but is not symlinked into /usr/local
Could not symlink bin/consul
Target /usr/local/bin/consul
already exists. You may want to remove it:
rm '/usr/local/bin/consul' To force the link and overwrite all conflicting files:
brew link --overwrite consul To list all files that would be deleted:
brew link --overwrite --dry-run consul Possible conflicting files are:
/usr/local/bin/consul
==> Caveats
If consul was built with --with-web-ui, you can activate the UI by running
consul with `-ui-dir /usr/local/Cellar/consul/0.7.2/share/consul/web-ui`. zsh completion has been installed to:
/usr/local/share/zsh/site-functions To have launchd start consul now and restart at login:
brew services start consul
Or, if you don't want/need a background service you can just run:
consul agent -dev -advertise 127.0.0.1
==> Summary

Fabio的更多相关文章

  1. Fabio 安装和简单使用

    Fabio(Go 语言):https://github.com/eBay/fabio Fabio 是一个快速.现代.zero-conf 负载均衡 HTTP(S) 路由器,用于部署 Consul 管理的 ...

  2. Ubuntu & Docker & Consul & Fabio & ASP.NET Core 2.0 微服务跨平台实践

    相关博文: Ubuntu 简单安装 Docker Mac OS.Ubuntu 安装及使用 Consul Consul 服务注册与服务发现 Fabio 安装和简单使用 阅读目录: Docker 运行 C ...

  3. Docker & Consul & Fabio & ASP.NET Core 2.0 微服务跨平台实践

    相关博文: Ubuntu 简单安装 Docker Mac OS.Ubuntu 安装及使用 Consul Consul 服务注册与服务发现 Fabio 安装和简单使用 阅读目录: Docker 运行 C ...

  4. 使用skipper 扩展fabio 的路由&&http proxy 功能

    skipper 具有强大的http 路由功能,fabio 是一个方便的基于consul 的负载均衡软件, 我们可以方便的使用skipper 路由功能进行fabio的扩展,使用registrator 进 ...

  5. Consul + fabio 实现自动服务发现、负载均衡 - DockOne.io

    Consul + fabio 实现自动服务发现.负载均衡 - DockOne.io   http://dockone.io/article/1567

  6. 使用nomad && consul && fabio 创建简单的微服务系统

    具体每个组件的功能就不详细说明了 nomad 一个调度工具,consul 一个服务发现,健康检查多数据中心支持的工具 fabio 一个基于consul的负载均衡&&动态路由工具,对于集 ...

  7. fabio 安装试用&&实际使用的几个问题

    备注:    因为fabio 依赖consul vault (不是强需),启动之前需要先安装consul,    本次为了简单consul 使用的是单机,使用的是dev 模式   1. conusl ...

  8. Linux 常用命令(持续补充)

    常用命令: command &:将进程放在后台执行 ctrl + z:暂停当前进程 并放入后台 jobs:查看当前后台任务 bg( %id):将任务转为后台执行 fg( %id):将任务调回前 ...

  9. Coroutine in Java - Quasar Fiber实现--转载

    转自 https://segmentfault.com/a/1190000006079389?from=groupmessage&isappinstalled=0 简介 说到协程(Corout ...

随机推荐

  1. Vertica 导出数据测试用例

    需求:构建简单的测试用例,完成演示Vertica导出数据的功能. 测试用例:导出test业务用户t_jingyu表中的数据. 一.初始化测试环境 二.导出数据 2.1 vsql命令说明帮助 2.2 导 ...

  2. Centos 上 Tengine安装

    安装步骤: 1.系统环境 1.1 更新系统 [root@centos ~]# yum update -y 1.2 查看环境 [root@centos ~]# cat /etc/redhat-relea ...

  3. Linux用户体系和文件权限总结

    一.           Linux系统用户和用户组相关文件 1.  /etc/passwd文件 这个passwd文件是Linux用户信息文件.文件格式说明如下: root:x:0:0:root:/r ...

  4. asp.net MVC5 学习笔记(一)

    Html.ActionLink("linkText","actionName") 该重载的第一个参数是该链接要显示的文字,第二个参数是对应的控制器的方法,默认控 ...

  5. 发布在即!.NET Core 1.0 RC2已准备就绪!!

    先说点废话,从去年夏天就开始关注学习ASP.NET Core,那时候的版本还是beta5,断断续续不停踩坑.一路研究到11月份RC1发布. 在这个乐此不疲的过程里,学习了很多新的东西,对ASP.NET ...

  6. Debian的软件包管理工具命令 (dpkg,apt-get)详解

    本文转载于:http://blog.chinaunix.net/uid-20769502-id-106056.html   1.dpkg包管理工具 dpkg --info "软件包名&quo ...

  7. 浅谈Collection集合

    俗话说:一个东西,一件事都离不开三句话:"是什么,为什么,怎么办" 集合是什么: 集合简单的说一个数组集合的高级体现,用来存储数据或对象的容器: 集合为什么存在: 集合只是体现了对 ...

  8. Android Weekly Notes Issue #222

    Android Weekly Issue #222 September 11th, 2016 Android Weekly Issue #222 ARTICLES & TUTORIALS Fo ...

  9. React Native之 ScrollView介绍和使用

    前言 学习本系列内容需要具备一定 HTML 开发基础,没有基础的朋友可以先转至 HTML快速入门(一) 学习 本人接触 React Native 时间并不是特别长,所以对其中的内容和性质了解可能会有所 ...

  10. js实现发送验证码倒计时按钮

    在写注册页面时,有时候需要发送注册邮件来获取验证码,但是为了防止多次重复发送邮件, 必须让按钮隔一段时间后才能再次使用. 代码如下: <html> <head> <met ...