首页 > 其他分享 >skywalking(三) 实现收集基于虚拟机环境dubbo微服务链路跟踪案例

skywalking(三) 实现收集基于虚拟机环境dubbo微服务链路跟踪案例

时间:2023-11-16 14:59:33浏览次数:41  
标签:dubbo java 虚拟机 zookeeper agent skywalking data

dubbo微服务架构

https://cn.dubbo.apache.org/zh-cn/overview/home/

https://help.aliyun.com/zh/edas/developer-reference/dubbo-overview

1. 安装zookeeper注册中心

官网:https://zookeeper.apache.org/

安装说明:https://zookeeper.apache.org/doc/r3.7.1/zookeeperAdmin.html

1.1 安装java

zookeeper依赖jdk环境

# 安装jdk 1.8
apt update
apt install -y openjdk-8-jdk

1.2 下载zookeeper并解压

wget https://dlcdn.apache.org/zookeeper/zookeeper-3.7.1/apache-zookeeper-3.7.1-bin.tar.gz
mkdir -p /apps
tar xvf apache-zookeeper-3.7.1-bin.tar.gz -C /apps
ln -s /apps/apache-zookeeper-3.7.1-bin /apps/zookeeper

1.3 修改配置

cd /apps/zookeeper/conf/
cp zoo_sample.cfg zoo.cfg

# cat zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper/
clientPort=2181
server.1=10.0.0.76:2888:3888
server.2=10.0.0.77:2888:3888
server.3=10.0.0.78:2888:3888

# 分别在不同服务器上创建myid,分别为1、2、3
mkdir -p /data/zookeeper
echo '1' > /data/zookeeper/myid

1.4 启动服务

zookeeper集群需要在20s内完成启动

/apps/zookeeper/bin/zkServer.sh start

1.5 验证集群

节点2为leader,其余节点为follower,集群状态正常

# zk1
[root@zk1 conf]#/apps/zookeeper/bin/zkServer.sh status
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /apps/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: follower

[root@zk2 conf]#/apps/zookeeper/bin/zkServer.sh status
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /apps/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: leader

[root@zk3 conf]#/apps/zookeeper/bin/zkServer.sh status
/usr/bin/java
ZooKeeper JMX enabled by default
Using config: /apps/zookeeper/bin/../conf/zoo.cfg
Client port found: 2181. Client address: localhost. Client SSL: false.
Mode: follower

2. 部署provider生产者

部署两台provider,IP:10.0.0.92-93

2.1 安装java环境

依赖java环境

# 安装jdk 1.8
apt update
apt install -y openjdk-8-jdk

2.2 安装skywalking java agent

  1. 下载并解压
mkdir /data && cd /data
wget https://archive.apache.org/dist/skywalking/java-agent/9.0.0/apache-skywalking-java-agent-9.0.0.tgz
tar xvf apache-skywalking-java-agent-9.0.0.tgz
  1. 配置skywalking agent连接server
vim /data/skywalking-agent/config/agent.config
...
agent.service_name=${SW_AGENT_NAME:dubbo-provider-1}
# provider2
# agent.service_name=${SW_AGENT_NAME:dubbo-provider-2}

agent.namespace=${SW_AGENT_NAMESPACE:dubbo}

# Backend service addresses.	# 后端服务即skywalking-oap平台地址,11800为grpc端口,12800为http端口
collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:10.0.0.91:11800}

2.3 准备dubbo-server.jar

dubbo-server.jar

  1. 用WinRAR打开,查看config.properties配置内容,再上传至服务器
dubbo.registry=zookeeper://zookeeper1:2181?backup=zookeeper2:2181,zookeeper3:2181

查看

[root@dubbo-server1 ~]#ls /data/dubbo-server.jar 
/data/dubbo-server.jar
  1. 配置hosts
cat /etc/hosts
...
# 添加zookeeper集群
10.0.0.76 zookeeper1
10.0.0.77 zookeeper2
10.0.0.78 zookeeper3

2.4 启动服务

java -javaagent:/data/skywalking-agent/skywalking-agent.jar -jar /data/dubbo-server.jar

服务启动日志

2.5 skywalking验证

3. 部署consumer消费者

IP:10.0.0.94

3.1 安装java环境

依赖java环境

# 安装jdk 1.8
apt update
apt install -y openjdk-8-jdk

3.2 安装skywalking java agent

  1. 下载并解压
mkdir /data && cd /data
wget https://archive.apache.org/dist/skywalking/java-agent/9.0.0/apache-skywalking-java-agent-9.0.0.tgz
tar xvf apache-skywalking-java-agent-9.0.0.tgz
  1. 配置skywalking agent连接server
vim /data/skywalking-agent/config/agent.config
...
agent.service_name=${SW_AGENT_NAME:dubbo-consumer}

agent.namespace=${SW_AGENT_NAMESPACE:dubbo}

# Backend service addresses.	# 后端服务即skywalking-oap平台地址,11800为grpc端口,12800为http端口
collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:10.0.0.91:11800}

3.3 准备dubbo-client.jar

dubbo-client.jar

  1. 用WinRAR打开,查看config.properties配置内容,再上传至服务器
dubbo.registry=zookeeper://zookeeper1:2181?backup=zookeeper2:2181,zookeeper3:2181

查看

[root@dubbo-client ~]#ls /data/dubbo-server.jar 
/data/dubbo-client.jar
  1. 配置hosts
