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

ShardingSphere-Proxy 应用性能监控集成 Skywalking 部署

696

背景

ShardingSphere

Skyworking 可以监控很多组件,本次在生产环境搭建 Skyworking 监控 ShardingSphere-proxy 可以查看相关链路,分析 SQL 执行。


01  安装部署

    wget https://mirrors.bfsu.edu.cn/apache/skywalking/8.6.0/apache-skywalking-apm-es7-8.6.0.tar.gz
    tar -zxvf apache-skywalking-apm-es7-8.6.0.tar.gz
    mv apache-skywalking-apm-bin-es7/ skywalking/


    02  配置端口

    vi webapp/webapp.yml

      server:
       port: 18189  #改下,8080


      collector:
       path: graphql
       ribbon:
         ReadTimeout: 10000
         # Point to all backend's restHost:restPort, split by ,
         listOfServers: 127.0.0.1:12800


      03  启动项目

      sh bin/startup.sh

      访问地址:http://172.168.9.135:18189/   空的啥啥没有


      04  配置探针

      • 部署 Skywalking javaagent

      1. 拷贝 agent 目录到所需位置. 日志,插件和配置都包含在包中,请不要改变目录结构.

      2. 增加JVM启动参数, -javaagent:/path/to/skywalking-agent/skywalking-agent.jar. 参数值为skywalking-agent.jar的绝对路径。

          新的 agent package 目录结构如下:

        +-- skywalking-agent
           +-- activations
                apm-toolkit-log4j-1.x-activation.jar
                apm-toolkit-log4j-2.x-activation.jar
                apm-toolkit-logback-1.x-activation.jar
                ...
           +-- config
                agent.config  
           +-- plugins
                apm-dubbo-plugin.jar
                apm-feign-default-http-9.x.jar
                apm-httpClient-4.x-plugin.jar
                .....
           skywalking-agent.jar
        •  启动被监控应用.

        高级特性

        • 插件全部放置在 /plugins 目录中.新的插件,也只需要在启动阶段,放在目录中,就自动生效,删除则失效。

        • Log默认使用文件输出到 /logs目录中。

        部署 java agent FAQs

        • Linux Tomcat 7, Tomcat 8

        修改 tomcat/bin/catalina.sh,在首行加入如下信息。

          CATALINA_OPTS="$CATALINA_OPTS -javaagent:/path/to/skywalking-agent/skywalking-agent.jar"; export CATALINA_OPTS
          • Windows Tomcat 7, Tomcat 8
            修改 tomcat/bin/catalina.bat,在首行加入如下信息.

            set "CATALINA_OPTS=-javaagent:/path/to/skywalking-agent/skywalking-agent.jar"
            • JAR file
              在启动你的应用程序的命令行中添加 -javaagent 参数. 并确保在-jar参数之前添加它. 例如:

              java -javaagent:/path/to/skywalking-agent/skywalking-agent.jar -jar yourApp.jar


              05  ShardingSphere-Proxy 配置探针启动

              复制探针配置

              • 将 Skyworking 服务下面的 agent 文件夹下所有文件复制拷贝到 需要部署探针的 ShardingSphere 服务所在服务器。

                #skyworking服务部署文件路径
                /home/skywalking/agent


                #远程拷贝探针文件至 sharding-proxy 所在服务器,文件路径保持一致
                mkdir -p home/skywalking
                scp -r 172.168.9.135:/home/skywalking/agent home/skywalking


                修改 ShardingSphere 启动配置

                vi home/sharding-proxy/bin/start.sh

                JAVA_OPTS=” -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dskywalking.agent.service_name=Sharding-Proxy -Dorg.apache.shardingsphere.opentracing.tracer.class=org.apache.skywalking.apm.toolkit.opentracing.SkywalkingTracer -javaagent:/home/skywalking/agent/skywalking-agent.jar”


                修改探针配置文件

                agent.config配置  我直接改collector.backend_service = skywork部署服务地址了,修改服务后重新启动,刷新探针服务查看。


                  # 不同的namespace会导致调用链路追踪中断
                  agent.namespace=${SW_AGENT_NAMESPACE:hmall}


                  # 页面上展示的service的名称,也可以通过-Dskywalking.agent.service_name=xxx指定
                  agent.service_name=${SW_AGENT_NAME:gateway}


                  # 平台的调用地址,也可以通过-Dskywalking.collector.backend_service=127.0.0.1:80指定
                  collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:172.28.51.141:11800}


                  # 忽略指定后缀的请求收集
                  agent.ignore_suffix=${SW_AGENT_IGNORE_SUFFIX:.jpg,.jpeg,.js,.css,.png,.bmp,.gif,.ico,.mp3,.mp4,.html,.svg}




                  # 每3秒的采样率,负数代表100%
                  agent.sample_n_per_3_secs=${SW_AGENT_SAMPLE:-1}



                  06  配置探针


                  部署 Skywalking javaagent

                  1. 拷贝agent目录到所需位置. 日志,插件和配置都包含在包中,请不要改变目录结构.

                  2. 增加JVM启动参数, -javaagent:/path/to/skywalking-agent/skywalking-agent.jar. 参数值为skywalking-agent.jar的绝对路径。

                  新的 agent package 目录结构如下:


                    +-- skywalking-agent
                       +-- activations
                            apm-toolkit-log4j-1.x-activation.jar
                            apm-toolkit-log4j-2.x-activation.jar
                            apm-toolkit-logback-1.x-activation.jar
                            ...
                       +-- config
                            agent.config  
                       +-- plugins
                            apm-dubbo-plugin.jar
                            apm-feign-default-http-9.x.jar
                            apm-httpClient-4.x-plugin.jar
                            .....
                       skywalking-agent.jar
                    • 启动被监控应用


                    高级特性

                    • 插件全部放置在 /plugins 目录中.新的插件,也只需要在启动阶段,放在目录中,就自动生效,删除则失效.

                    • Log 默认使用文件输出到 /logs目录中.


                    部署 Java agent FAQs

                    • Linux Tomcat 7, Tomcat 8

                    修改 tomcat/bin/catalina.sh,在首行加入如下信息.

                      CATALINA_OPTS="$CATALINA_OPTS -javaagent:/path/to/skywalking-agent/skywalking-agent.jar"; export CATALINA_OPTS
                      •  Windows Tomcat 7, Tomcat 8

                      修改 tomcat/bin/catalina.bat,在首行加入如下信息.

                        set "CATALINA_OPTS=-javaagent:/path/to/skywalking-agent/skywalking-agent.jar"
                        • JAR file

                        在启动你的应用程序的命令行中添加 -javaagent 参数. 并确保在-jar参数之前添加它. 例如:

                          java -javaagent:/path/to/skywalking-agent/skywalking-agent.jar -jar yourApp.jar

                          07  ShardingSphere-Proxy 配置探针启动

                          复制探针配置

                          • 将 Skyworking 服务下面的 agent 文件夹下所有文件复制拷贝到 需要部署探针的 ShardingSphere 服务所在服务器

                          #skyworking服务部署文件路径

                          /home/skywalking/agent


                          • 远程拷贝探针文件至ShardingSphere-Proxy所在服务器,文件路径保持一致

                            mkdir -p home/skywalking


                            scp -r 172.168.9.135:/home/skywalking/agent home/skywalking


                            修改 ShardingSphere 启动配置

                            vi home/sharding-proxy/bin/start.sh

                              JAVA_OPTS=" -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dskywalking.agent.service_name=Sharding-Proxy -Dorg.apache.shardingsphere.opentracing.tracer.class=org.apache.skywalking.apm.toolkit.opentracing.SkywalkingTracer -javaagent:/home/skywalking/agent/skywalking-agent.jar"


                              修改探针配置文件

                              agent.config配置,我直接改collector.backend_service = skywork部署服务地址了,修改服务后重新启动,刷新探针服务查看

                                # 不同的namespace会导致调用链路追踪中断
                                agent.namespace=${SW_AGENT_NAMESPACE:hmall}


                                # 页面上展示的service的名称,也可以通过-Dskywalking.agent.service_name=xxx指定
                                agent.service_name=${SW_AGENT_NAME:gateway}


                                # 平台的调用地址,也可以通过-Dskywalking.collector.backend_service=127.0.0.1:80指定
                                collector.backend_service=${SW_AGENT_COLLECTOR_BACKEND_SERVICES:172.28.51.141:11800}


                                # 忽略指定后缀的请求收集
                                agent.ignore_suffix=${SW_AGENT_IGNORE_SUFFIX:.jpg,.jpeg,.js,.css,.png,.bmp,.gif,.ico,.mp3,.mp4,.html,.svg}




                                # 每3秒的采样率,负数代表100%
                                agent.sample_n_per_3_secs=${SW_AGENT_SAMPLE:-1}


                                Metadata

                                Views

                                1883

                                baidu_record

                                1

                                git_baidu_submit

                                index

                                rank_math_news_sitemap_robots

                                Array

                                rank_math_analytic_object_id

                                13

                                rank_math_internal_links_processed

                                1

                                bigfa_ding

                                1

                                rank_math_seo_score

                                62

                                rank_math_contentai_score

                                Array

                                rank_math_focus_keyword

                                ShardingSphere-Proxy 应用性能监控集成 skywalking 部署

                                rank_math_primary_category

                                0


                                本文由郑思扬授权转载


                                发现文章有错误,对内容有疑问,都可以通过关注 ShardingSphere 微信公众号(Sharding-Sphere)或者添加小助手微信(ss_assistant_1),在后台留言或私信给我们。我们每周会挑选出一位热心小伙伴,送上一份精美的小礼品。快来扫码关注我们吧!

                                关于 Apache ShardingSphere


                                Apache ShardingSphere 是一款分布式 SQL 事务和查询引擎,可通过数据分片、弹性伸缩、加密等能力对任意数据库进行增强。


                                文章转载自ShardingSphere官微,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

                                评论