linkerd官方文档中文版
  • Introduction
  • 官方文档
    • 概况
      • 介绍
      • linkerd是什么?
    • 入门
      • 概况
      • 本地运行
      • 用docker运行
      • 在kubernetes中运行
      • 在DC/OS中运行
      • 用istio运行
      • 在ECS中运行
      • 管理
    • 特性
      • 概况
      • 负载均衡
      • 熔断
      • 服务发现
      • 动态请求路由
      • 重试次数和截止时间
      • TLS
      • HTTP代理集成
      • 透明代理
      • gRPC
      • 分布式跟踪
      • 仪器仪表
    • 配置
      • 概况
      • linkerd
      • namerd
    • 高级
      • 概述
      • 路由
      • namerd
      • dtabs
      • 部署
      • 插件
    • 支持
      • 常见问题
      • 获取帮助
      • 外部资源
      • 联系我们
    • 企业
      • 企业
  • 官方博客
    • 超越轮循:为了延迟的负载均衡
    • LINKERD:用于微服务的TWITTER风格可操作性
  • 全文标签总览
Powered by GitBook
On this page
  • 部署webapp
  • 部署linkerd
  • 应用组
  • 部署自定义的linkerd
  • 部署linkerd-viz
  • linker-to-linker vs. simple-proxy 配置
  • 进一步阅读
  1. 官方文档
  2. 入门

在DC/OS中运行

Previous在kubernetes中运行Next用istio运行

Last updated 6 years ago

本指南将引导您完成在 DC/OS 中运行linkerd,将请求路由到示例Web服务,并监控集群。

部署webapp

我们将部署一个响应“Hello world”的示例应用程序。我们将使用来自 仓库的 配置文件:

dcos marathon app add https://raw.githubusercontent.com/linkerd/linkerd-examples/master/dcos/webapp.json

部署linkerd

使用以下命令安装 linkerd DC/OS Universe 软件包,注意 instances 应与 DC/OS 集群中的节点总数相匹配,包括公共和私有:

$ dcos package install --options=<(echo '{"linkerd":{"instances":4}}') linkerd

请注意,linkerd 引导两个服务器,在端口4140上传出,并在4141上传入。您的应用程序对端口4140上的本地linkerd发出传出请求,linkerd将请求路由到在远程节点端口4141上的运行的单独的linkerd。远程节点上的linkerd接受传入请求并将其路由到本地应用程序实例。

$ http_proxy=$PUBLIC_NODE:4140 curl -s http://webapp/hello
Hello world

最后,要访问管理服务,请在端口 9990 上发出请求:

$ curl $PUBLIC_NODE:9990/admin/ping
pong

应用组

对于作为组的一部分部署的应用程序,将组/应用程序名称反转到域中。例如,my-group/webapp 成为 webapp.my-group:

$ http_proxy=$PUBLIC_NODE:4140 curl webapp.my-group/hello
Hello world

部署自定义的linkerd

您还可以安装自己的自定义版本的linkerd,例如:

dcos marathon app add https://raw.githubusercontent.com/linkerd/linkerd-examples/master/dcos/linker-to-linker/linkerd-dcos.json

要修改linkerd配置,请执行以下操作:

  1. 编辑 linkerd-config.yml

  2. 删除所有换行符和转义引号:

     cat linkerd-config.json |tr -d '\n '|sed 's/"/\\\\\\\"/g'
  3. 用输出内容替换 linkerd-dcos.json 中 cmd 字段的内容。

部署linkerd-viz

linkerd-viz 是监控程序,用于通过linkerd进行路由的应用。部署为 DC/OS Universe 软件包:

dcos package install linkerd-viz

查看dashboard:

open $(dcos config show core.dcos_url)/service/linkerd-viz

或者,安装自定义版本:

dcos marathon app add https://raw.githubusercontent.com/linkerd/linkerd-viz/master/dcos/linkerd-viz.json
open $PUBLIC_NODE:3000

Linerd Viz

就这样! 您现在有一个动态路由和监控的 DC/OS 集群。

linker-to-linker vs. simple-proxy 配置

进一步阅读

此自定义版本在其命令中嵌入了一个linkerd配置文件,作为字符串编码的json,更可读的版本是 仓库中的 。

使用类似 的东西转换为JSON

上面的指南描述了在 linker-to-linker 模式下搭建集群,其中每个linkerd运行传入和传出服务器。这是在 linkerd DC/OS Universe 包中的默认配置,它提供必要的拓扑以支持 linkerd-viz。如果您对更简单的http代理配置感兴趣,请查看 linkerd-examples 库中的 示例。

有关配置 linkerd 的更多信息,请参阅 页面。

有关 linkerd-viz 的更多信息,请参阅 。

linkerd-examples
webapp.json
linkerd-examples
linkerd-config.yml
http://json2yaml.com
简单代理
linkerd配置
linkerd-viz GitHub repo