暂无图片
暂无图片
7
暂无图片
暂无图片
暂无图片

【我和CloudQuery 的故事】安装部署CloudQuery 初体验—-前篇

1855

一、前言

在日常数据库运维中,为连接多种数据库,经常要安装不同的客户端,非常繁琐,且占用大量存储空间。如果能有一种工具,可以不用在自己电脑上安装,而且能够同时连接多种数据库该多好。
恰好有一天,我看到一朋友在朋友圈发了一条朋友圈信息,说CloudQuery在进行有奖征文。最近我不是刚参加完openGauss有奖征文吗,趁热打铁,看看这东西是什么,写写文章,看看能否得奖 _

于是点开了她发的朋友圈链接,里面只是描述文章征文的内容,并没有讲过多东西,没有讲解CloudQuery是干什么的,能做哪些事情,觉得好像也没啥啊,就有点失望了,正好也有事,就没再继续多看下去。
过了两天,正好无事,于是又打开了那链接,关注了公众号,登录下官网。我去,这才了解到了CloudQuery的一些知识,没想到这CloudQuery这么强大,竟然可以连接好多数据库,而且还有审计、提工单等作用。

image.png

于是,我决定好好使用了解下。
千里之行始于足下,先安装下试试,let’s go.

==本篇主要讲述如何安装部署CloudQuery及相关注意事项,因为篇幅,下一篇将讲述如何使用CloudQuery来连接数据库。

二、下载CloudQuery安装包

登录CloudQuery官网,打开下载链接: https://www.cloudquery.club/download,可下载当前最新的社区版 V2.3.0.,适合在RHEL/CentOS等操作系统安装。

image.png

点击“立即下载”,将软件下载到本地,下载的后的软件名称为 cloudquery-club-V2.3.0.tar.gz
然后将下载的安装包上传到安装CloudQuery的服务器某个目录,我习惯放在/root/soft目录下。

三、安装CloudQuery

3.1 安装CloudQuery

使用root用户安装cloudquery
解压cloudquery-club-V2.3.0.tar.gz,然后进行安装,操作如下:

--- 解压安装包
[root@xsky-node2 ~]# cd /root/soft
[root@xsky-node2 soft]# tar -zxf cloudquery-club-V2.3.0.tar.gz

-- 执行安装
[root@xsky-node2 soft]# cd cloudquery-club-V2.2.0
[root@xsky-node2 cloudquery-club-V2.2.0]# ./deploy.sh install

完整安装结果如下,稍微有些长,为让大家看到整个安装过程,我把整个安装过程代码都附上,如下所示:

[root@xsky-node2 cloudquery-club-V2.2.0]# ./deploy.sh install
请输入cloudQuery安装绝对路径(默认为/opt/cloudquery):    -- 此处可以直接按回车,默认安装在 /opt/cloudquery 目录

realpath: ‘’: No such file or directory
setenforce: SELinux is disabled
输入路径为无效文件夹,使用默认路径:/opt/cloudquery
开始安装docker与docker-compose
setenforce: SELinux is disabled
Created symlink from /etc/systemd/system/multi-user.target.wants/docker.service to /etc/systemd/system/docker.service.
------docker install success-----
------docker-compose install success------
------installation is complete------
开始加载docker镜像
setenforce: SELinux is disabled
开始加载base_support镜像
Loaded image: basejdkpython:8-jdk-slim-buster
Loaded image: base-redis:5.0.0
Loaded image: base-terminal:latest
cb42413394c4: Loading layer [==================================================>]  72.51MB/72.51MB
1c44f9d6c008: Loading layer [==================================================>]  9.079MB/9.079MB
c9c81fb767cc: Loading layer [==================================================>]  3.584kB/3.584kB
e339e3812d99: Loading layer [==================================================>]  127.2MB/127.2MB
741b957481de: Loading layer [==================================================>]  340.5kB/340.5kB
6db8ffdd7458: Loading layer [==================================================>]  12.49MB/12.49MB
3da4783ff617: Loading layer [==================================================>]  36.54MB/36.54MB
1b56d8f0f28d: Loading layer [==================================================>]  3.072kB/3.072kB
Loaded image: base-zookeeper:3.6.2
b93c1bd012ab: Loading layer [==================================================>]  80.33MB/80.33MB
680d4ad25629: Loading layer [==================================================>]  80.66MB/80.66MB
7f7e8ccae681: Loading layer [==================================================>]  759.9MB/759.9MB
5f9f0ed99f1d: Loading layer [==================================================>]  578.6kB/578.6kB
06b4d412e3fe: Loading layer [==================================================>]  3.063MB/3.063MB
7e7548a12c69: Loading layer [==================================================>]  1.536kB/1.536kB
615b033a1040: Loading layer [==================================================>]  3.584kB/3.584kB
dd007340d02c: Loading layer [==================================================>]  9.728kB/9.728kB
5f70bf18a086: Loading layer [==================================================>]  1.024kB/1.024kB
Loaded image: clickhouse/clickhouse-server:23.3.2.37
e8cf91efbcb0: Loading layer [==================================================>]  58.49MB/58.49MB
00f438525221: Loading layer [==================================================>]  10.44MB/10.44MB
53225373e343: Loading layer [==================================================>]  339.5kB/339.5kB
4d5f0af8bd5c: Loading layer [==================================================>]  4.174MB/4.174MB
7599efc97cb6: Loading layer [==================================================>]   17.1MB/17.1MB
f7ee3866e7fe: Loading layer [==================================================>]  1.425MB/1.425MB
717ce2a08388: Loading layer [==================================================>]  1.536kB/1.536kB
cdaa32d2ec3d: Loading layer [==================================================>]  9.216kB/9.216kB
535acdbb15a8: Loading layer [==================================================>]  197.7MB/197.7MB
919e5a1fcb6c: Loading layer [==================================================>]  56.32kB/56.32kB
52c5b1e57bcd: Loading layer [==================================================>]  2.048kB/2.048kB
72434b8f5e29: Loading layer [==================================================>]  3.072kB/3.072kB
f88c039d7fc6: Loading layer [==================================================>]  14.34kB/14.34kB
73321121ac16: Loading layer [==================================================>]  1.536kB/1.536kB
Loaded image: postgres:11.8
开始加载业务镜像
Sending build context to Docker daemon  144.1MB
Step 1/11 : FROM basejdkpython:8-jdk-slim-buster AS builder
 ---> ed637a4763c8
