This is an automated email from the ASF dual-hosted git repository. github-bot pushed a commit to branch asf-site in repository https://gitbox.apache.org/repos/asf/incubator-inlong-website.git
The following commit(s) were added to refs/heads/asf-site by this push: new 6463777 Automated deployment: Sun Aug 29 10:51:53 UTC 2021 66381c5ebef93cdea545b0fbbbdf768417497b0d 6463777 is described below commit 646377735e03452bebd5094b298256c962b9c520 Author: gosonzhang <gosonzh...@users.noreply.github.com> AuthorDate: Sun Aug 29 10:51:54 2021 +0000 Automated deployment: Sun Aug 29 10:51:53 UTC 2021 66381c5ebef93cdea545b0fbbbdf768417497b0d --- build/documentation.js | 2 +- docs/zh-cn/example.md | 131 +++++++++++++++++++++ img/create-account.png | Bin 0 -> 52617 bytes img/create-business.png | Bin 0 -> 34557 bytes img/create-stream.png | Bin 0 -> 33998 bytes img/data-information.png | Bin 0 -> 24359 bytes img/hive-config.png | Bin 0 -> 36665 bytes zh-cn/docs/contact.html | 2 +- .../development/how-to-become-a-committer.html | 2 +- zh-cn/docs/development/how-to-commit.html | 2 +- zh-cn/docs/development/how-to-contribute.html | 2 +- zh-cn/docs/development/how-to-release.html | 2 +- zh-cn/docs/development/how-to-subscribe.html | 2 +- zh-cn/docs/development/how-to-use-jira.html | 2 +- zh-cn/docs/development/how-to-verify.html | 2 +- .../development/how-to-vote-a-committer-ppmc.html | 2 +- zh-cn/docs/download/download.html | 2 +- zh-cn/docs/download/release-0.3.0.html | 2 +- zh-cn/docs/download/release-0.5.0.html | 2 +- zh-cn/docs/download/release-0.6.0.html | 2 +- zh-cn/docs/download/release-0.7.0.html | 2 +- zh-cn/docs/download/release-0.8.0.html | 2 +- zh-cn/docs/download/release-0.9.0.html | 2 +- zh-cn/docs/example.html | 113 ++++++++++++++++++ zh-cn/docs/example.json | 8 ++ zh-cn/docs/example.md | 131 +++++++++++++++++++++ zh-cn/docs/modules/agent/architecture.html | 2 +- zh-cn/docs/modules/agent/quick_start.html | 2 +- zh-cn/docs/modules/dataproxy-sdk/architecture.html | 2 +- zh-cn/docs/modules/dataproxy-sdk/quick_start.html | 2 +- zh-cn/docs/modules/dataproxy/architecture.html | 2 +- zh-cn/docs/modules/dataproxy/quick_start.html | 2 +- zh-cn/docs/modules/manager/architecture.html | 2 +- zh-cn/docs/modules/manager/quick_start.html | 2 +- zh-cn/docs/modules/manager/user_manual.html | 2 +- zh-cn/docs/modules/sort/introduction.html | 2 +- zh-cn/docs/modules/sort/protocol_introduction.html | 2 +- zh-cn/docs/modules/sort/quick_start.html | 2 +- zh-cn/docs/modules/tubemq/architecture.html | 2 +- zh-cn/docs/modules/tubemq/client_rpc.html | 2 +- zh-cn/docs/modules/tubemq/clients_java.html | 2 +- .../modules/tubemq/configure_introduction.html | 2 +- .../docs/modules/tubemq/console_introduction.html | 2 +- zh-cn/docs/modules/tubemq/consumer_example.html | 2 +- zh-cn/docs/modules/tubemq/deployment.html | 2 +- zh-cn/docs/modules/tubemq/error_code.html | 2 +- zh-cn/docs/modules/tubemq/http_access_api.html | 2 +- zh-cn/docs/modules/tubemq/producer_example.html | 2 +- zh-cn/docs/modules/tubemq/quick_start.html | 2 +- .../modules/tubemq/tubemq-manager/quick_start.html | 2 +- .../tubemq/tubemq_perf_test_vs_Kafka_cn.html | 2 +- zh-cn/docs/modules/website/quick_start.html | 2 +- zh-cn/docs/quick_start.html | 2 +- 53 files changed, 427 insertions(+), 44 deletions(-) diff --git a/build/documentation.js b/build/documentation.js index eb4c9d7..9ff9b3e 100644 --- a/build/documentation.js +++ b/build/documentation.js @@ -158,4 +158,4 @@ var i="function"==typeof Symbol&&Symbol.for,a=i?Symbol.for("react.element"):6010 * Copyright © 2012-2019 Faisal Salman <f...@faisalman.com> * Licensed under MIT License */ -return"string"==typeof e?e.replace(/[^\d\.]/g,"").split(".")[0]:void 0},trim:function(e){return e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},m={rgx:function(e,t){for(var n,r,o,i,a,c,s=0;s<t.length&&!a;){var l=t[s],u=t[s+1];for(n=r=0;n<l.length&&!a;)if(a=l[n++].exec(e))for(o=0;o<u.length;o++)c=a[++r],i=u[o],"object"==typeof i&&i.length>0?2==i.length?"function"==typeof i[1]?this[i[0]]=i[1].call(this,c):this[i[0]]=i[1]:3==i.length?"function"!=typeof i[1]||i[1].exec&&i[1].test?this[i [...] \ No newline at end of file +return"string"==typeof e?e.replace(/[^\d\.]/g,"").split(".")[0]:void 0},trim:function(e){return e.replace(/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g,"")}},m={rgx:function(e,t){for(var n,r,o,i,a,c,s=0;s<t.length&&!a;){var l=t[s],u=t[s+1];for(n=r=0;n<l.length&&!a;)if(a=l[n++].exec(e))for(o=0;o<u.length;o++)c=a[++r],i=u[o],"object"==typeof i&&i.length>0?2==i.length?"function"==typeof i[1]?this[i[0]]=i[1].call(this,c):this[i[0]]=i[1]:3==i.length?"function"!=typeof i[1]||i[1].exec&&i[1].test?this[i [...] \ No newline at end of file diff --git a/docs/zh-cn/example.md b/docs/zh-cn/example.md new file mode 100644 index 0000000..332cdab --- /dev/null +++ b/docs/zh-cn/example.md @@ -0,0 +1,131 @@ +--- +title: 入库 Hive 示例 - Apache InLong +--- + +本节用一个简单的示例,帮助您使用 Docker 快速体验 InLong 的完整流程。 + +## 前置要求 +* Git +* Docker +* Docker-Compose + +## 安装 Hive +Hive 是运行的必备组件。如果您的机器上没有 Hive,这里推荐使用 Docker 进行快速安装,详情可见 [这里](https://github.com/big-data-europe/docker-hive)。 + +> 注意,我们需要在 namenode 中添加一个端口映射 `8020:8020`,因为它是 HDFS DefaultFS 的端口。 + +## 安装 InLong +我们提供了 InLong 的 Docker 镜像,帮助你快速部署所有组件。 + +首先需要拉取 InLong 仓库 +``` +$ git clone https://github.com/apache/incubator-inlong.git +``` + +然后进入 `docker-compose` 目录下 +``` +$ cd ./docker/docker-compose +``` + +然后使用 `docker-compsoe` 命令安装 InLong 的相关组件 +``` +docker-compose up -d +``` + +我们可以使用 `docker-compose ps` 来观察所有容器的启动状况。待所有容器启动完毕后,InLong 即安装成功。 + +## 新建账号 +首先我们访问 `http://localhost:80` 进入 InLong Manager 的主页,并输入账户名 `admin` 和 密码 `inlong` 进入管理员账户。 + +然后进入 “系统管理” 界面,点击 “新建账号”,添加一个新的普通用户,这里我们以添加账户名 `test` 和 密码 `test` 为例。 + +<img src="../../img/create-account.png" align="center" alt="Create Account"/> + +## 新建接入 +然后我们进入 “数据接入” 界面,点击右上角的 “新建接入”,新建一条接入,按下图所示填入业务信息 + +<img src="../../img/create-business.png" align="center" alt="Create Business"/> + +然后点击下一步,按下图所示填入数据流信息 + +<img src="../../img/create-stream.png" align="center" alt="Create Stream"/> + +注意其中消息来源选择“文件”,暂时不用新建数据源。 + +然后我们在下面的“数据信息”一栏中填入以下信息 + +<img src="../../img/date-information.png" align="center" alt="Data Information"/> + +然后在数据流向中选择 Hive,并点击 “添加”,添加 Hive 配置 + +<img src="../../img/hive-config.png" align="center" alt="Hive Config"/> + +注意这里目标表无需提前创建,InLong Manager 会在接入通过之后自动为我们创建表。另外,请使用 “连接测试” 保证 InLong Manager 可以连接到你的 Hive。 + +然后点击“提交审批”按钮,该接入就会创建成功,进入审批状态。 + +## 审批接入 +进入“审批管理”界面,点击“我的审批”,将刚刚申请的接入通过。 + +到此接入就已经创建完毕了,我们可以在 Hive 中看到相应的表已经被创建,并且在 TubeMQ 的管理界面中可以看到相应的 topic 已经创建成功。 + +## 配置 agent +然后我们使用 docker 进入 agent 容器内,创建相应的 agent 配置。 +``` +$ docker exec -it agent sh +``` + +然后我们新建 `.inlong` 文件夹,并创建以 `bid.local` 命名的文件,在其中填入 Dataproxy 有关配置。 +``` +$ mkdir .inlong +$ cd .inlong +$ touch b_test.local +$ echo '{"cluster_id":1,"isInterVisit":1,"size":1,"address": [{"port":46801,"host":"dataproxy"}], "switch":0}' >> b_test.local +``` + +然后退出容器,使用 curl 向 agent 容器发送请求。 +``` +curl --location --request POST 'http://localhost:8008/config/job' \ +--header 'Content-Type: application/json' \ +--data '{ +"job": { +"dir": { +"path": "", +"pattern": "/data/collect-data/test.log" +}, +"trigger": "org.apache.inlong.agent.plugin.trigger.DirectoryTrigger", +"id": 1, +"thread": { +"running": { +"core": "4" +} +}, +"name": "fileAgentTest", +"source": "org.apache.inlong.agent.plugin.sources.TextFileSource", +"sink": "org.apache.inlong.agent.plugin.sinks.ProxySink", +"channel": "org.apache.inlong.agent.plugin.channel.MemoryChannel" +}, +"proxy": { +"bid": "b_test", +"tid": "test_stream" +}, +"op": "add" +}' +``` + +至此,agent 就配置完毕了。接下来我们可以新建 `./collect-data/test.log` ,并往里面添加内容,来触发 agent 向 dataproxy 发送数据了。 + +``` +$ touch collect-data/test.log +$ echo 'test,24' >> collect-data/test.log +``` + +然后观察 agent 和 dataproxy 的日志,可以看到相关数据已经成功发送。 + +``` +$ docker logs agent +$ docker logs dataproxy +``` + + + diff --git a/img/create-account.png b/img/create-account.png new file mode 100644 index 0000000..be0ee68 Binary files /dev/null and b/img/create-account.png differ diff --git a/img/create-business.png b/img/create-business.png new file mode 100644 index 0000000..426b9cf Binary files /dev/null and b/img/create-business.png differ diff --git a/img/create-stream.png b/img/create-stream.png new file mode 100644 index 0000000..9d7f8e9 Binary files /dev/null and b/img/create-stream.png differ diff --git a/img/data-information.png b/img/data-information.png new file mode 100644 index 0000000..8e6dc96 Binary files /dev/null and b/img/data-information.png differ diff --git a/img/hive-config.png b/img/hive-config.png new file mode 100644 index 0000000..ee7c86e Binary files /dev/null and b/img/hive-config.png differ diff --git a/zh-cn/docs/contact.html b/zh-cn/docs/contact.html index eaca09b..03cef67 100644 --- a/zh-cn/docs/contact.html +++ b/zh-cn/docs/contact.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <ul> <li> <p>Slack在线交流: <a href="https://the-asf.slack.com/archives/C01QAG6U00L">Apache InLong Slack</a></p> diff --git a/zh-cn/docs/development/how-to-become-a-committer.html b/zh-cn/docs/development/how-to-become-a-committer.html index f40652e..7059fb9 100644 --- a/zh-cn/docs/development/how-to-become-a-committer.html +++ b/zh-cn/docs/development/how-to-become-a-committer.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <blockquote> <p>Apache InLong是完全按照Apache的规则来构建社区的,Apache Committer是ASF(Apache软件基金会)中用来表示提交特定项目的人的术语, Apache InLong Committer拥有InLong代码库的写权限,可以合并PR,任何人只要为社区做出了足够的贡献并获取到足够的信任就可以成为Apache InLong Committer。</p> diff --git a/zh-cn/docs/development/how-to-commit.html b/zh-cn/docs/development/how-to-commit.html index f922913..b8441df 100644 --- a/zh-cn/docs/development/how-to-commit.html +++ b/zh-cn/docs/development/how-to-commit.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>Apache InLong使用Github的Pull Request (PR)来接收贡献的代码,本文将详细介绍提交代码的详细流程。</p> <ul> <li> diff --git a/zh-cn/docs/development/how-to-contribute.html b/zh-cn/docs/development/how-to-contribute.html index 27845ae..01636b4 100644 --- a/zh-cn/docs/development/how-to-contribute.html +++ b/zh-cn/docs/development/how-to-contribute.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>Apache InLong社区欢迎大家为Apache InLong做贡献,您可以通过很多方式为InLong项目成长贡献一份力量:</p> <ul> <li>贡献文档:浏览文档可以加深您对InLong的了解,一旦发现文档写得不清晰或逻辑混乱的地方,可以订正、修改、补充或<a href="mailto:d...@inlong.apache.org">联系我们</a></li> diff --git a/zh-cn/docs/development/how-to-release.html b/zh-cn/docs/development/how-to-release.html index aa9ae59..99151ca 100644 --- a/zh-cn/docs/development/how-to-release.html +++ b/zh-cn/docs/development/how-to-release.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <blockquote> <p>本文主要介绍了Release Manager如何按照Apache的流程发布版本,</p> </blockquote> diff --git a/zh-cn/docs/development/how-to-subscribe.html b/zh-cn/docs/development/how-to-subscribe.html index 17ae582..b78d40b 100644 --- a/zh-cn/docs/development/how-to-subscribe.html +++ b/zh-cn/docs/development/how-to-subscribe.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>邮件列表是Apache社区用来沟通交流的一种形式,通常来说,Apache社区的许多事情都是由邮件列表来承载,比如:项目的提问与解答、技术讨论、事务决策、版本发布投票等等, 订阅邮件后,你可以第一时间获取InLong社区的动态,可以与社区保持同步。</p> <h4>InLong项目邮件列表</h4> diff --git a/zh-cn/docs/development/how-to-use-jira.html b/zh-cn/docs/development/how-to-use-jira.html index 4da85a1..08636dc 100644 --- a/zh-cn/docs/development/how-to-use-jira.html +++ b/zh-cn/docs/development/how-to-use-jira.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>JIRA是Apache官方推荐的任务管理平台,被Apache下的大部分项目用于缺陷跟踪、需求收集、任务跟踪,其丰富的功能更加便于 项目的管理,基于此InLong项目同样使用JIRA来进行管理项目。本文将简单介绍在InLong的开发过程中如何使用JIRA。</p> <h2>1. 注册并登陆到JIRA</h2> diff --git a/zh-cn/docs/development/how-to-verify.html b/zh-cn/docs/development/how-to-verify.html index 18f7387..2e0a03d 100644 --- a/zh-cn/docs/development/how-to-verify.html +++ b/zh-cn/docs/development/how-to-verify.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>详细的检查列表请参考: <a href="https://cwiki.apache.org/confluence/display/INCUBATOR/Incubator+Release+Checklist">check list</a></p> <h2>1. 下载要发布的候选版本到本地环境</h2> <pre><code class="language-shell">svn co https://dist.apache.org/repos/dist/dev/incubator/inlong/${release_version}-${rc_version}/ diff --git a/zh-cn/docs/development/how-to-vote-a-committer-ppmc.html b/zh-cn/docs/development/how-to-vote-a-committer-ppmc.html index 3c96109..e1f247a 100644 --- a/zh-cn/docs/development/how-to-vote-a-committer-ppmc.html +++ b/zh-cn/docs/development/how-to-vote-a-committer-ppmc.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <ol> <li> <p>TubeMQ的PPMC成员发现社区贡献者任何有价值的贡献并取得候选人本人同意后,在InLong的private邮件列表发起讨论;</p> diff --git a/zh-cn/docs/download/download.html b/zh-cn/docs/download/download.html index b582bf2..b3a435f 100644 --- a/zh-cn/docs/download/download.html +++ b/zh-cn/docs/download/download.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>使用以下链接,下载InLong,最新版本为0.9.0. <br> 注意:由于项目由Apache TubeMQ 更名为 Apache InLong,自0.9.0版本开始,相关发布包名变更为InLong</p> diff --git a/zh-cn/docs/download/release-0.3.0.html b/zh-cn/docs/download/release-0.3.0.html index c052042..f434f2c 100644 --- a/zh-cn/docs/download/release-0.3.0.html +++ b/zh-cn/docs/download/release-0.3.0.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>使用以下镜像下载InLong</p> <h2>InLong</h2> <table> diff --git a/zh-cn/docs/download/release-0.5.0.html b/zh-cn/docs/download/release-0.5.0.html index 2f9ce32..21ab29e 100644 --- a/zh-cn/docs/download/release-0.5.0.html +++ b/zh-cn/docs/download/release-0.5.0.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>使用以下镜像下载InLong</p> <h2>InLong</h2> <table> diff --git a/zh-cn/docs/download/release-0.6.0.html b/zh-cn/docs/download/release-0.6.0.html index 1299dd0..f92faad 100644 --- a/zh-cn/docs/download/release-0.6.0.html +++ b/zh-cn/docs/download/release-0.6.0.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>使用以下镜像下载InLong</p> <h2>InLong</h2> <table> diff --git a/zh-cn/docs/download/release-0.7.0.html b/zh-cn/docs/download/release-0.7.0.html index 9da2d0c..4afb81f 100644 --- a/zh-cn/docs/download/release-0.7.0.html +++ b/zh-cn/docs/download/release-0.7.0.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>使用以下镜像下载InLong</p> <h2>InLong</h2> <table> diff --git a/zh-cn/docs/download/release-0.8.0.html b/zh-cn/docs/download/release-0.8.0.html index 9f49ba8..cc2095e 100644 --- a/zh-cn/docs/download/release-0.8.0.html +++ b/zh-cn/docs/download/release-0.8.0.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>使用以下镜像下载InLong</p> <h2>InLong</h2> <table> diff --git a/zh-cn/docs/download/release-0.9.0.html b/zh-cn/docs/download/release-0.9.0.html index 3d98f88..799f45c 100644 --- a/zh-cn/docs/download/release-0.9.0.html +++ b/zh-cn/docs/download/release-0.9.0.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>使用以下镜像下载InLong</p> <h2>InLong</h2> <table> diff --git a/zh-cn/docs/example.html b/zh-cn/docs/example.html new file mode 100644 index 0000000..ac5fade --- /dev/null +++ b/zh-cn/docs/example.html @@ -0,0 +1,113 @@ +<!DOCTYPE html> +<html lang="en"> + +<head> + <meta charset="UTF-8"> + <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, user-scalable=no"> + <meta name="keywords" content="example" /> + <meta name="description" content="example" /> + <!-- 网页标签标题 --> + <title>入库 Hive 示例 - Apache InLong</title> + <link rel="shortcut icon" href="/img/apache.ico"/> + <link rel="stylesheet" href="/build/documentation.css" /> +</head> +<body> + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] +<h2>前置要求</h2> +<ul> +<li>Git</li> +<li>Docker</li> +<li>Docker-Compose</li> +</ul> +<h2>安装 Hive</h2> +<p>Hive 是运行的必备组件。如果您的机器上没有 Hive,这里推荐使用 Docker 进行快速安装,详情可见 <a href="https://github.com/big-data-europe/docker-hive">这里</a>。</p> +<blockquote> +<p>注意,我们需要在 namenode 中添加一个端口映射 <code>8020:8020</code>,因为它是 HDFS DefaultFS 的端口。</p> +</blockquote> +<h2>安装 InLong</h2> +<p>我们提供了 InLong 的 Docker 镜像,帮助你快速部署所有组件。</p> +<p>首先需要拉取 InLong 仓库</p> +<pre><code>$ git clone https://github.com/apache/incubator-inlong.git +</code></pre> +<p>然后进入 <code>docker-compose</code> 目录下</p> +<pre><code>$ cd ./docker/docker-compose +</code></pre> +<p>然后使用 <code>docker-compsoe</code> 命令安装 InLong 的相关组件</p> +<pre><code>docker-compose up -d +</code></pre> +<p>我们可以使用 <code>docker-compose ps</code> 来观察所有容器的启动状况。待所有容器启动完毕后,InLong 即安装成功。</p> +<h2>新建账号</h2> +<p>首先我们访问 <code>http://localhost:80</code> 进入 InLong Manager 的主页,并输入账户名 <code>admin</code> 和 密码 <code>inlong</code> 进入管理员账户。</p> +<p>然后进入 “系统管理” 界面,点击 “新建账号”,添加一个新的普通用户,这里我们以添加账户名 <code>test</code> 和 密码 <code>test</code> 为例。</p> +<img src="../../img/create-account.png" align="center" alt="Create Account"/> +<h2>新建接入</h2> +<p>然后我们进入 “数据接入” 界面,点击右上角的 “新建接入”,新建一条接入,按下图所示填入业务信息</p> +<img src="../../img/create-business.png" align="center" alt="Create Business"/> +<p>然后点击下一步,按下图所示填入数据流信息</p> +<img src="../../img/create-stream.png" align="center" alt="Create Stream"/> +<p>注意其中消息来源选择“文件”,暂时不用新建数据源。</p> +<p>然后我们在下面的“数据信息”一栏中填入以下信息</p> +<img src="../../img/date-information.png" align="center" alt="Data Information"/> +<p>然后在数据流向中选择 Hive,并点击 “添加”,添加 Hive 配置</p> +<img src="../../img/hive-config.png" align="center" alt="Hive Config"/> +<p>注意这里目标表无需提前创建,InLong Manager 会在接入通过之后自动为我们创建表。另外,请使用 “连接测试” 保证 InLong Manager 可以连接到你的 Hive。</p> +<p>然后点击“提交审批”按钮,该接入就会创建成功,进入审批状态。</p> +<h2>审批接入</h2> +<p>进入“审批管理”界面,点击“我的审批”,将刚刚申请的接入通过。</p> +<p>到此接入就已经创建完毕了,我们可以在 Hive 中看到相应的表已经被创建,并且在 TubeMQ 的管理界面中可以看到相应的 topic 已经创建成功。</p> +<h2>配置 agent</h2> +<p>然后我们使用 docker 进入 agent 容器内,创建相应的 agent 配置。</p> +<pre><code>$ docker exec -it agent sh +</code></pre> +<p>然后我们新建 <code>.inlong</code> 文件夹,并创建以 <code>bid.local</code> 命名的文件,在其中填入 Dataproxy 有关配置。</p> +<pre><code>$ mkdir .inlong +$ cd .inlong +$ touch b_test.local +$ echo '{"cluster_id":1,"isInterVisit":1,"size":1,"address": [{"port":46801,"host":"dataproxy"}], "switch":0}' >> b_test.local +</code></pre> +<p>然后退出容器,使用 curl 向 agent 容器发送请求。</p> +<pre><code>curl --location --request POST 'http://localhost:8008/config/job' \ +--header 'Content-Type: application/json' \ +--data '{ +"job": { +"dir": { +"path": "", +"pattern": "/data/collect-data/test.log" +}, +"trigger": "org.apache.inlong.agent.plugin.trigger.DirectoryTrigger", +"id": 1, +"thread": { +"running": { +"core": "4" +} +}, +"name": "fileAgentTest", +"source": "org.apache.inlong.agent.plugin.sources.TextFileSource", +"sink": "org.apache.inlong.agent.plugin.sinks.ProxySink", +"channel": "org.apache.inlong.agent.plugin.channel.MemoryChannel" +}, +"proxy": { +"bid": "b_test", +"tid": "test_stream" +}, +"op": "add" +}' +</code></pre> +<p>至此,agent 就配置完毕了。接下来我们可以新建 <code>./collect-data/test.log</code> ,并往里面添加内容,来触发 agent 向 dataproxy 发送数据了。</p> +<pre><code>$ touch collect-data/test.log +$ echo 'test,24' >> collect-data/test.log +</code></pre> +<p>然后观察 agent 和 dataproxy 的日志,可以看到相关数据已经成功发送。</p> +<pre><code>$ docker logs agent +$ docker logs dataproxy +</code></pre> +</div></section><footer class="footer-container"><div class="footer-body"><img src="/img/incubator-logo.svg"/><div class="cols-container"><div class="col col-24"><p>Apache InLong (incubating) is an effort undergoing incubation at The Apache Software Foundation (ASF), sponsored by Incubator. Incubation is required of all newly accepted projects until a further review indicates that the infrastructure, communications, and decision making process have stabilized in a manner consistent with [...] + <script src="https://f.alicdn.com/react/15.4.1/react-with-addons.min.js"></script> + <script src="https://f.alicdn.com/react/15.4.1/react-dom.min.js"></script> + <script src="https://buttons.github.io/buttons.js"></script> + <script> + window.rootPath = ''; + </script> + <script src="/build/documentation.js"></script> +</body> +</html> diff --git a/zh-cn/docs/example.json b/zh-cn/docs/example.json new file mode 100644 index 0000000..c611a73 --- /dev/null +++ b/zh-cn/docs/example.json @@ -0,0 +1,8 @@ +{ + "filename": "example.md", + "__html": "<p>本节用一个简单的示例,帮助您使用 Docker 快速体验 InLong 的完整流程。</p>\n<h2>前置要求</h2>\n<ul>\n<li>Git</li>\n<li>Docker</li>\n<li>Docker-Compose</li>\n</ul>\n<h2>安装 Hive</h2>\n<p>Hive 是运行的必备组件。如果您的机器上没有 Hive,这里推荐使用 Docker 进行快速安装,详情可见 <a href=\"https://github.com/big-data-europe/docker-hive\">这里</a>。</p>\n<blockquote>\n<p>注意,我们需要在 namenode 中添加一个端口映射 <code>8020:8020</code>,因为它是 HDFS DefaultFS 的端口。</p>\n</blockquote>\n<h2>安装 InLong</h2>\n<p>我们提供了 InLong 的 Docker 镜像,帮助你快速部署所有组件。</p>\n<p>首先需要拉取 InLong [...] + "link": "/zh-cn/docs/example.html", + "meta": { + "title": "入库 Hive 示例 - Apache InLong" + } +} \ No newline at end of file diff --git a/zh-cn/docs/example.md b/zh-cn/docs/example.md new file mode 100644 index 0000000..332cdab --- /dev/null +++ b/zh-cn/docs/example.md @@ -0,0 +1,131 @@ +--- +title: 入库 Hive 示例 - Apache InLong +--- + +本节用一个简单的示例,帮助您使用 Docker 快速体验 InLong 的完整流程。 + +## 前置要求 +* Git +* Docker +* Docker-Compose + +## 安装 Hive +Hive 是运行的必备组件。如果您的机器上没有 Hive,这里推荐使用 Docker 进行快速安装,详情可见 [这里](https://github.com/big-data-europe/docker-hive)。 + +> 注意,我们需要在 namenode 中添加一个端口映射 `8020:8020`,因为它是 HDFS DefaultFS 的端口。 + +## 安装 InLong +我们提供了 InLong 的 Docker 镜像,帮助你快速部署所有组件。 + +首先需要拉取 InLong 仓库 +``` +$ git clone https://github.com/apache/incubator-inlong.git +``` + +然后进入 `docker-compose` 目录下 +``` +$ cd ./docker/docker-compose +``` + +然后使用 `docker-compsoe` 命令安装 InLong 的相关组件 +``` +docker-compose up -d +``` + +我们可以使用 `docker-compose ps` 来观察所有容器的启动状况。待所有容器启动完毕后,InLong 即安装成功。 + +## 新建账号 +首先我们访问 `http://localhost:80` 进入 InLong Manager 的主页,并输入账户名 `admin` 和 密码 `inlong` 进入管理员账户。 + +然后进入 “系统管理” 界面,点击 “新建账号”,添加一个新的普通用户,这里我们以添加账户名 `test` 和 密码 `test` 为例。 + +<img src="../../img/create-account.png" align="center" alt="Create Account"/> + +## 新建接入 +然后我们进入 “数据接入” 界面,点击右上角的 “新建接入”,新建一条接入,按下图所示填入业务信息 + +<img src="../../img/create-business.png" align="center" alt="Create Business"/> + +然后点击下一步,按下图所示填入数据流信息 + +<img src="../../img/create-stream.png" align="center" alt="Create Stream"/> + +注意其中消息来源选择“文件”,暂时不用新建数据源。 + +然后我们在下面的“数据信息”一栏中填入以下信息 + +<img src="../../img/date-information.png" align="center" alt="Data Information"/> + +然后在数据流向中选择 Hive,并点击 “添加”,添加 Hive 配置 + +<img src="../../img/hive-config.png" align="center" alt="Hive Config"/> + +注意这里目标表无需提前创建,InLong Manager 会在接入通过之后自动为我们创建表。另外,请使用 “连接测试” 保证 InLong Manager 可以连接到你的 Hive。 + +然后点击“提交审批”按钮,该接入就会创建成功,进入审批状态。 + +## 审批接入 +进入“审批管理”界面,点击“我的审批”,将刚刚申请的接入通过。 + +到此接入就已经创建完毕了,我们可以在 Hive 中看到相应的表已经被创建,并且在 TubeMQ 的管理界面中可以看到相应的 topic 已经创建成功。 + +## 配置 agent +然后我们使用 docker 进入 agent 容器内,创建相应的 agent 配置。 +``` +$ docker exec -it agent sh +``` + +然后我们新建 `.inlong` 文件夹,并创建以 `bid.local` 命名的文件,在其中填入 Dataproxy 有关配置。 +``` +$ mkdir .inlong +$ cd .inlong +$ touch b_test.local +$ echo '{"cluster_id":1,"isInterVisit":1,"size":1,"address": [{"port":46801,"host":"dataproxy"}], "switch":0}' >> b_test.local +``` + +然后退出容器,使用 curl 向 agent 容器发送请求。 +``` +curl --location --request POST 'http://localhost:8008/config/job' \ +--header 'Content-Type: application/json' \ +--data '{ +"job": { +"dir": { +"path": "", +"pattern": "/data/collect-data/test.log" +}, +"trigger": "org.apache.inlong.agent.plugin.trigger.DirectoryTrigger", +"id": 1, +"thread": { +"running": { +"core": "4" +} +}, +"name": "fileAgentTest", +"source": "org.apache.inlong.agent.plugin.sources.TextFileSource", +"sink": "org.apache.inlong.agent.plugin.sinks.ProxySink", +"channel": "org.apache.inlong.agent.plugin.channel.MemoryChannel" +}, +"proxy": { +"bid": "b_test", +"tid": "test_stream" +}, +"op": "add" +}' +``` + +至此,agent 就配置完毕了。接下来我们可以新建 `./collect-data/test.log` ,并往里面添加内容,来触发 agent 向 dataproxy 发送数据了。 + +``` +$ touch collect-data/test.log +$ echo 'test,24' >> collect-data/test.log +``` + +然后观察 agent 和 dataproxy 的日志,可以看到相关数据已经成功发送。 + +``` +$ docker logs agent +$ docker logs dataproxy +``` + + + diff --git a/zh-cn/docs/modules/agent/architecture.html b/zh-cn/docs/modules/agent/architecture.html index 8b95a6a..1a11afa 100644 --- a/zh-cn/docs/modules/agent/architecture.html +++ b/zh-cn/docs/modules/agent/architecture.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>InLong-Agent是一个支持多种数据源类型的收集工具,致力于实现包括file、sql、Binlog、metrics等多种异构数据源之间稳定高效的数据采集功能。</p> <h3>简要的架构图如下:</h3> <p><img src="img/architecture.png" alt=""></p> diff --git a/zh-cn/docs/modules/agent/quick_start.html b/zh-cn/docs/modules/agent/quick_start.html index 3dad5e0..7742101 100644 --- a/zh-cn/docs/modules/agent/quick_start.html +++ b/zh-cn/docs/modules/agent/quick_start.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <pre><code>cd inlong-agent </code></pre> <p>agent 支持本地运行以及线上运行,其中线上运行从inlong manager拉取任务,本地运行可使用http请求提交任务</p> diff --git a/zh-cn/docs/modules/dataproxy-sdk/architecture.html b/zh-cn/docs/modules/dataproxy-sdk/architecture.html index fb1bbdb..fb7f2c0 100644 --- a/zh-cn/docs/modules/dataproxy-sdk/architecture.html +++ b/zh-cn/docs/modules/dataproxy-sdk/architecture.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>在业务使用消息接入方式时,业务一般仅需将数据按照DataProxy可识别的格式(如六段协议、数字化协议等) 进行组包发送,就可以将数据接入到inlong。但为了保证数据可靠性、负载均衡、动态更新proxy列表等安全特性 用户程序就需要考虑更多最终导致程序过于繁琐臃肿。</p> diff --git a/zh-cn/docs/modules/dataproxy-sdk/quick_start.html b/zh-cn/docs/modules/dataproxy-sdk/quick_start.html index 21c7bbf..8c32220 100644 --- a/zh-cn/docs/modules/dataproxy-sdk/quick_start.html +++ b/zh-cn/docs/modules/dataproxy-sdk/quick_start.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>编写java程序时,增加pom配置如下:</p> <pre><code><dependency> <groupId>org.apache.inlong</groupId> diff --git a/zh-cn/docs/modules/dataproxy/architecture.html b/zh-cn/docs/modules/dataproxy/architecture.html index 8aa9b9d..4ee4a98 100644 --- a/zh-cn/docs/modules/dataproxy/architecture.html +++ b/zh-cn/docs/modules/dataproxy/architecture.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <pre><code>InLong-dataProxy属于inlong proxy层,用于数据的汇集接收以及转发。通过格式转换,将数据转为cache层可以缓存处理的TDMsg1格式 InLong-dataProxy充当了InLong采集端到InLong缓冲端的桥梁,dataproxy从manager模块拉取业务id与对应topic名称的关系,内部管理多个topic的生产者 当dataproxy收到消息时,会首先缓存到本地的Channel中,并使用本地的producer往后端即cache层发送数据 diff --git a/zh-cn/docs/modules/dataproxy/quick_start.html b/zh-cn/docs/modules/dataproxy/quick_start.html index d98992b..a968a92 100644 --- a/zh-cn/docs/modules/dataproxy/quick_start.html +++ b/zh-cn/docs/modules/dataproxy/quick_start.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>所有的安装文件都在 <code>inlong-dataproxy</code> 目录下。</p> <h3>配置tube地址和端口号</h3> <p><code>tubemq_master_list</code>是TubeMQ master rpc地址,多个逗号分隔。</p> diff --git a/zh-cn/docs/modules/manager/architecture.html b/zh-cn/docs/modules/manager/architecture.html index 0069172..2b96aa9 100644 --- a/zh-cn/docs/modules/manager/architecture.html +++ b/zh-cn/docs/modules/manager/architecture.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <ul> <li> <p>目标定位:Apache inlong 定位为一站式数据接入解决方案,提供完整覆盖大数据接入场景从数据采集、传输、分拣、落地的技术能力。</p> diff --git a/zh-cn/docs/modules/manager/quick_start.html b/zh-cn/docs/modules/manager/quick_start.html index 1b8e36c..3983ec0 100644 --- a/zh-cn/docs/modules/manager/quick_start.html +++ b/zh-cn/docs/modules/manager/quick_start.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <ul> <li> <p>安装并启动 MySQL 5.7+,把 inlong-manager 模块中的 <code>doc/sql/apache_inlong_manager.sql</code> 文件拷贝到 MySQL 数据库所在的服务器 diff --git a/zh-cn/docs/modules/manager/user_manual.html b/zh-cn/docs/modules/manager/user_manual.html index 9339835..7445f92 100644 --- a/zh-cn/docs/modules/manager/user_manual.html +++ b/zh-cn/docs/modules/manager/user_manual.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>需系统使用用户输入账号名称和密码。</p> <p><img src="img/image-1624433272455.png" alt=""></p> <h1>2. 数据接入</h1> diff --git a/zh-cn/docs/modules/sort/introduction.html b/zh-cn/docs/modules/sort/introduction.html index 0456328..a406f9b 100644 --- a/zh-cn/docs/modules/sort/introduction.html +++ b/zh-cn/docs/modules/sort/introduction.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>inlong-sort是一个基于flink的ETL系统,支持多种数据源,支持简单的字段抽取,支持多种存储系统。 inlong-sort依赖inlong-manager进行系统元数据的管理,元数据依赖zk进行存储及同步。</p> <h1>特性</h1> diff --git a/zh-cn/docs/modules/sort/protocol_introduction.html b/zh-cn/docs/modules/sort/protocol_introduction.html index 73b8460..47dd696 100644 --- a/zh-cn/docs/modules/sort/protocol_introduction.html +++ b/zh-cn/docs/modules/sort/protocol_introduction.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>当前inlong-sort的元数据管理依赖inlong-manager。</p> <p>inlong-sort与inlong-manager之间通过zk进行元数据的交互。</p> <h1>Zookeeper结构</h1> diff --git a/zh-cn/docs/modules/sort/quick_start.html b/zh-cn/docs/modules/sort/quick_start.html index 7bde7ce..8438c5a 100644 --- a/zh-cn/docs/modules/sort/quick_start.html +++ b/zh-cn/docs/modules/sort/quick_start.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>当前inlong-sort是基于flink的一个应用,因此运行inlong-sort应用前,需要准备好flink环境。</p> <p><a href="https://ci.apache.org/projects/flink/flink-docs-release-1.9/ops/deployment/cluster_setup.html" title="how to set up flink environment">如何配置flink环境</a></p> <p>由于当前inlong-sort依赖的是flink1.9.3版本,因此在下载部署包时,请选择<code>flink-1.9.3-bin-scala_2.11.tgz</code></p> diff --git a/zh-cn/docs/modules/tubemq/architecture.html b/zh-cn/docs/modules/tubemq/architecture.html index cae8450..e098993 100644 --- a/zh-cn/docs/modules/tubemq/architecture.html +++ b/zh-cn/docs/modules/tubemq/architecture.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>经过多年演变,TubeMQ集群分为如下5个部分: <img src="img/sys_structure.png" alt=""></p> <ul> diff --git a/zh-cn/docs/modules/tubemq/client_rpc.html b/zh-cn/docs/modules/tubemq/client_rpc.html index 96d5beb..266ab7e 100644 --- a/zh-cn/docs/modules/tubemq/client_rpc.html +++ b/zh-cn/docs/modules/tubemq/client_rpc.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>这部分介绍内容在/org/apache/inlong/tubemq/corerpc模块下可以找到对应实现,Apache InLong TubeMQ模块的各个节点间(Client、Master、Broker)通过TCP协议长连接交互,其消息采用的是 【二进制 + Protobuf编码】组合方式进行定义,如下图示: <img src="img/client_rpc/rpc_bytes_def.png" alt=""></p> <p>在TCP里我们看到的都是二进制流,我们定义了4字节的msgToken消息头字段RPC_PROTOCOL_BEGIN_TOKEN,用来区分每一条消息以及识别对端的合法性,客户端收到的消息不是以该字段开始的响应消息时,说明连接方非本系统支持的协议,或者返回数据出现了异常,这个时候需要关闭该连接,提示错误退出或者重连;紧接着的是4字节的消息序列号serialNo,该字段由请求方生成通过请求消息携带给服务端,服务器端完成该请求消息服务后通过请求消息的对应响应消息原样返回,主要用于客户端关联请求响应的上下文;4字节的listSize字段表示接下来按照PB编码的数据块个数,即后面跟随的[&lt;len&gt;&lt;data&gt;]内容的块数,目前协议定义下该字段不为0;[&lt;len&gt;&lt;data&gt;]是2个字段组合,即数据块长度,数据,主要是表示这个数据块长度及具� �的数据。</p> diff --git a/zh-cn/docs/modules/tubemq/clients_java.html b/zh-cn/docs/modules/tubemq/clients_java.html index 1eeb0c7..4b1b891 100644 --- a/zh-cn/docs/modules/tubemq/clients_java.html +++ b/zh-cn/docs/modules/tubemq/clients_java.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <h3>1.1 MessageSessionFactory(消息会话工厂):</h3> <p>TubeMQ 采用MessageSessionFactory(消息会话工厂)来管理网络连接,又根据业务不同客户端是否复用连接细分为TubeSingleSessionFactory(单连接会话工厂)类和TubeMultiSessionFactory(多连接会话工厂)类2个部分,其实现逻辑大家可以从代码可以看到,单连接会话通过定义clientFactory静态类,实现了进程内不同客户端连接相同目标服务器时底层物理连接只建立一条的特征,多连接会话里定义的clientFactory为非静态类,从而实现同进程内通过不同会话工厂,创建的客户端所属的连接会话不同建立不同的物理连接。通过这种构造解决连接创建过多的问题,业务可以根据自身需要可以选择不同的消息会话工厂类,一般情况下我们使用单连接会话工厂类。</p> <h3>1.2 MasterInfo:</h3> diff --git a/zh-cn/docs/modules/tubemq/configure_introduction.html b/zh-cn/docs/modules/tubemq/configure_introduction.html index ad7548f..a1ee637 100644 --- a/zh-cn/docs/modules/tubemq/configure_introduction.html +++ b/zh-cn/docs/modules/tubemq/configure_introduction.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>TubeMQ服务端包括Master和Broker共2个模块,Master又包含供外部页面访问的Web前端模块(该部分存放在resources中),考虑到实际部署时2个模块常常部署在同1台机器中,TubeMQ将2个模块3个部分的内容打包在一起交付给运维使用;客户端则不包含服务端部分的lib包单独交付给业务使用。</p> <p>Master与Broker采用ini配置文件格式,相关配置文件分别放置在tubemq-server-3.9.0/conf/目录的master.ini和broker.ini文件中:</p> <p><img src="img/configure/conf_ini_pos.png" alt=""></p> diff --git a/zh-cn/docs/modules/tubemq/console_introduction.html b/zh-cn/docs/modules/tubemq/console_introduction.html index f1efbdf..7ca80b6 100644 --- a/zh-cn/docs/modules/tubemq/console_introduction.html +++ b/zh-cn/docs/modules/tubemq/console_introduction.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p> TubeMQ管控台是管理TubeMQ集群的简单运营工具,包括集群里的Master、Broker,以及Broker上部署的Topic元数据等与TubeMQ系统相关的运营数据及操作。需要说明的是,当前提供的TubeMQ前台所提供的功能没有涵盖TubeMQ所提供的功能范围,大家可以参照《TubeMQ HTTP访问接口定义.xls》定义自行实现符合业务需要的管控前台。TubeMQ管控台的访问地址为http://portal:webport/config/topic_list.htm: <img src="img/console/1568169770714.png" alt=""> 其中portal为该集群中任意的主、备Master的IP地址,webport为配置的Master的Web端口。</p> diff --git a/zh-cn/docs/modules/tubemq/consumer_example.html b/zh-cn/docs/modules/tubemq/consumer_example.html index f34debd..f5c1dd7 100644 --- a/zh-cn/docs/modules/tubemq/consumer_example.html +++ b/zh-cn/docs/modules/tubemq/consumer_example.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>TubeMQ 提供了两种方式来消费消息: PullConsumer and PushConsumer。</p> <h3>1.1 PullConsumer</h3> <pre><code class="language-java"> <span class="hljs-keyword">public</span> <span class="hljs-class"><span class="hljs-keyword">class</span> <span class="hljs-title">PullConsumerExample</span> </span>{ diff --git a/zh-cn/docs/modules/tubemq/deployment.html b/zh-cn/docs/modules/tubemq/deployment.html index 5898ef3..d00dac9 100644 --- a/zh-cn/docs/modules/tubemq/deployment.html +++ b/zh-cn/docs/modules/tubemq/deployment.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>进入工程根目录,执行命令:</p> <pre><code>mvn clean package -Dmaven.test.skip </code></pre> diff --git a/zh-cn/docs/modules/tubemq/error_code.html b/zh-cn/docs/modules/tubemq/error_code.html index 60df871..bf078fb 100644 --- a/zh-cn/docs/modules/tubemq/error_code.html +++ b/zh-cn/docs/modules/tubemq/error_code.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p> TubeMQ采用的是 错误码(errCode) + 错误详情(errMsg) 相结合的方式返回具体的操作结果。首先根据错误码确定是哪类问题,然后根据错误详情来确定具体的错误原因。表格汇总了所有的错误码以及运行中大家可能遇到的错误详情的相关对照。</p> <h2>2 错误码</h2> <table> diff --git a/zh-cn/docs/modules/tubemq/http_access_api.html b/zh-cn/docs/modules/tubemq/http_access_api.html index 4fb17a7..827aa16 100644 --- a/zh-cn/docs/modules/tubemq/http_access_api.html +++ b/zh-cn/docs/modules/tubemq/http_access_api.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>该部分接口一共有4个部分:</p> <ul> <li>Master元数据配置相关的操作接口,接口数量 24个</li> diff --git a/zh-cn/docs/modules/tubemq/producer_example.html b/zh-cn/docs/modules/tubemq/producer_example.html index 15b42c4..6c0bbdb 100644 --- a/zh-cn/docs/modules/tubemq/producer_example.html +++ b/zh-cn/docs/modules/tubemq/producer_example.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>TubeMQ提供了两种方式来初始化 session factory: TubeSingleSessionFactory 和 TubeMultiSessionFactory。</p> <ul> <li>TubeSingleSessionFactory 在整个生命周期只会创建一个 session</li> diff --git a/zh-cn/docs/modules/tubemq/quick_start.html b/zh-cn/docs/modules/tubemq/quick_start.html index ca1af7c..b610ecb 100644 --- a/zh-cn/docs/modules/tubemq/quick_start.html +++ b/zh-cn/docs/modules/tubemq/quick_start.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <h3>1.1 配置示例</h3> <p>TubeMQ 集群包含有两个组件: <strong>Master</strong> 和 <strong>Broker</strong>. Master 和 Broker 可以部署在相同或者不同的节点上,依照业务对机器的规划进行处理。我们通过如下3台机器搭建有2台Master的生产、消费的集群进行配置示例:</p> <table> diff --git a/zh-cn/docs/modules/tubemq/tubemq-manager/quick_start.html b/zh-cn/docs/modules/tubemq/tubemq-manager/quick_start.html index 93de24c..6a398a2 100644 --- a/zh-cn/docs/modules/tubemq/tubemq-manager/quick_start.html +++ b/zh-cn/docs/modules/tubemq/tubemq-manager/quick_start.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>安装文件在inlong-tubemq-manager目录.</p> <h3>配置</h3> <ul> diff --git a/zh-cn/docs/modules/tubemq/tubemq_perf_test_vs_Kafka_cn.html b/zh-cn/docs/modules/tubemq/tubemq_perf_test_vs_Kafka_cn.html index c6a80e8..b79b3b5 100644 --- a/zh-cn/docs/modules/tubemq/tubemq_perf_test_vs_Kafka_cn.html +++ b/zh-cn/docs/modules/tubemq/tubemq_perf_test_vs_Kafka_cn.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <h2>1 背景</h2> <p>TubeMQ是腾讯大数据自研的分布式消息中间件。其系统架构思想源于<a href="http://kafka.apache.org/">Apache Kafka</a>。在实现上,则完全采取自适应的方式,结合实战做了很多优化及研发工作,如分区管理、分配机制和全新节点通讯流程,自主开发高性能的底层RPC通讯模块等。 这些实现使得TubeMQ在保证实时性和一致性的前提下,具有很好的健壮性及更高的吞吐能力。结合目前主流消息中间件使用情况,以Kafka为参照做性能对比测试,对比常规应用场景下两套系统性能。</p> diff --git a/zh-cn/docs/modules/website/quick_start.html b/zh-cn/docs/modules/website/quick_start.html index 65f6de5..b3085d9 100644 --- a/zh-cn/docs/modules/website/quick_start.html +++ b/zh-cn/docs/modules/website/quick_start.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <p>WebSite<a href="https://github.com/apache/incubator-inlong">Apache InLong incubator</a>的管控端。</p> <h2>编译</h2> <pre><code>mvn package -DskipTests -Pdocker -pl inlong-website diff --git a/zh-cn/docs/quick_start.html b/zh-cn/docs/quick_start.html index acbd17b..77f669f 100644 --- a/zh-cn/docs/quick_start.html +++ b/zh-cn/docs/quick_start.html @@ -12,7 +12,7 @@ <link rel="stylesheet" href="/build/documentation.css" /> </head> <body> - <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] + <div id="root"><div class="documentation-page" data-reactroot=""><header class="header-container header-container-normal"><div class="header-body"><a href="/zh-cn/index.html"><a href="//www.apache.org"><img class="logo apache" style="width:120px" src="/img/asf_logo.svg"/></a><div class="logo-split"></div><img class="logo tube" style="width:120px;top:12px;position:absolute" src="/img/Tube logo.svg"/></a><div class="search search-normal"><span class="icon-search"></span></div><span class= [...] <h2>整体架构</h2> <img src="../../img/inlong_architecture.png" align="center" alt="Apache InLong"/> <p><a href="https://inlong.apache.org">Apache InLong</a>(incubating) 整体架构如上,该组件是一站式数据流媒体平台,提供自动化、安全、分布式、高效的数据发布和订阅能力,帮助您轻松构建基于流的数据应用程序。</p>