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

Apache Skywalking 8.4单机安装

IT那活儿 2021-06-19
2078
背景介绍
Apache Skywalking是一个国人开源的针对分布式系统的链路追踪系统,尤其是在微服务、云原生的场景,它主要包含指标监控、分布式链路追踪、分布式性能分析,Apache Skywalking也是中国首个无组织支持的Apache开源项目。Apache Skywalking目前已经可以实现java、go、python、C#、.net、nodejs、nginx、简单的前端用户体验等的监控和链路监控

本文重要是Apache Skywalking单机部署的场景,Apache Skywalking的架构模式是高度模块化的,所以如果业务量不大的话单机完全可以满足日常需求,本篇为Apache Skywalking系列的第一篇文章,后面我们产品交付组会持续输出关于Apache Skywalking的相关文章,包括但不限于Apache Skywalking架构、使用、代码层面的内容。

关于储存的改变
目前skywalking已经宣布将Elasticsearch改为了OpenSearch,原因是因为今年年初Elasticsearch宣布将此前使用的 Apache License 2.0 变更为双许可证:Server Side Public License (SSPL) 和 Elastic License。

当时 Apache Skywalking 对于 Elasticsearch 变更许可证的回应是“由于 SSPL 和 Apache License 2.0 不兼容,不能再仅使用 Elasticsearch,会考虑其他存储方案,例如同为 Apache License 2.0 许可的 InfluxDB、TiDB 和 H2 Server”,甚至还计划构建为自己所用的存储方案。

上个月,AWS 宣布推出 OpenSearch 项目,这是 fork 自 Elasticsearch 和 Kibana 的开源分支。OpenSearch 项目由 OpenSearch (fork Elasticsearch 7.10.2) 和 OpenSearch Dashboards (fork Kibana 7.10.2) 组成,包括企业安全、告警、机器学习、SQL、索引状态管理等功能。OpenSearch 项目中的所有软件均采用了 Apache License 2.0 开源许可协议。包括红帽、SAP、Capital One 和 Logz.io 等在内的多个组织也参与维护这个新的 Elasticsearch 分支。

Apache Skywalking 称此消息公布后,他们就开始评估使用 OpenSearch 作为 SkyWalking 的存储方案。经过多次测试,现在正式宣布使用 OpenSearch 取代 Elastcsearch 作为存储方案。

Elasticsearch部署
  • JDK准备

Vi etc/profileexport JAVA_HOME=/usr/local/javaexport JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib:$CLASSPATHexport JAVA_PATH=${JAVA_HOME}/bin:${JRE_HOME}/binexport PATH=$PATH:${JAVA_PATH}
  • 修改配置文件


cluster.name: apmnode.name: node-1 bootstrap.memory_lock: truenetwork.host: 0.0.0.0http.port: 9200path.data: home/ampdcp/elasticsearch/datapath.logs: home/ampdcp/elasticsearch/logscluster.initial_master_nodes: ["node-1"]cluster.max_shards_per_node: 3000
  • Jvm调优


vim data/elasticsearch/config/jvm.options-Xms1g 修改为 ===> -Xms2g-Xmx1g 修改为 ===> -Xmx2g

看情况给,给物理内存一半最佳

  •  操作系统调优

在/etc/sysctl.conf添加如下内容


fs.file-max=655360vm.max_map_count=655360sysctl -p 使配置生效

1) vm.max_map_count=655360

系统最大打开文件描述符数 

2) vm.max_map_count=655360

限制一个进程拥有虚拟内存区域的大小

 

修改


vim etc/security/limits.conf* soft nofile 65536* hard nofile 65536* soft nproc 65536* hard nproc 65536* soft memlock unlimited* hard memlock unlimited
(nofile)最大开打开文件描述符

(nproc)最大用户进程数

(memlock)最大锁定内存地址空间

 修改/etc/security/limits.d/90-nproc.conf

* soft nproc 1024 修改前* soft nproc 65536 修改后mkdir -p data/elasticsearch/logs/touch data/elasticsearch/logs/escluster_deprecation.logchown -R shsnc:shsnc data/elasticsearchchown -R shsnc:shsnc usr/local/java

以下操作在普通用户执行


su - shsncsource /etc/profilecd /date/elasticsearch/bin./elasticsearch -d

APM 部署
所有操作建议在普通用户下执行
  • 下载介质

wget https://mirrors.tuna.tsinghua.edu.cn/apache/skywalking/8.4.0/apache-skywalking-apm-es7-8.4.0.tar.gz

  • 解压安装包


su - shsncmkdir snc-apmmv apache-skywalking-apm-es7-8.4.0.tar.gz snc-apmtar -zxvf apache-skywalking-apm-es7-8.4.0.tar.gzmv apache-skywalking-apm-bin-es skywaling

  • 修改配置文件

    vi conf/application.yml

修改第106行,存储类型为elasticsearch7


storage:  selector: ${SW_STORAGE:elasticsearch7}

修改第136行, elasticsearch7连接地址,如果是集群直接后面写就可以(10.2.158.105:9200,10.2.158.106:9200,10.2.158.107:9200)


elasticsearch7:    nameSpace: ${SW_NAMESPACE:""}    clusterNodes: ${SW_STORAGE_ES_CLUSTER_NODES:10.2.158.42:9200}

修改第150行,调整bulkActions默认2000次请求批量写入一次改到4000次

bulkActions: ${SW_STORAGE_ES_BULK_ACTIONS:4000}
  • 开启自监控

修改第346行为,使用prometheus作为监控项


telemetry:  selector: ${SW_TELEMETRY:prometheus}  none:  prometheus:    host: ${SW_TELEMETRY_PROMETHEUS_HOST:0.0.0.0}    port: ${SW_TELEMETRY_PROMETHEUS_PORT:1234}    sslEnabled: ${SW_TELEMETRY_PROMETHEUS_SSL_ENABLED:false}    sslKeyPath: ${SW_TELEMETRY_PROMETHEUS_SSL_KEY_PATH:""}    sslCertChainPath: ${SW_TELEMETRY_PROMETHEUS_SSL_CERT_CHAIN_PATH:""}

修改281行,


prometheus-fetcher:  selector: ${SW_PROMETHEUS_FETCHER:-}  default:    enabledRules: ${SW_PROMETHEUS_FETCHER_ENABLED_RULES:"self"}    active: ${SW_PROMETHEUS_FETCHER_ACTIVE:true}
  • 初始化skywalking

    sh bin/oapServiceInit.sh

  • 启动skywalking

    sh bin/startup.sh

  • 访问前端


END


更多精彩干货分享

点击下方名片关注

IT那活儿

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

评论