Step 2/11 : MAINTAINER zhiyou "jian.huang@bintools.cn"
 ---> Running in a26680e23237
Removing intermediate container a26680e23237
 ---> d33533b24031
Step 3/11 : WORKDIR /opt/cloudquery
 ---> Running in 9f43335e0f92
Removing intermediate container 9f43335e0f92
 ---> a36c7d68ab49
Step 4/11 : ADD target/cloudquery-user*.jar  ./cloudquery-user.jar
 ---> 7ce80605cccc
Step 5/11 : RUN mkdir config && mkdir -p /opt/cloudquery/dmc/modules && mkdir -p /opt/cloudquery/dmc/dms_home
 ---> Running in e1c7dc094ef6
Removing intermediate container e1c7dc094ef6
 ---> 2fb90af3cc3a
Step 6/11 : ADD ignore/dmc/modules /opt/cloudquery/dmc/modules
 ---> 64f5755ab83e
Step 7/11 : COPY target/classes/application-prod.yml ./config/application.yml
 ---> 024bbe6c6901
Step 8/11 : ADD target/sjt_agent.jar ./sjt_agent.jar
 ---> a04332697017
Step 9/11 : EXPOSE 8002
 ---> Running in fb0652633b36
Removing intermediate container fb0652633b36
 ---> b5acf1ea6ecb
Step 10/11 : EXPOSE 8802
 ---> Running in bd5d1c34d64b
Removing intermediate container bd5d1c34d64b
 ---> c4b7fa6fc7e4
Step 11/11 : ENTRYPOINT ["java","-javaagent:/opt/cloudquery/sjt_agent.jar","-Xdebug","-Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=8802","-jar","cloudquery-user.jar","--spring.config.location=/opt/cloudquery/config/application.yml"]
 ---> Running in d51313e590d3
Removing intermediate container d51313e590d3
 ---> bf2a930020f5
Successfully built bf2a930020f5
Successfully tagged user:cloudquery-club-V2.2.0
Sending build context to Docker daemon    161MB
Step 1/11 : FROM basejdkpython:8-jdk-slim-buster AS builder
 ---> ed637a4763c8
Step 2/11 : MAINTAINER lianjun "lianjun@bintools.cn"
 ---> Running in 23fb56316bbf
Removing intermediate container 23fb56316bbf
 ---> aa9481f7b501
Step 3/11 : WORKDIR /opt/cloudquery
 ---> Running in 1de42dc9c07d
Removing intermediate container 1de42dc9c07d
 ---> b7dd7ddcd9a3
Step 4/11 : RUN mkdir -p /opt/cloudquery/dmc/modules && mkdir -p /opt/cloudquery/dmc/dms_home && mkdir config
 ---> Running in 9e3e6b4156ce
Removing intermediate container 9e3e6b4156ce
 ---> 8afc18cc3e3b
Step 5/11 : ADD ignore/dmc/modules /opt/cloudquery/dmc/modules
 ---> 3f534f93c81f
Step 6/11 : ADD target/cloudquery-data-dict*.jar  ./cloudquery-data-dict.jar
 ---> 7396e1a1ee6d
Step 7/11 : COPY target/classes/application-prod.yml ./config/application.yml
 ---> 2b94014373be
Step 8/11 : ADD target/sjt_agent.jar ./sjt_agent.jar
 ---> cbcc86c8943d
Step 9/11 : EXPOSE 9191
 ---> Running in 33b7abe5fc19
Removing intermediate container 33b7abe5fc19
 ---> e90d22adf102
Step 10/11 : EXPOSE 9100
 ---> Running in 0d4e999a0d06
Removing intermediate container 0d4e999a0d06
 ---> ff61a94e587b
Step 11/11 : ENTRYPOINT ["java","-javaagent:/opt/cloudquery/sjt_agent.jar","-Xdebug","-Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=9100","-jar","cloudquery-data-dict.jar","--spring.config.location=/opt/cloudquery/config/application.yml"]
 ---> Running in 47f3b9409cf4
Removing intermediate container 47f3b9409cf4
 ---> 335f5fae4f74
