skywalking oap-server 域名配置
生活随笔
收集整理的這篇文章主要介紹了
skywalking oap-server 域名配置
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
大家好,我是烤鴨:
????????由于skywalking 的 -Dskywalking.collector.backend_service 的后端服務過多,想通過配置域名的方式簡化上報端agent配置,也更靈活。
報錯了,先看代碼
報錯信息:
org.apache.skywalking.apm.dependencies.io.grpc.StatusRuntimeException: INTERNAL: http2 exception at org.apache.skywalking.apm.dependencies.io.grpc.stub.ClientCalls.toStatusRuntimeException(ClientCalls.java:262) at org.apache.skywalking.apm.dependencies.io.grpc.stub.ClientCalls.getUnchecked(ClientCalls.java:243) at org.apache.skywalking.apm.dependencies.io.grpc.stub.ClientCalls.blockingUnaryCall(ClientCalls.java:156) at org.apache.skywalking.apm.network.language.agent.v3.JVMMetricReportServiceGrpc$JVMMetricReportServiceBlockingStub.collect(JVMMetricReportServiceGrpc.java:181) at org.apache.skywalking.apm.agent.core.jvm.JVMMetricsSender.run(JVMMetricsSender.java:82) at org.apache.skywalking.apm.util.RunnableWithExceptionProtection.run(RunnableWithExceptionProtection.java:33) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511) at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:308) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:180) at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:294) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748) Caused by: org.apache.skywalking.apm.dependencies.io.netty.handler.codec.http2.Http2Exception: First received frame was not SETTINGS. Hex dump for first 5 bytes: 485454502f at org.apache.skywalking.apm.dependencies.io.netty.handler.codec.http2.Http2Exception.connectionError(Http2Exception.java:103) at org.apache.skywalking.apm.dependencies.io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder.verifyFirstFrameIsSettings(Http2ConnectionHandler.java:338) at org.apache.skywalking.apm.dependencies.io.netty.handler.codec.http2.Http2ConnectionHandler$PrefaceDecoder.decode(Http2ConnectionHandler.java:239)因為這個問題,有個人還專門提了issue和提交。
https://github.com/apache/skywalking/issues/6040
想使用grpc的話(還沒有證書),開啟配置。
agent.config 中設置 agent.force_tls 為 true 或者腳本中增加
-Dskywalking.agent.force_tls=trueagent.force_tls=${SW_AGENT_FORCE_TLS:true}代碼片段:
GRPCChannelManager.run 方法里的初始化 channel 里的 new TLSChannelBuilder()
managedChannel = GRPCChannel.newBuilder(ipAndPort[0], Integer.parseInt(ipAndPort[1])).addManagedChannelBuilder(new StandardChannelBuilder()).addManagedChannelBuilder(new TLSChannelBuilder()).addChannelDecorator(new AgentIDDecorator()).addChannelDecorator(new AuthenticationDecorator()).build();nginx 配置
按照以前的 http_proxy的方式是不行的,skywalking 是通過 grpc 方式通信的。
# grpc 代理配置 server {listen 11800 http2; # grpc方式對外暴露端口server_name xxx.xx.com;# access_log logs/access.log main;location / {grpc_pass grpc://127.0.0.1:11800; # 此處配置grpc服務的ip和端口} }# http 代理配置 server {listen 80; # http方式對外暴露端口server_name localhost;# access_log logs/access.log main;location / {proxy_pass http://127.0.0.1:8210; # 此處配置http服務的ip和端口} }重點注意!!!
http2 和 http的端口不能重復。
具體原因看這篇。
https://blog.csdn.net/Angry_Mills/article/details/118227489
修改配置
-Dskywalking.collector.backend_service=xxx.xx.com:11800總結
以上是生活随笔為你收集整理的skywalking oap-server 域名配置的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 最大全零子矩阵
- 下一篇: [单选题]$array = array(