skywalking10开启自遥感
1启动skywalking10.0.0
由于skwalking需要基于java高版本安装,所以这里采用docker,有关docker的安装不再赘述。
一定要注意skwalking的版本,由于其更新频繁,强烈建议和我采用一样的版本。
skwalking一下简称sw
docker run --name oap -d -v /root/skywalking10/application.yml:/skywalking/config/application.yml --network host apache/skywalking-oap-server:10.0.0
解释
把/root/skywalking10/application.yml写为你自己的路径,这个是sw的配置文件,配置文件的下载地址可以在github上找到application.yaml
也可以使用docker cp oap:/skywalking/config/application.yml . 复制到当前目录。
需要修改application.yml的地方,这里表示sw的oap以prometheus格式把数据暴露在1234端口
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:""}
2启动skywalking-ui10.0.0
docker run --name oap-ui -p 8080:8080 -d -e SW_OAP_ADDRESS=http://oap:12800 apache/skywalking-ui:10.0.0
#把oap改为你的skywalking-oap的ip地址
3启动opentelemetry-collector
注意,skywalking和opentelemetry-collector一定要对应,不要乱改版本。
docker pull otel/opentelemetry-collector:0.92.0
docker run -v $(pwd)/config.yaml:/etc/otelcol-contrib/config.yaml otel/opentelemetry-collector-contrib:0.92.0
也可以把下面的yaml直接复制,如下:
解释一下opentelemetry-collector的作用, receivers表示接收,从sw的1234端口抓取数据
然后通过exporters把数据暴露给skywalking的11800端口,完成自遥感
receivers:
prometheus:
config:
scrape_configs:
- job_name: 'skywalking-so11y'
scrape_interval: 5s
static_configs:
- targets: ['oap:1234']
labels:
host_name: http://localhost:1234
service: oap-server
processors:
batch:
exporters:
otlp:
endpoint: oap:11800
tls:
insecure: true
logging:
loglevel: debug
service:
pipelines:
metrics:
receivers:
- prometheus
processors:
- batch
exporters:
- otlp
- logging
启动成功之后,过个30秒左右,就会看到sw-ui上面显示出自遥感的页面了
参考文章:
skywalking自遥感: 官网:skywalking自遥感