Successfully built 335f5fae4f74
Successfully tagged data-dict:cloudquery-club-V2.2.0
Sending build context to Docker daemon  158.3MB
Step 1/11 : FROM basejdkpython:8-jdk-slim-buster AS builder
 ---> ed637a4763c8
Step 2/11 : MAINTAINER zhiyou "jian.huang@bintools.cn"
 ---> Using cache
 ---> d33533b24031
Step 3/11 : WORKDIR /opt/cloudquery
 ---> Using cache
 ---> a36c7d68ab49
Step 4/11 : RUN mkdir -p /opt/cloudquery/dmc/modules && mkdir -p /opt/cloudquery/dmc/dms_home && mkdir config
 ---> Running in 17d4c5f7be69
Removing intermediate container 17d4c5f7be69
 ---> f9414ee93a6d
Step 5/11 : ADD ignore/dmc/modules /opt/cloudquery/dmc/modules
 ---> 931aea6894d9
Step 6/11 : ADD target/cloudquery-desens*.jar  ./cloudquery-desens.jar
 ---> ca1bb6fd3e6d
Step 7/11 : COPY target/classes/application-prod.yml ./config/application.yml
 ---> 866c73123d19
Step 8/11 : ADD target/sjt_agent.jar ./sjt_agent.jar
 ---> f63712fb10e2
Step 9/11 : EXPOSE 6202
 ---> Running in defa7e77cf08
Removing intermediate container defa7e77cf08
 ---> 10386a8c7eae
Step 10/11 : EXPOSE 6203
 ---> Running in 1d72029d8df3
Removing intermediate container 1d72029d8df3
 ---> 0b9517a32a3b
Step 11/11 : ENTRYPOINT ["java","-javaagent:/opt/cloudquery/sjt_agent.jar","-Xdebug","-Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=6203","-jar","cloudquery-desens.jar","--spring.config.location=/opt/cloudquery/config/application.yml"]
 ---> Running in a50584fed44f
Removing intermediate container a50584fed44f
 ---> 0c6285c465ef
Successfully built 0c6285c465ef
Successfully tagged desens:cloudquery-club-V2.2.0
Sending build context to Docker daemon    528MB
Step 1/12 : FROM basejdkpython:8-jdk-slim-buster AS builder
 ---> ed637a4763c8
Step 2/12 : MAINTAINER zhiyou "jian.huang@bintools.cn"
 ---> Using cache
 ---> d33533b24031
Step 3/12 : WORKDIR /opt/cloudquery
 ---> Using cache
 ---> a36c7d68ab49
Step 4/12 : RUN mkdir -p /opt/cloudquery/dmc/modules && mkdir -p /opt/cloudquery/dmc/dms_home && mkdir config
 ---> Using cache
 ---> f9414ee93a6d
Step 5/12 : ADD ignore/dmc/modules /opt/cloudquery/dmc/modules
 ---> b6145b227132
Step 6/12 : ADD src/main/resources/DataSourceStatement.stg /opt/cloudquery/dmc/modules
 ---> e9ac4c90a5f1
Step 7/12 : ADD target/cloudquery-dms.jar  ./cloudquery-dms.jar
 ---> b591a32bcb13
Step 8/12 : ADD target/sjt_agent.jar ./sjt_agent.jar
 ---> ddac7fdd18ec
Step 9/12 : COPY target/classes/application-prod.yml ./config/application.yml
 ---> 83aa3f9a2058
Step 10/12 : EXPOSE 9001
 ---> Running in 601925e4e89d
Removing intermediate container 601925e4e89d
 ---> 4f692cd59da7
Step 11/12 : EXPOSE 9802
 ---> Running in 2a3eee066264
Removing intermediate container 2a3eee066264
 ---> db45a370b3c3
Step 12/12 : ENTRYPOINT ["java","-javaagent:/opt/cloudquery/sjt_agent.jar","-jar","cloudquery-dms.jar","--spring.config.location=/opt/cloudquery/config/application.yml"]
 ---> Running in a1cdfe8593f1
Removing intermediate container a1cdfe8593f1
 ---> 10490b0fb46d
Successfully built 10490b0fb46d
Successfully tagged dms:cloudquery-club-V2.2.0
Sending build context to Docker daemon  386.1MB
Step 1/11 : FROM basejdkpython:8-jdk-slim-buster AS builder
 ---> ed637a4763c8
Step 2/11 : MAINTAINER zhiyou "jian.huang@bintools.cn"
 ---> Using cache
 ---> d33533b24031
Step 3/11 : WORKDIR /opt/cloudquery
 ---> Using cache
 ---> a36c7d68ab49
Step 4/11 : RUN mkdir -p /opt/cloudquery/dmc/modules && mkdir -p /opt/cloudquery/dmc/dms_home && mkdir config
 ---> Using cache
 ---> f9414ee93a6d
Step 5/11 : ADD ignore/dmc/modules /opt/cloudquery/dmc/modules
 ---> c546352c13ef
Step 6/11 : ADD target/cloudquery-export*.jar  ./cloudquery-export.jar
 ---> 619df2c5cfe8
Step 7/11 : COPY target/classes/application-prod.yml ./config/application.yml
 ---> a08981a20c41
