docker-compose 搭建 zipkin 服务端

news/2024/11/23 2:15:50/

目录

基于docker-compose搭建服务端

数据库

服务器

docker-compose.yaml

问题

 测试


基于docker-compose搭建服务端

数据库

我这边存储选择了Mysql存储,新建了 zipkin库,数据库脚本如下

--
-- Copyright 2015-2019 The OpenZipkin Authors
--
-- Licensed 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.
--CREATE TABLE IF NOT EXISTS zipkin_spans (`trace_id_high` BIGINT NOT NULL DEFAULT 0 COMMENT 'If non zero, this means the trace uses 128 bit traceIds instead of 64 bit',`trace_id` BIGINT NOT NULL,`id` BIGINT NOT NULL,`name` VARCHAR(255) NOT NULL,`remote_service_name` VARCHAR(255),`parent_id` BIGINT,`debug` BIT(1),`start_ts` BIGINT COMMENT 'Span.timestamp(): epoch micros used for endTs query and to implement TTL',`duration` BIGINT COMMENT 'Span.duration(): micros used for minDuration and maxDuration query',PRIMARY KEY (`trace_id_high`, `trace_id`, `id`)
) ENGINE=InnoDB ROW_FORMAT=COMPRESSED CHARACTER SET=utf8 COLLATE utf8_general_ci;ALTER TABLE zipkin_spans ADD INDEX(`trace_id_high`, `trace_id`) COMMENT 'for getTracesByIds';
ALTER TABLE zipkin_spans ADD INDEX(`name`) COMMENT 'for getTraces and getSpanNames';
ALTER TABLE zipkin_spans ADD INDEX(`remote_service_name`) COMMENT 'for getTraces and getRemoteServiceNames';
ALTER TABLE zipkin_spans ADD INDEX(`start_ts`) COMMENT 'for getTraces ordering and range';CREATE TABLE IF NOT EXISTS zipkin_annotations (`trace_id_high` BIGINT NOT NULL DEFAULT 0 COMMENT 'If non zero, this means the trace uses 128 bit traceIds instead of 64 bit',`trace_id` BIGINT NOT NULL COMMENT 'coincides with zipkin_spans.trace_id',`span_id` BIGINT NOT NULL COMMENT 'coincides with zipkin_spans.id',`a_key` VARCHAR(255) NOT NULL COMMENT 'BinaryAnnotation.key or Annotation.value if type == -1',`a_value` BLOB COMMENT 'BinaryAnnotation.value(), which must be smaller than 64KB',`a_type` INT NOT NULL COMMENT 'BinaryAnnotation.type() or -1 if Annotation',`a_timestamp` BIGINT COMMENT 'Used to implement TTL; Annotation.timestamp or zipkin_spans.timestamp',`endpoint_ipv4` INT COMMENT 'Null when Binary/Annotation.endpoint is null',`endpoint_ipv6` BINARY(16) COMMENT 'Null when Binary/Annotation.endpoint is null, or no IPv6 address',`endpoint_port` SMALLINT COMMENT 'Null when Binary/Annotation.endpoint is null',`endpoint_service_name` VARCHAR(255) COMMENT 'Null when Binary/Annotation.endpoint is null'
) ENGINE=InnoDB ROW_FORMAT=COMPRESSED CHARACTER SET=utf8 COLLATE utf8_general_ci;ALTER TABLE zipkin_annotations ADD UNIQUE KEY(`trace_id_high`, `trace_id`, `span_id`, `a_key`, `a_timestamp`) COMMENT 'Ignore insert on duplicate';
ALTER TABLE zipkin_annotations ADD INDEX(`trace_id_high`, `trace_id`, `span_id`) COMMENT 'for joining with zipkin_spans';
ALTER TABLE zipkin_annotations ADD INDEX(`trace_id_high`, `trace_id`) COMMENT 'for getTraces/ByIds';
ALTER TABLE zipkin_annotations ADD INDEX(`endpoint_service_name`) COMMENT 'for getTraces and getServiceNames';
ALTER TABLE zipkin_annotations ADD INDEX(`a_type`) COMMENT 'for getTraces and autocomplete values';
ALTER TABLE zipkin_annotations ADD INDEX(`a_key`) COMMENT 'for getTraces and autocomplete values';
ALTER TABLE zipkin_annotations ADD INDEX(`trace_id`, `span_id`, `a_key`) COMMENT 'for dependencies job';CREATE TABLE IF NOT EXISTS zipkin_dependencies (`day` DATE NOT NULL,`parent` VARCHAR(255) NOT NULL,`child` VARCHAR(255) NOT NULL,`call_count` BIGINT,`error_count` BIGINT,PRIMARY KEY (`day`, `parent`, `child`)
) ENGINE=InnoDB ROW_FORMAT=COMPRESSED CHARACTER SET=utf8 COLLATE utf8_general_ci;

