记录一次Linux部署SkyWalking全过程

单机版

  • 第一步,搭建一个 Elasticsearch 服务。
  • 第二步,下载 SkyWalking 软件包。
  • 第三步,搭建一个 SkyWalking OAP 服务。
  • 第四步,搭建一个 SkyWalking UI 服务。
  • 第五步,部署探针(SkyWalking Agent)。
  • 第六步,查看SkyWalking。

第一步:Elasticsearch 搭建。

1.下载elasticsearch

下载地址:https://www.elastic.co/cn/downloads/elasticsearch
选择对应安装包,我使用的是linux x86


2.上传文件至服务器,解压文件

tar -zxvf elasticsearch-8.6.1-linux-x86_64.tar.gz //解压压缩包
cd elasticsearch-8.6.1 //进入目录
mkdir data //创建data文件夹,保存数据

3.修改Elasticsearch配置:config/elasticsearch.yml

cluster.name: my-application
node.name: node-1
path.data: /app/elasticsearch/elasticsearch-8.6.1/data
path.logs: /app/elasticsearch/elasticsearch-8.6.1/logs
# ES监听的ip地址
network.host: 0.0.0.0
cluster.initial_master_nodes: ["node-1"]
 
# 需要开启跨域才能给elasticsearch-head,kibana等连接
http.cors.enabled: true
http.cors.allow-origin: "*"
http.cors.allow-headers: Authorization,X-Requested-With,Content-Length,Content-Type

4.创建Elasticsearch启动用户,并设置权限等

groupadd elsearch
useradd elsearch -g elsearch -p elasticsearch
chown -R elsearch:elsearch elasticsearch-8.6.1

5.配置/etc/security/limits.conf文件,添加如下行

#配置Elasticsearch文件进程大小65536
hard    nofile           65536
soft    nofile           65536

5.配置/etc/sysctl.conf文件,添加如下行

#设置最大虚拟内存面积262144
vm.max_map_count = 262144

检查是否配置成功

sysctl -a|grep vm.max_map_count

显示:vm.max_map_count = 262144为正常。如果不是,切换到root用户执行命令

sysctl -w vm.max_map_count=262144

再次检查是否配置成功

sysctl -a|grep vm.max_map_count

显示:vm.max_map_count = 262144,正常
6.修改config/jvm.options

# Elasticsearch默认内存是1G,修改内存大小 
-Xms200m
-Xmx200m

7.启动Elasticsearch

cd elasticsearch-8.6.1
su elsearch
./bin/elasticsearch -d

8.查看是否启动成功:访问ip:9200,出现以下信息即为启动成功

{
  "name" : "node-1",
  "cluster_name" : "my-application",
  "cluster_uuid" : "*******************",
  "version" : {
    "number" : "8.6.1",
    "build_flavor" : "default",
    "build_type" : "tar",
    "build_hash" : "180c9830da956993e59e2cd70eb32b5e383ea42c",
    "build_date" : "2023-01-24T21:35:11.506992272Z",
    "build_snapshot" : false,
    "lucene_version" : "9.4.2",
    "minimum_wire_compatibility_version" : "7.17.0",
    "minimum_index_compatibility_version" : "7.0.0"
  },
  "tagline" : "You Know, for Search"
}

9.访问失败
问题一:检查端口是否开放
问题二:是否开启安全验证

问题一:开放9200端口
问题二:修改config/elasticsearch.yml配置

# Enable security features
xpack.security.enabled: false

xpack.security.enrollment.enabled: false

# Enable encryption for HTTP API client connections, such as Kibana, Logstash, and Agents
xpack.security.http.ssl:
  enabled: false
  keystore.path: certs/http.p12

# Enable encryption and mutual authentication between cluster nodes
xpack.security.transport.ssl:
  enabled: false
  verification_mode: certificate
  keystore.path: certs/transport.p12
  truststore.path: certs/transport.p12

第二步:下载 SkyWalking 软件包

1.下载SkyWalking官方包,下载地址: http://skywalking.apache.org/downloads/ ,我们下载操作系统对应的发布版。这里,我们选择apache-skywalking-apm-9.3.0.tar.gz版本,使用 Elasticsearch 作为存储。
2.上传下载的压缩包到linux服务器,解压文件

tar -zxvf apache-skywalking-apm-9.3.0.tar.gz
cd apache-skywalking-apm-9.3.0

第三步:SkyWalking OAP 搭建

1.修改 OAP 配置文件 config/application.yml

vim config/application.yml
# 配置文件中默认选择的是H2数据源,切换成elasticsearch,把elasticsearch配置成自己安装的信息
# 重点修改 storage 配置项,通过 storage.selector 配置项来设置具体使用的存储器。
# storage.elasticsearch 配置项,设置使用 Elasticsearch 版本作为存储器。
#示例
storage:
  selector: ${SW_STORAGE:elasticsearch}
  elasticsearch:
    namespace: ${SW_NAMESPACE:"my-application"}
    clusterNodes: ${SW_STORAGE_ES_CLUSTER_NODES:IP地址:9200}

2.启动OAP

$ bin/oapService.sh
SkyWalking OAP started successfully!

第四步:SkyWalking UI 搭建

1.由于SkyWalking UI的默认地址是8080,与很多中间件有冲突,可以修改一下

# 修改webapp/application.yml
serverPort: ${SW_SERVER_PORT:-18080}

# Comma seperated list of OAP addresses.
oapServices: ${SW_OAP_ADDRESS:-http://IP地址/:12800}

2.启动 SkyWalking UI 服务

$ bin/webappService.sh
 
SkyWalking Web Application started successfully!

第五步:部署探针(SkyWalking Agent)

下载方式一
下载地址: http://skywalking.apache.org/downloads/


下载方式二

wget https://archive.apache.org/dist/skywalking/java-agent/8.14.0/apache-skywalking-java-agent-8.14.0.tgz

1.解压文件

tar -zxvf apache-skywalking-java-agent-8.14.0.tgz

2.启动探针
正常启动xxxx.jar的命令

java -jar xxxx.jar

加上探针启动命令

java -javaagent:skywalking-agent.jar(注意修改agent路径) -Dskywalking.agent.service_name=xyleed-knowledge(可以随意取名字) -Dskywalking.collector.backend_service=IP地址(SkyWalking所在服务器):11800 -jar xxxx.jar

示例

nohup java -javaagent:/usr/local/apache-skywalking-java-agent-8.14.0/skywalking-agent.jar -Dskywalking.agent.service_name=gateway  -jar gateway.jar > a.log 2>&1 &

第六步:查看SkyWalking

请查看端口是否开放

9200:Elasticsearch
18080:SkyWalking UI
11800:skywalking-oap-server 收集监控数据的端口11800
12800:skywalking-oap-server 接收前端请求的端口12800

查看SkyWalking:访问ip:18080,出现



恭喜你,已经搭建完成!

你可能感兴趣的:(记录一次Linux部署SkyWalking全过程)