Step 8/11 : ADD target/sjt_agent.jar ./sjt_agent.jar
 ---> 2cf3b93bad45
Step 9/11 : EXPOSE 9001
 ---> Running in d66a72bc0bc8
Removing intermediate container d66a72bc0bc8
 ---> dbd312de5ef8
Step 10/11 : EXPOSE 9803
 ---> Running in d48a09fc5521
Removing intermediate container d48a09fc5521
 ---> 7db16d4b5a28
Step 11/11 : ENTRYPOINT ["java","-javaagent:/opt/cloudquery/sjt_agent.jar","-Xdebug","-Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=9803","-jar","cloudquery-export.jar","--spring.config.location=/opt/cloudquery/config/application.yml"]
 ---> Running in 5d55134339fc
Removing intermediate container 5d55134339fc
 ---> 6a7df0842d60
Successfully built 6a7df0842d60
Successfully tagged export:cloudquery-club-V2.2.0
Sending build context to Docker daemon  121.8MB
Step 1/10 : FROM basejdkpython:8-jdk-slim-buster AS builder
 ---> ed637a4763c8
Step 2/10 : MAINTAINER zhiyou "qipeng.lu@bintools.cn"
 ---> Running in 7d682f308838
Removing intermediate container 7d682f308838
 ---> 6d449362ae74
Step 3/10 : WORKDIR /opt/cloudquery
 ---> Running in 340ab95b7dd5
Removing intermediate container 340ab95b7dd5
 ---> d06ee0715f23
Step 4/10 : ADD target/cloudquery-flow*.jar  ./cloudquery-flow.jar
 ---> f950a7a25d5f
Step 5/10 : RUN mkdir config
 ---> Running in d640caa4c469
Removing intermediate container d640caa4c469
 ---> bac2e203c398
Step 6/10 : COPY target/classes/application-prod.yml ./config/application.yml
 ---> 67537c5abd07
Step 7/10 : ADD target/sjt_agent.jar ./sjt_agent.jar
 ---> 7a09048f8ee5
Step 8/10 : EXPOSE 9876
 ---> Running in cc25a20eca44
Removing intermediate container cc25a20eca44
 ---> 09e54c1ba1d7
Step 9/10 : EXPOSE 9877
 ---> Running in 738d017bd0e2
Removing intermediate container 738d017bd0e2
 ---> aca0e0a98d68
Step 10/10 : ENTRYPOINT ["java","-javaagent:/opt/cloudquery/sjt_agent.jar","-Xdebug","-Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=9877","-jar","cloudquery-flow.jar","--spring.config.location=/opt/cloudquery/config/application.yml"]
 ---> Running in 61bf43525a06
Removing intermediate container 61bf43525a06
 ---> 7c4d91244fe7
Successfully built 7c4d91244fe7
Successfully tagged flow:cloudquery-club-V2.2.0
Sending build context to Docker daemon  116.1MB
Step 1/11 : FROM basejdkpython:8-jdk-slim-buster AS builder
 ---> ed637a4763c8
Step 2/11 : MAINTAINER zhiyou "jian.huang@bintools.cn"
 ---> Using cache
 ---> d33533b24031
Step 3/11 : WORKDIR /opt/cloudquery
 ---> Using cache
 ---> a36c7d68ab49
Step 4/11 : ADD target/cloudquery-message*.jar  ./cloudquery-message.jar
 ---> 26170fd14fa8
Step 5/11 : RUN mkdir config
 ---> Running in 3a8c7b9a2443
Removing intermediate container 3a8c7b9a2443
 ---> 71c56c427e27
Step 6/11 : COPY target/classes/application-prod.yml ./config/application.yml
 ---> c9b4916ea0cc
Step 7/11 : ADD target/sjt_agent.jar ./sjt_agent.jar
 ---> 39529834997e
Step 8/11 : EXPOSE 8899
 ---> Running in 2cef156e6fa7
Removing intermediate container 2cef156e6fa7
 ---> 61afeb9cc053
Step 9/11 : EXPOSE 8892
 ---> Running in b4d4410b5c74
Removing intermediate container b4d4410b5c74
 ---> e4ce66cdeb1f
Step 10/11 : EXPOSE 7090
 ---> Running in 31e541a6134c
Removing intermediate container 31e541a6134c
 ---> f1081157a8f6
Step 11/11 : ENTRYPOINT ["java","-javaagent:/opt/cloudquery/sjt_agent.jar","-Xdebug","-Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=8892","-jar","cloudquery-message.jar","--spring.config.location=/opt/cloudquery/config/application.yml"]
 ---> Running in 86ae64218e85
Removing intermediate container 86ae64218e85
 ---> cecf9f36db5d
Successfully built cecf9f36db5d
Successfully tagged message:cloudquery-club-V2.2.0
Sending build context to Docker daemon    113MB
Step 1/10 : FROM basejdkpython:8-jdk-slim-buster AS builder
 ---> ed637a4763c8
Step 2/10 : MAINTAINER zhiyou "qipeng.lu@bintools.cn"
 ---> Using cache
 ---> 6d449362ae74
Step 3/10 : WORKDIR /opt/cloudquery
 ---> Using cache
 ---> d06ee0715f23
Step 4/10 : ADD target/cloudquery-gateway*.jar  ./cloudquery-gateway.jar
 ---> ba68324cc4d6