服务器

存储目录

mkdir -p /apps/zipkin/{config,data,logs}

docker-compose.yaml

version: '2'
services:zipkin:image: openzipkin/zipkincontainer_name: zipkinenvironment:- TZ=Asia/Shanghai- STORAGE_TYPE=mysql- MYSQL_DB=zipkin- MYSQL_USER=root- MYSQL_PASS=113355- MYSQL_HOST=192.168.1.115- MYSQL_TCP_PORT=3307- JAVA_OPTS=-Dlogging.level.zipkin2=DEBUGports:- 8112:9411networks:- dev
networks:dev:external: true

问题

启动后发现报错:java.util.ServiceConfigurationError:org.mariadb.jdbc.authentication.AuthenticationPlugin: Provider org.mariadb.jdbc.internal.com.send.authentication.SendGssApiAuthPacket could not be instantiated

aused by: java.lang.NoClassDefFoundError: Could not initialize class org.mariadb.jdbc.internal.com.send.authentication.SendGssApiAuthPacket

修改mysql版本为5.7

经排查,zipkin只支持mysql5.7版本,我这边使用的是8.0,版本不支持。 

修改后重新启动,成功

 测试

web页面:  ip:8112


http://www.ppmy.cn/news/242120.html

相关文章

【SLAM】Kimera-Multi (IEEE-TRO2022 年最佳论文傅京孙)

Kimera-Multi: Robust, Distributed, Dense Metric-Semantic SLAM for Multi-Robot Systems 0 摘要1. 引言2. RELATED WORK3. SYSTEM OVERVIEW4. DISTRIBUTED LOOP CLOSURE DETECTION[4.X Kimera-Multi相关补充](https://github.com/DEARsunshine/Kimera)5. EXPERIMENTS6. CONC…

MMDection学习记录(一)之环境配置

Linux下环境配置 创建环境并激活 conda create --name openmmlab python3.7 -y conda activate openmmlab安装Pytorch 建议使用pip命令安装,否则会报错: symbol free_gemm_select version libcublasLt.so.11 not defined in file libcublasLt.so.11 w…

《MySQL(四):基础篇- 约束》

文章目录 4. 约束4.1 概述4.2 约束演示4.3 外键约束4.3.1 介绍4.3.2 语法4.3.3 删除/更新行为 4. 约束 4.1 概述 概念:约束是作用于表中字段上的规则,用于限制存储在表中的数据。 目的:保证数据库中数据的正确、有效性和完整性。 分类: 约…

17:00面试,还没10分钟就出来了,问的实在是太...

从外包出来,没想到死在另一家厂子 自从加入这家公司,每天都在加班,钱倒是给的不少,所以也就忍了。没想到8月一纸通知,所有人不许加班,薪资直降30%,顿时有吃不起饭的赶脚。 好在有个兄弟内推我去…

运维小白必学篇之基础篇第十九集:rsync+inotfy实时同步

rsyncinotfy实时同步 目录 rsyncinotfy实时同步 一、服务器端 二、客户端 一、服务器端 1、安装网站服务,启动,但是不写首页文件 yum -y install httpd 2、安装raync服务 yum -y install rsync 3、修改主配置文件 (/etc/rsyncd.conf&am…

入门AI从谷歌这10门独立课程开始

​ 谷歌最近发布了一个名为"Generative AI learning path"的学习路径,该路径专为初学者设计,共包含10门独立课程。通过这个学习路径,初学者可以从基础概念开始学习,并逐步深入到更复杂的主题,帮助他们了解生…

老毛子最想固件,支持打印机了

老毛子最想固件,支持打印机了,现在设置网络打印机非常方便了,特别是hp1xxx系列,驱动程序安装方便很多。

815. 打印字符串

给定一个字符串,请你编写一个函数,void print(char str[]),将这个字符串打印出来。 输入格式 共一行,包含一个字符串。 输出格式 共一行,表示打印出的字符串。 数据范围 1≤字符串长度≤100 输入样例&#xff1…