cat /etc/hosts
...
# 添加zookeeper集群
10.0.0.76 zookeeper1
10.0.0.77 zookeeper2
10.0.0.78 zookeeper3

3.4 启动服务

java -javaagent:/data/skywalking-agent/skywalking-agent.jar -jar /data/dubbo-client.jar

3.5 skywalking验证

3.6 zookeeper验证

使用ZooInspector图形工具,验证provider、consumer注册

4. skywalking验证

4.1 浏览器访问测试页面

测试页面:http://10.0.0.94:8080/hello?name=jack

  • consumer服务器日志
  • provider服务器日志

服务器1日志

服务器2日志

4.2 验证skywalking

  • skywalking追踪全部服务状态

  • skywalking 拓扑

  • dubbo-consumer服务状态

  • dubbo-provider2服务状态

​​

  • dubbo-consumer实例状态

  • dubbo-consumer 端点状态

标签:dubbo,java,虚拟机,zookeeper,agent,skywalking,data
From: https://www.cnblogs.com/areke/p/17836210.html

相关文章

  • skywalking(二) 实现基于nginx+java服务的全链路数据收集
    实现nginx+jenkins全链路数据追踪1.部署JenkinsIP:10.0.0.941.1安装、配置jenkins#1.安装jdk11aptupdateaptinstall-yopenjdk-11-jdk#2.下载tomcatmdkir/apps&cd/appswgethttps://dlcdn.apache.org/tomcat/tomcat-8/v8.5.93/bin/apache-tomcat-8.5.93.tar.g......
  • 虚拟机安装详解
    虚拟机安装 1.选择虚拟机软件
在安装虚拟机之前,需要选择一款合适的虚拟机软件。目前市面上有很多虚拟机软件供选择,如VMware、VirtualBox等。根据你的需求和操作系统的支持情况,选择合适的虚拟机软件。2. 下载操作系统镜像文件
购买虚拟主机空间后,你会得到一个操作系统镜像文件......
  • 终于有人把VMware虚拟机三种网络模式讲清楚了!
    前段时间VMware更新了,你用上最新版了吗?有几个网工在操作中遇到过各种各样的问题。比如说由于公司服务器重启导致出现下面的问题:在Xshell里连接虚拟机映射时连接失败;能够连接上虚拟机的映射地址,但gitpull时报错无法解析hostname……其实这些都是ip问题导致的,但主要还是虚拟机的网络......
  • 虚拟机安装sbt相关步骤
    1、下载sbt-1.9.0.tgz的压缩包2、将上述文件上传到虚拟机的/export/server目录下3、将tgz文件解压到当前文件夹tar-zxvfsbt-1.9.0.tgz4、在sbt安装目录下新建一个名为sbt的文件vimsbt//然后将下面的代码语句复制进去,然后保存退出#!/bin/bashSBT_OPTS="-Xms512M-X......
  • 虚拟机三种网络连接模式
    虚拟机中通常有三种网络连接模式:桥接模式、NAT模式和仅主机模式。桥接模式:在此模式下,虚拟机与主机共享同一个网络,这样虚拟机就可以直接访问网络中的其他设备,如路由器、交换机等,同时也可以让这些设备直接访问到虚拟机。桥接模式用到的网卡通常是VMnet0。NAT模式:NAT(网络地址转换)模......
  • 在Window系统中安装VMware虚拟机搭建Linux服务器
    1、什么是VMwareWorkstationVMwareWorkstationPro是一款桌面虚拟化软件。我们可以通过WorkstationPro在Windows或LinuxPC上运行多个操作系统作为虚拟机。它是运行虚拟机的行业通用标准,可以方便快速地使用Windows或者Linux。官网介绍:跨一系列不同的设备、平台和云构建、测试......
  • 部署skywalking-8.9
    skywalking服务器资源下载地址:https://archive.apache.org/dist/skywalking/8.9.0/解压:tar-zxvfapache-skywalking-apm-8.9.0.tar.gz修改默认端口:viapache-skywalking-apm-bin/config/application.yml 修改默认存储:viapache-skywalking-apm-bin/webapp/webapp.yml......
  • Vmware虚拟机重装 虚拟机能ping通主机,而主机不能ping通虚拟机的问题
    CClean,用它把你电脑上已经卸载的软件但是注册表还没删干净的把注册表删干净,之前说的那种情况(虚拟网络编辑器打不上勾)就迎刃而解了。Ps:CClean:再网上百度就可以查到,软件对用户也很友好,有15天的试用,完全可以解决你的问题,使用完不想用的话可以直接删掉。你也可以继续使用,它里面的功能......
  • 虚拟机中配置大数据节点--个人备份笔记
    新建master节点,注意:新建虚拟机时一切按默认走,随后安装系统;centos安装过程中要注意选择带开发工具的GNOME桌面版本;分区/boot500M,swap2048M,/剩下所有即可;在虚拟机NAT模式下,重新配置master的ip,ip设置应在虚拟机配置的范围内,重启网络;cd/etc/sysconfig/network-scripts vimifcfg-......
  • 如何查虚拟机中的文件在哪个路径(eg:ChromeDriver)
     要查找虚拟机中ChromeDriver的路径,您可以使用which命令或find命令。以下是两种方法:使用which命令。在终端中输入以下命令:whichchromedriver如果ChromeDriver已经在系统的PATH环境变量中,该命令将返回ChromeDriver的完整路径。否则,将返回空值。使用find命令。在终端中......