Step 5/10 : RUN mkdir config
 ---> Running in 22222ec884d9
Removing intermediate container 22222ec884d9
 ---> 845c80c3fa4f
Step 6/10 : COPY target/classes/application-prod.yml ./config/application.yml
 ---> 67d133819769
Step 7/10 : ADD target/sjt_agent.jar ./sjt_agent.jar
 ---> f282c4b50759
Step 8/10 : EXPOSE 8888
 ---> Running in e8e361bf6b84
Removing intermediate container e8e361bf6b84
 ---> ba7c8abbced9
Step 9/10 : EXPOSE 8889
 ---> Running in 1ff9e0083d20
Removing intermediate container 1ff9e0083d20
 ---> 67d08e686955
Step 10/10 : ENTRYPOINT ["java","-javaagent:/opt/cloudquery/sjt_agent.jar","-Xdebug","-Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=8889","-jar","cloudquery-gateway.jar","--spring.config.location=/opt/cloudquery/config/application.yml"]
 ---> Running in 0f468e451704
Removing intermediate container 0f468e451704
 ---> f7a9a73d3f9e
Successfully built f7a9a73d3f9e
Successfully tagged gateway:cloudquery-club-V2.2.0
Sending build context to Docker daemon  93.54MB
Step 1/9 : FROM basejdkpython:8-jdk-slim-buster AS builder
 ---> ed637a4763c8
Step 2/9 : MAINTAINER zhiyou "jian.huang@bintools.cn"
 ---> Using cache
 ---> d33533b24031
Step 3/9 : WORKDIR /opt/cloudquery
 ---> Using cache
 ---> a36c7d68ab49
Step 4/9 : ADD target/cloudquery-debug*.jar  ./cloudquery-debug.jar
 ---> fa561413a862
Step 5/9 : COPY target/classes/application.yml ./config/application.yml
 ---> 2afd7b4f0352
Step 6/9 : ADD target/sjt_agent.jar ./sjt_agent.jar
 ---> 8c53b271460f
Step 7/9 : EXPOSE 8899
 ---> Running in 7a0294d3dfd0
Removing intermediate container 7a0294d3dfd0
 ---> 119203055625
Step 8/9 : EXPOSE 8890
 ---> Running in 44d30edea545
Removing intermediate container 44d30edea545
 ---> d2a9cb49d292
Step 9/9 : ENTRYPOINT ["java","-javaagent:/opt/cloudquery/sjt_agent.jar","-Xdebug","-Xrunjdwp:transport=dt_socket,suspend=n,server=y,address=8890","-jar","cloudquery-debug.jar","--spring.config.location=/opt/cloudquery/config/application.yml"]
 ---> Running in 54b5edfa62fc
Removing intermediate container 54b5edfa62fc
 ---> c9b39ecfb814
Successfully built c9b39ecfb814
Successfully tagged debug:cloudquery-club-V2.2.0
unable to prepare context: path "./CloudQuery/audit-etl" not found
unable to prepare context: path "./CloudQuery/audit-display" not found
Sending build context to Docker daemon  140.7MB
Step 1/13 : FROM basejdkpython:8-jdk-slim-buster AS builder
 ---> ed637a4763c8
Step 2/13 : MAINTAINER zhiyou "yaolei.chen@bintools.cn"
 ---> Running in 11ff1a1b1c67
Removing intermediate container 11ff1a1b1c67
 ---> e88f813b16df
Step 3/13 : WORKDIR /opt/cloudquery
 ---> Running in 9f2a054b8c6e
Removing intermediate container 9f2a054b8c6e
 ---> 599c6759f30b
Step 4/13 : ADD target/cloudquery-analyze*.jar  ./cloudquery-analyze.jar
 ---> f233c62166b2
Step 5/13 : RUN mkdir config
 ---> Running in 9296f1ce7aec
Removing intermediate container 9296f1ce7aec
 ---> e4789694c8e5
Step 6/13 : RUN mkdir script-path
 ---> Running in 1aff06afc22a
Removing intermediate container 1aff06afc22a
 ---> c4e8c16bc1c0
Step 7/13 : COPY target/classes/application-prod.yml ./config/application.yml
 ---> 45eb3f2c0acf
Step 8/13 : COPY target/classes/sql.properties ./config/sql.properties
 ---> 72abb64ac241
Step 9/13 : COPY target/classes/spring-context.xml ./config/spring-context.xml
 ---> 6ad9b295277a
Step 10/13 : COPY target/classes/script-path ./script-path
 ---> 9d638d4fed78
Step 11/13 : ADD target/sjt_agent.jar ./sjt_agent.jar
 ---> 36c2f83b8c95
Step 12/13 : EXPOSE 9007
 ---> Running in b4b5d7c648e8
Removing intermediate container b4b5d7c648e8
 ---> 9a5ee9b6be9d
Step 13/13 : ENTRYPOINT ["java","-javaagent:/opt/cloudquery/sjt_agent.jar","-jar","cloudquery-analyze.jar","--spring.config.location=file:/opt/cloudquery/config/application.yml"]
 ---> Running in 7e5695e3dc82
Removing intermediate container 7e5695e3dc82
 ---> 45be2be0d08b
