历时两天折腾,inlong终于启动成功
分析一下文档
inlong地址Apache Inlong | Apache Inlong
中文地址 InLong 简介 | Apache Inlong
刚开始参照文档里面得快速开始,
先下载对应得jar包,刚开始我下了1.1.0的,
解压 apache-inlong-1.1.0-incubating-src.tar.gz
gzip -d apache-inlong-1.1.0-incubating-src.tar.gz
解压出来之后,是个tar文件,继续解压
tar -xvf apache-inlong-1.1.0-incubating-src.tar
因为我想用docker启动,就按照文档上说的命令进行编译
总是报错,死活没成功
然后我采用了Dockers部署的方式
按照上面说的先下载对应jar包,安装之前要准备docker环境,
由于对docker-compose也不是特别熟,就先学先卖,
docker环境还是比较容易的
需要安装的是docker-compose环境,
参照链接centos 7.9 在线安装docker-compose
sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
此处如果是国内的云服务器,等待时间比较长
下载之后,执行
sudo chmod +x /usr/local/bin/docker-compose
测试安装
docker-compose -version
会出现类似这样的提示,安装成功
docker-compose version 1.29.2, build 5becea4c
接下来按照文档是需要配置docker/docker-compose/docker-compose.yml
问题一:出来了,找不到这个docker-compose.yml
查找了一下whereis docker-compose.yml
在/usr/local/bin这个目录底下有一个,但是打开是乱码的
于是只能从解压后的代码中找找
最后在解压后的代码中找到了一个
第一个问题解决了
问题二:根据 Flink 集群地址替换
docker/docker-compose/docker-compose.yml
中的FLINK_HOST
和FLINK_PORT
环境变量
这个怎么配呢,又开始百度参照docker-compose搭建flink
version: "2.1"
services:
jobmanager:
image: flink
expose:
- "6123"
ports:
- "8081:8081"
command: jobmanager
environment:
- JOB_MANAGER_RPC_ADDRESS=jobmanager
taskmanager:
image: flink
expose:
- "6121"
- "6122"
depends_on:
- jobmanager
command: taskmanager
links:
- "jobmanager:jobmanager"
environment:
- JOB_MANAGER_RPC_ADDRESS=jobmanager
需要在docker-compose.yml,里面追加这个flink
最终docker-compose.yml
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
version: '3.5'
services:
mysql:
image: mysql:8.0.28
container_name: mysql
ports:
- "33066:3306"
environment:
- MYSQL_ROOT_PASSWORD=inlong
healthcheck:
test: "/usr/bin/mysql --user=root --password=inlong --execute \"SHOW DATABASES;\""
timeout: 20s
interval: 2s
retries: 10
volumes:
- ./mysql:/var/lib/mysql
- ./sql:/docker-entrypoint-initdb.d
pulsar:
image: apachepulsar/pulsar:2.8.2
container_name: pulsar
ports:
- "6650:6650"
volumes:
- ./pulsar/data:/pulsar/data
command: bin/pulsar standalone
manager:
image: inlong/manager:1.2.0-incubating
container_name: manager
depends_on:
mysql:
condition: service_healthy
ports:
- "8083:8083"
environment:
- JDBC_URL=mysql:3306
- USERNAME=root
- PASSWORD=inlong
- ZK_URL=tubemq-server:2181
webisite:
image: inlong/dashboard:1.2.0-incubating
container_name: dashboard
depends_on:
- manager
ports:
- "80:80"
environment:
- MANAGER_API_ADDRESS=manager:8083
dataproxy:
image: inlong/dataproxy:1.2.0-incubating
container_name: dataproxy
depends_on:
- manager
ports:
- "46801:46801"
environment:
- MANAGER_OPENAPI_IP=manager
- MANAGER_OPENAPI_PORT=8083
- AUDIT_PROXY_URL=audit:10081
agent:
image: inlong/agent:1.2.0-incubating
container_name: agent
depends_on:
- manager
- dataproxy
environment:
- MANAGER_OPENAPI_IP=manager
- MANAGER_OPENAPI_PORT=8083
- DATAPROXY_IP=dataproxy
- DATAPROXY_PORT=46801
- AUDIT_PROXY_URL=audit:10081
ports:
- "8008:8008"
volumes:
- ./collect-data:/data/collect-data
audit:
image: inlong/audit:1.2.0-incubating
container_name: audit
depends_on:
mysql:
condition: service_healthy
environment:
- JDBC_URL=mysql:3306
- USERNAME=root
- PASSWORD=inlong
- PULSAR_BROKER_LIST=pulsar:6650
ports:
- "10081:10081"
jobmanager:
image: flink
expose:
- "6123"
ports:
- "8081:8081"
command: jobmanager
environment:
- JOB_MANAGER_RPC_ADDRESS=jobmanager
taskmanager:
image: flink
expose:
- "6121"
- "6122"
depends_on:
- jobmanager
command: taskmanager
links:
- "jobmanager:jobmanager"
environment:
- JOB_MANAGER_RPC_ADDRESS=jobmanager
注意mysql端口,默认是3306:3306,我的3306被占用,所以改了一下
文档坑的地方,按照文档应该进行到第三步编译了
编译这里给了个链接,让参考如何编译的那一步,就到了,我上面刚开始说的,耗时的地方,又编译不通过的地方,
这里应直接跳过,执行部署这一步
进入到安装好的docker-compose的目录,默认安装的地方是/usr/local/bin
执行命令,
docker-compose up -d
等待漫长的过程之后,就可以访问了,直接访问ip
就成功了,明天开始研究里面的流程
还没有研究单应用部署,后续再研究,在此记录一下耗时地方, 先快速启动起来,研究一下里面的流程,,网上文档不是很多,只能看文档,以供大家参考