zoukankan      html  css  js  c++  java
  • 01-elasticsearch-apm-server k8s 部署

    k8s 部署elasticsearch-apm

    文档地址

    官方文档 https://www.elastic.co/guide/en/apm/index.html

    说明

    java agent 比需使用 6.5 版本以上的 apm-server

    说以elasticsearch 和kibana 最好使用6.5 以上的版本

    我这里使用的是6.8.7的版本

    apm-server 部署

    1. 创建apm-server 的配置文件

    apm-server.docker.yml

    apm-server:
      host: "0.0.0.0:8200"
    output.elasticsearch:
      hosts: ["elasticsearch-client:9200"]
    

    创建configmap

    kubectl create cm elasticsearch-apm --from-file=apm-server.docker.yml --namespace=paltform-uat
    

    2. 创建 apm-server

    elasticsearch-apm-server.yaml

    apiVersion: extensions/v1beta1
    kind: Deployment
    metadata:
      annotations:
      labels:
        app: elasticsearch-apm
      name: elasticsearch-apm
      namespace: platform-uat
    spec:
      replicas: 1
      revisionHistoryLimit: 2
      selector:
        matchLabels:
          app: elasticsearch-apm
      template:
        metadata:
          labels:
            app: elasticsearch-apm
        spec:
          containers:
          - image: docker.elastic.co/apm/apm-server:6.8.7
            imagePullPolicy: IfNotPresent
            name: elasticsearch-apm
            ports:
            - containerPort: 8200
              protocol: TCP
            resources:
              limits:
                cpu: "1"
              requests:
                cpu: 25m
                memory: 512Mi
            volumeMounts:
            - mountPath: /usr/share/apm-server/apm-server.yml
              name: config
              subPath: apm-server.docker.yml
          volumes:
          - configMap:
              defaultMode: 420
              name: elasticsearch-apm
            name: config
    ---
    apiVersion: v1
    kind: Service
    metadata:
      labels:
        app: elasticsearch-apm
      name: elasticsearch-apm
      namespace: platform-uat
    spec:
      ports:
      - name: elasticsearch-apm
        port: 8200
        protocol: TCP
      selector:
        app: elasticsearch-apm
    

    执行

    kubectl apply -f elasticsearch-apm-server.yaml
    

    apm-agent 部署

    agent 下载地址 https://search.maven.org/search?q=g:co.elastic.apm AND a:elastic-apm-agent

    在java 启动参数下 添加

    java 
    -javaagent:/path/to/elastic-apm-agent-<version>.jar 
    -Delastic.apm.service_name=my-cool-service                                         #  需要修改成服务的名称
    -Delastic.apm.application_packages=org.example,org.another.example     # 自定义作用暂时没有发现
    -Delastic.apm.server_urls=http://localhost:8200                                       #  需要修改成apm-server 的地址
    -jar <app-name>.jar
    

    3. 配置 kibana

    1. 在kibana 的 APM 菜单下 检查server 的状态

    2. 检查agent 的 状态。agent 状态正常的情况下 Load Kibana objects

    4. 查看 程序调用链信息

    1. 选择java模块
    2. 查看某个请求可以看到整体的调用链
  • 相关阅读:
    教育行业漏洞报告平台(Beta)数据爬取分析
    对三国演义人物出现次数统计分析
    用turtle画一个雪人
    python慕课笔记
    浮动的特性
    传统网页布局的三种方式
    CSS盒子阴影
    HTTP协议
    盒子 圆角边框
    Tomcat+Idea项目的发布、war包的导出
  • 原文地址:https://www.cnblogs.com/pythonPath/p/12457882.html
Copyright © 2011-2022 走看看