Successfully built 45be2be0d08b
Successfully tagged analyze:cloudquery-club-V2.2.0
43b3c4e3001c: Loading layer [==================================================>]  83.87MB/83.87MB
3a8f99f3bd90: Loading layer [==================================================>]  62.03MB/62.03MB
9f803fac20f7: Loading layer [==================================================>]  3.072kB/3.072kB
42e6e8955651: Loading layer [==================================================>]  4.096kB/4.096kB
35f05d5547f4: Loading layer [==================================================>]  3.584kB/3.584kB
e36a14968fa3: Loading layer [==================================================>]  7.168kB/7.168kB
b823f0fa5eab: Loading layer [==================================================>]   76.6MB/76.6MB
Loaded image: base-web:cloudquery-club-V2.2.0
生成cloudquery运行目录
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
镜像加载完毕,正在启动... 
WARNING: bridge-nf-call-iptables is disabled
WARNING: bridge-nf-call-ip6tables is disabled
Creating network "resource_cloudquerynet" with driver "bridge"
Creating cloudquery-postgreSQL ... done
Creating cloudquery-clickhouse ... done
Creating cloudquery-redis      ... done
Creating cloudquery-zookeeper  ... done
开始初始化postgreSQL数据...
正在初始化postgreSQL数据....
初始化postgreSQL数据完成...
Creating cloudquery-desens ... done
cloudquery-desens is up-to-date
Creating cloudquery-dms      ... done
Creating cloudquery-message  ... done
Creating cloudquery-gateway  ... done
Creating cloudquery-flow     ... done
Creating cloudquery-debug    ... done
Creating cloudquery-user     ... done
Creating cloudquery-analyze  ... done
Creating cloudquery-terminal ... done
Creating cloudquery-export   ... done
Creating enterprise_web ... done
启动

3.2 查看进程

可通过如下两种方式查看进程

-- 通过docker命令查看
[root@xsky-node2 ~]# docker ps -a
CONTAINER ID        IMAGE                                    COMMAND                  CREATED             STATUS              PORTS                                                  NAMES
68618d8a2b01        base-web:cloudquery-club-V2.2.0          "/docker-entrypoint.…"   56 minutes ago      Up 56 minutes       80/tcp, 0.0.0.0:80->9898/tcp, 0.0.0.0:81->9999/tcp     enterprise_web
3e4b39f8294b        debug:cloudquery-club-V2.2.0             "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       8890/tcp, 8899/tcp                                     cloudquery-debug
e8ee86fc4533        dms:cloudquery-club-V2.2.0               "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       9001/tcp, 9802/tcp                                     cloudquery-dms
5f1b1c152b52        user:cloudquery-club-V2.2.0              "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       8002/tcp, 8802/tcp                                     cloudquery-user
b3eff991fc2e        desens:cloudquery-club-V2.2.0            "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       6202-6203/tcp                                          cloudquery-desens
3a849cda4bb7        export:cloudquery-club-V2.2.0            "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       9001/tcp, 9803/tcp                                     cloudquery-export
046eeb0f23a6        flow:cloudquery-club-V2.2.0              "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       9876-9877/tcp                                          cloudquery-flow
20e33e8f123b        gateway:cloudquery-club-V2.2.0           "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       8888-8889/tcp                                          cloudquery-gateway
fefd276df63a        base-terminal:latest                     "/opt/cloudquery/ter…"   56 minutes ago      Up 56 minutes       9950/tcp                                               cloudquery-terminal
7366934b8802        analyze:cloudquery-club-V2.2.0           "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       9007/tcp                                               cloudquery-analyze
4c396281a6a1        message:cloudquery-club-V2.2.0           "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       7090/tcp, 8892/tcp, 8899/tcp                           cloudquery-message
a3f3edd22d74        base-redis:5.0.0                         "docker-entrypoint.s…"   2 hours ago         Up 58 minutes       6379/tcp                                               cloudquery-redis
dabcf1209ac1        base-zookeeper:3.6.2                     "/docker-entrypoint.…"   2 hours ago         Up 58 minutes       2888/tcp, 3888/tcp, 0.0.0.0:2181->2181/tcp, 8080/tcp   cloudquery-zookeeper
20639899b5a0        clickhouse/clickhouse-server:23.3.2.37   "/entrypoint.sh"         2 hours ago         Up 58 minutes       9000/tcp, 0.0.0.0:8123->8123/tcp, 9009/tcp             cloudquery-clickhouse
bcc95d1519df        postgres:11.8                            "docker-entrypoint.s…"   2 hours ago         Up 58 minutes       0.0.0.0:5432->5432/tcp                                 cloudquery-postgreSQL
[root@xsky-node2 ~]# 
[root@xsky-node2 ~]# docker container ls
CONTAINER ID        IMAGE                                    COMMAND                  CREATED             STATUS              PORTS                                                  NAMES
68618d8a2b01        base-web:cloudquery-club-V2.2.0          "/docker-entrypoint.…"   56 minutes ago      Up 56 minutes       80/tcp, 0.0.0.0:80->9898/tcp, 0.0.0.0:81->9999/tcp     enterprise_web
3e4b39f8294b        debug:cloudquery-club-V2.2.0             "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       8890/tcp, 8899/tcp                                     cloudquery-debug
e8ee86fc4533        dms:cloudquery-club-V2.2.0               "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       9001/tcp, 9802/tcp                                     cloudquery-dms
5f1b1c152b52        user:cloudquery-club-V2.2.0              "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       8002/tcp, 8802/tcp                                     cloudquery-user
b3eff991fc2e        desens:cloudquery-club-V2.2.0            "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       6202-6203/tcp                                          cloudquery-desens
3a849cda4bb7        export:cloudquery-club-V2.2.0            "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       9001/tcp, 9803/tcp                                     cloudquery-export
046eeb0f23a6        flow:cloudquery-club-V2.2.0              "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       9876-9877/tcp                                          cloudquery-flow
20e33e8f123b        gateway:cloudquery-club-V2.2.0           "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       8888-8889/tcp                                          cloudquery-gateway
fefd276df63a        base-terminal:latest                     "/opt/cloudquery/ter…"   56 minutes ago      Up 56 minutes       9950/tcp                                               cloudquery-terminal
7366934b8802        analyze:cloudquery-club-V2.2.0           "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       9007/tcp                                               cloudquery-analyze
4c396281a6a1        message:cloudquery-club-V2.2.0           "java -javaagent:/op…"   56 minutes ago      Up 56 minutes       7090/tcp, 8892/tcp, 8899/tcp                           cloudquery-message
a3f3edd22d74        base-redis:5.0.0                         "docker-entrypoint.s…"   2 hours ago         Up 58 minutes       6379/tcp                                               cloudquery-redis
dabcf1209ac1        base-zookeeper:3.6.2                     "/docker-entrypoint.…"   2 hours ago         Up 58 minutes       2888/tcp, 3888/tcp, 0.0.0.0:2181->2181/tcp, 8080/tcp   cloudquery-zookeeper
20639899b5a0        clickhouse/clickhouse-server:23.3.2.37   "/entrypoint.sh"         2 hours ago         Up 58 minutes       9000/tcp, 0.0.0.0:8123->8123/tcp, 9009/tcp             cloudquery-clickhouse
bcc95d1519df        postgres:11.8                            "docker-entrypoint.s…"   2 hours ago         Up 58 minutes       0.0.0.0:5432->5432/tcp                                 cloudquery-postgreSQL

image.png

还可以使用cloudquery.sh脚本来查看,如下所示:

-- root用户
[root@xsky-node2 ~]# cd /cloudquery/
[root@xsky-node2 cloudquery]# ./cloudquery.sh status
        Name                       Command               State                          Ports                        
---------------------------------------------------------------------------------------------------------------------
cloudquery-clickhouse   /entrypoint.sh                   Up      0.0.0.0:8123->8123/tcp, 9000/tcp, 9009/tcp          
cloudquery-postgreSQL   docker-entrypoint.sh postgres    Up      0.0.0.0:5432->5432/tcp                              
cloudquery-redis        docker-entrypoint.sh redis ...   Up      6379/tcp                                            
cloudquery-zookeeper    /docker-entrypoint.sh zkSe ...   Up      0.0.0.0:2181->2181/tcp, 2888/tcp, 3888/tcp, 8080/tcp
       Name                      Command               State              Ports            
-------------------------------------------------------------------------------------------
cloudquery-analyze    java -javaagent:/opt/cloud ...   Up      9007/tcp                    
cloudquery-debug      java -javaagent:/opt/cloud ...   Up      8890/tcp, 8899/tcp          
cloudquery-desens     java -javaagent:/opt/cloud ...   Up      6202/tcp, 6203/tcp          
cloudquery-dms        java -javaagent:/opt/cloud ...   Up      9001/tcp, 9802/tcp          
cloudquery-export     java -javaagent:/opt/cloud ...   Up      9001/tcp, 9803/tcp          
cloudquery-flow       java -javaagent:/opt/cloud ...   Up      9876/tcp, 9877/tcp          
cloudquery-gateway    java -javaagent:/opt/cloud ...   Up      8888/tcp, 8889/tcp          
cloudquery-message    java -javaagent:/opt/cloud ...   Up      7090/tcp, 8892/tcp, 8899/tcp
cloudquery-terminal   /opt/cloudquery/terminal - ...   Up      9950/tcp                    
cloudquery-user       java -javaagent:/opt/cloud ...   Up      8002/tcp, 8802/tcp          
     Name                   Command               State                         Ports                       
------------------------------------------------------------------------------------------------------------
enterprise_web   /docker-entrypoint.sh ngin ...   Up      80/tcp, 0.0.0.0:80->9898/tcp, 0.0.0.0:81->9999/tcp
状态

image.png

3.3 启停CloudQuery

可以使用如下方式启停CloudQuery

-- root用户
[root@xsky-node2 cloudquery]# ./cloudquery.sh stop
Stopping enterprise_web ... done
Removing enterprise_web ... done
Network resource_cloudquerynet is external, skipping
Stopping cloudquery-terminal ... done
Stopping cloudquery-export   ... done
Stopping cloudquery-analyze  ... done
Stopping cloudquery-user     ... done
Stopping cloudquery-message  ... done
Stopping cloudquery-debug    ... done
Stopping cloudquery-flow     ... done
Stopping cloudquery-gateway  ... done
Stopping cloudquery-dms      ... done
Stopping cloudquery-desens   ... done
Removing cloudquery-terminal ... done
Removing cloudquery-export   ... done
Removing cloudquery-analyze  ... done
Removing cloudquery-user     ... done
Removing cloudquery-message  ... done
Removing cloudquery-debug    ... done
Removing cloudquery-flow     ... done
Removing cloudquery-gateway  ... done
Removing cloudquery-dms      ... done
Removing cloudquery-desens   ... done
Network resource_cloudquerynet is external, skipping
停止除resource之外的服务
[root@xsky-node2 cloudquery]# 
[root@xsky-node2 cloudquery]# ./cloudquery.sh start
cloudquery-clickhouse is up-to-date
cloudquery-zookeeper is up-to-date
cloudquery-postgreSQL is up-to-date
cloudquery-redis is up-to-date
等待postgreSQL数据库启动...
postgreSQL数据库启动完成...
Creating cloudquery-message  ... done
Creating cloudquery-analyze  ... done
Creating cloudquery-flow     ... done
Creating cloudquery-export   ... done
Creating cloudquery-gateway  ... done
Creating cloudquery-dms      ... done
Creating cloudquery-terminal ... done
Creating cloudquery-debug    ... done
Creating cloudquery-desens   ... done
Creating cloudquery-user     ... done
Creating enterprise_web ... done
启动

image.png

3.4 排查日志

可以通过如下方法来查看应用相关日志

[root@xsky-node2 ~]# docker logs -f --tail 200 cloudquery-dms

image.png

四、登录CloudQuery

CloudQuery安装部署后,默认使用80端口,可通过http://IP:端口(默认 80)进行页面登录。
使用如下默认账号和密码登录控制台。
默认帐号: admin001
默认密码: Hello123$

image.png

登录后的控制台主界面如下:

image.png

五、附录

安装部署过程中,可能会遇到如下问题

5.1 服务器上原已安装redis

我初次安装时其中一台服务器出现了如下报错。

ERROR: for redis  Cannot start service redis: driver failed programming external connectivity on endpoint cloudquery-redis (c9d193b21566f6174e7328a8b214b37e0df0e86088f9057f1aab441aa0f5ab17): Error starting userland proxy: listen tcp 0.0.0.0:6379: bind: address already in use
ERROR: Encountered errors while bringing up the project.

CloudQuery内部通讯需要使用Redis,如果已安装了Redis,会因端口导致冲突,为此,可通过如下方式进行调整:

# cd /cloudquery/resource/  
--修改 docker-compose.yml 文件
-- 注释 redis的端口,如下所示

image.png

然后通过:cloudquery.sh stop/start 启停服务

5.2 docker版本过低

如果安装CloudQuery的服务器已安装了Docker,但版本过低,会导致安装失败,如下所所示。

[root@xsky-node2 cloudquery-club-V2.2.0]# ./deploy.sh install
请输入cloudQuery安装绝对路径(默认为/opt/cloudquery):
/opt/cloudquery
setenforce: SELinux is disabled
输入路径为无效文件夹,使用默认路径:/opt/cloudquery
docker 已安装
docker版本小于19,无法运行cloudQuery。请安装新版本docker与docker-compose。

[root@xsky-node2 cloudquery-club-V2.2.0]# docker --version
Docker version 18.09.9, build 039a7df9ba

image20230823105202669.png

安装新版CloudQuery V2 要求Docker 版本不能低于 19.03.12,如果服务器未安装Docker,安装CloudQuery后安装的Docker版本是19.03.12。
此时可有两种解决办法:
一是升级docker版本,二是完全卸载当前docker,使用软件自动安装的Docker.

5.3 服务器未安装docker-compose

如果服务器安装了Docker,且版本不低于CloudQuery要求的版本,但未安装docker-compose,也会导致安装失败
此时可以采用完全卸载服务器上的Docker,或者单独安装docker-compose至合适版本,然后重新执行deploy.sh进行软件安装

5.4 软件安装后无法页面登录

有时会遇到软件安装后,进程也都正常,但使用http://IP:端口 却无法访问:

2030b114adeef31aeae351e44d74d18.png

此时通过netstat -ano|grep 80 看到 80端口未被监听

41e630a78e09e20761511627d32d8b7.png

通过telnet IP:80 也无法登录。
此时可通过如下方法解决:
1) 编辑   /etc/sysconfig/network 文件
修改NETWORKING_IPV6=no
2) 编辑  /etc/default/grub 文件, 在GRUB_CMDLINE_LINUX=“添加ipv6.disable=1 后面保存不变”,如下所示:

[root@xsky-node2 ~]# cat /etc/default/grub 
GRUB_TIMEOUT=5
GRUB_DISTRIBUTOR="$(sed 's, release .*$,,g' /etc/system-release)"
GRUB_DEFAULT=saved
GRUB_DISABLE_SUBMENU=true
GRUB_TERMINAL_OUTPUT="console"
GRUB_CMDLINE_LINUX="ipv6.disable=1 crashkernel=auto rd.lvm.lv=centos/root rd.lvm.lv=centos/swap rhgb quiet transparent_hugepage=never"
GRUB_DISABLE_RECOVERY="true"

3) 重启网卡和服务器

service network restart
shutdown -r 0

如上操作后,正常情况可打开控制台页面。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论