You are viewing a plain text version of this content. The canonical link for it is here.
Posted to notifications@skywalking.apache.org by wu...@apache.org on 2020/07/12 02:56:44 UTC
[skywalking-docker] 05/45: Add docker compose files
This is an automated email from the ASF dual-hosted git repository.
wusheng pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/skywalking-docker.git
commit 4142180875ab16f7a52484683e888b02c260a6f4
Author: Gao Hongtao <ha...@gmail.com>
AuthorDate: Wed Jan 9 22:06:05 2019 +0800
Add docker compose files
---
6/6.0-beta/compose/README.md | 0
6/6.0-beta/compose/config/alarm-settings.yml | 72 +++++
6/6.0-beta/compose/config/application.yml | 97 +++++++
6/6.0-beta/compose/config/component-libraries.yml | 290 +++++++++++++++++++++
.../compose/config/datasource-settings.properties | 31 +++
6/6.0-beta/compose/config/log4j2.xml | 36 +++
6/6.0-beta/compose/docker-compose.yml | 53 ++++
7 files changed, 579 insertions(+)
diff --git a/6/6.0-beta/compose/README.md b/6/6.0-beta/compose/README.md
new file mode 100644
index 0000000..e69de29
diff --git a/6/6.0-beta/compose/config/alarm-settings.yml b/6/6.0-beta/compose/config/alarm-settings.yml
new file mode 100644
index 0000000..eab4407
--- /dev/null
+++ b/6/6.0-beta/compose/config/alarm-settings.yml
@@ -0,0 +1,72 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Sample alarm rules.
+rules:
+ # Rule unique name, must be ended with `_rule`.
+ service_resp_time_rule:
+ indicator-name: service_resp_time
+ op: ">"
+ threshold: 1000
+ period: 10
+ count: 3
+ silence-period: 5
+ message: Response time of service {name} is more than 1000ms in last 3 minutes.
+ service_sla_rule:
+ # Indicator value need to be long, double or int
+ indicator-name: service_sla
+ op: "<"
+ threshold: 8000
+ # The length of time to evaluate the metric
+ period: 10
+ # How many times after the metric match the condition, will trigger alarm
+ count: 2
+ # How many times of checks, the alarm keeps silence after alarm triggered, default as same as period.
+ silence-period: 3
+ message: Successful rate of service {name} is lower than 80% in last 2 minutes.
+ service_p90_sla_rule:
+ # Indicator value need to be long, double or int
+ indicator-name: service_p90
+ op: ">"
+ threshold: 1000
+ period: 10
+ count: 3
+ silence-period: 5
+ message: 90% response time of service {name} is lower than 1000ms in last 3 minutes
+ service_instance_resp_time_rule:
+ indicator-name: service_instance_resp_time
+ op: ">"
+ threshold: 1000
+ period: 10
+ count: 2
+ silence-period: 5
+ message: Response time of service instance {name} is more than 1000ms in last 2 minutes.
+# Active endpoint related metric alarm will cost more memory than service and service instance metric alarm.
+# Because the number of endpoint is much more than service and instance.
+#
+# endpoint_avg_rule:
+# indicator-name: endpoint_avg
+# op: ">"
+# threshold: 1000
+# period: 10
+# count: 2
+# silence-period: 5
+# message: Response time of endpoint {name} is more than 1000ms in last 2 minutes.
+
+webhooks:
+# - http://127.0.0.1/notify/
+# - http://127.0.0.1/go-wechat/
+
diff --git a/6/6.0-beta/compose/config/application.yml b/6/6.0-beta/compose/config/application.yml
new file mode 100644
index 0000000..842b142
--- /dev/null
+++ b/6/6.0-beta/compose/config/application.yml
@@ -0,0 +1,97 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+cluster:
+ standalone:
+ # Please check your ZooKeeper is 3.5+, However, it is also compatible with ZooKeeper 3.4.x. Replace the ZooKeeper 3.5+
+ # library the oap-libs folder with your ZooKeeper 3.4.x library.
+# zookeeper:
+# nameSpace: ${SW_NAMESPACE:""}
+# hostPort: ${SW_CLUSTER_ZK_HOST_PORT:localhost:2181}
+# #Retry Policy
+# baseSleepTimeMs: ${SW_CLUSTER_ZK_SLEEP_TIME:1000} # initial amount of time to wait between retries
+# maxRetries: ${SW_CLUSTER_ZK_MAX_RETRIES:3} # max number of times to retry
+# kubernetes:
+# watchTimeoutSeconds: ${SW_CLUSTER_K8S_WATCH_TIMEOUT:60}
+# namespace: ${SW_CLUSTER_K8S_NAMESPACE:default}
+# labelSelector: ${SW_CLUSTER_K8S_LABEL:app=collector,release=skywalking}
+# uidEnvName: ${SW_CLUSTER_K8S_UID:SKYWALKING_COLLECTOR_UID}
+# consul:
+# serviceName: ${SW_SERVICE_NAME:"SkyWalking_OAP_Cluster"}
+# Consul cluster nodes, example: 10.0.0.1:8500,10.0.0.2:8500,10.0.0.3:8500
+# hostPort: ${SW_CLUSTER_CONSUL_HOST_PORT:localhost:8500}
+core:
+ default:
+ restHost: ${SW_CORE_REST_HOST:0.0.0.0}
+ restPort: ${SW_CORE_REST_PORT:12800}
+ restContextPath: ${SW_CORE_REST_CONTEXT_PATH:/}
+ gRPCHost: ${SW_CORE_GRPC_HOST:0.0.0.0}
+ gRPCPort: ${SW_CORE_GRPC_PORT:11800}
+ downsampling:
+ - Hour
+ - Day
+ - Month
+ # Set a timeout on metric data. After the timeout has expired, the metric data will automatically be deleted.
+ recordDataTTL: ${SW_CORE_RECORD_DATA_TTL:90} # Unit is minute
+ minuteMetricsDataTTL: ${SW_CORE_MINUTE_METRIC_DATA_TTL:90} # Unit is minute
+ hourMetricsDataTTL: ${SW_CORE_HOUR_METRIC_DATA_TTL:36} # Unit is hour
+ dayMetricsDataTTL: ${SW_CORE_DAY_METRIC_DATA_TTL:45} # Unit is day
+ monthMetricsDataTTL: ${SW_CORE_MONTH_METRIC_DATA_TTL:18} # Unit is month
+storage:
+ elasticsearch:
+ # set the namespace in elasticsearch
+ clusterNodes: ${SW_STORAGE_ES_CLUSTER_NODES:elasticsearch:9200}
+ indexShardsNumber: ${SW_STORAGE_ES_INDEX_SHARDS_NUMBER:2}
+ indexReplicasNumber: ${SW_STORAGE_ES_INDEX_REPLICAS_NUMBER:0}
+ # Batch process setting, refer to https://www.elastic.co/guide/en/elasticsearch/client/java-api/5.5/java-docs-bulk-processor.html
+ bulkActions: ${SW_STORAGE_ES_BULK_ACTIONS:2000} # Execute the bulk every 2000 requests
+ bulkSize: ${SW_STORAGE_ES_BULK_SIZE:20} # flush the bulk every 20mb
+ flushInterval: ${SW_STORAGE_ES_FLUSH_INTERVAL:10} # flush the bulk every 10 seconds whatever the number of requests
+ concurrentRequests: ${SW_STORAGE_ES_CONCURRENT_REQUESTS:2} # the number of concurrent requests
+# h2:
+# driver: ${SW_STORAGE_H2_DRIVER:org.h2.jdbcx.JdbcDataSource}
+# url: ${SW_STORAGE_H2_URL:jdbc:h2:mem:skywalking-oap-db}
+# user: ${SW_STORAGE_H2_USER:sa}
+# mysql:
+receiver-register:
+ default:
+receiver-trace:
+ default:
+ bufferPath: ${SW_RECEIVER_BUFFER_PATH:../trace-buffer/} # Path to trace buffer files, suggest to use absolute path
+ bufferOffsetMaxFileSize: ${SW_RECEIVER_BUFFER_OFFSET_MAX_FILE_SIZE:100} # Unit is MB
+ bufferDataMaxFileSize: ${SW_RECEIVER_BUFFER_DATA_MAX_FILE_SIZE:500} # Unit is MB
+ bufferFileCleanWhenRestart: ${SW_RECEIVER_BUFFER_FILE_CLEAN_WHEN_RESTART:false}
+ sampleRate: ${SW_TRACE_SAMPLE_RATE:10000} # The sample rate precision is 1/10000. 10000 means 100% sample in default.
+receiver-jvm:
+ default:
+service-mesh:
+ default:
+ bufferPath: ${SW_SERVICE_MESH_BUFFER_PATH:../mesh-buffer/} # Path to trace buffer files, suggest to use absolute path
+ bufferOffsetMaxFileSize: ${SW_SERVICE_MESH_OFFSET_MAX_FILE_SIZE:100} # Unit is MB
+ bufferDataMaxFileSize: ${SW_SERVICE_MESH_BUFFER_DATA_MAX_FILE_SIZE:500} # Unit is MB
+ bufferFileCleanWhenRestart: ${SW_SERVICE_MESH_BUFFER_FILE_CLEAN_WHEN_RESTART:false}
+istio-telemetry:
+ default:
+# receiver_zipkin:
+# default:
+# host: ${SW_RECEIVER_ZIPKIN_HOST:0.0.0.0}
+# port: ${SW_RECEIVER_ZIPKIN_PORT:9411}
+# contextPath: ${SW_RECEIVER_ZIPKIN_CONTEXT_PATH:/}
+query:
+ graphql:
+ path: ${SW_QUERY_GRAPHQL_PATH:/graphql}
+alarm:
+ default:
diff --git a/6/6.0-beta/compose/config/component-libraries.yml b/6/6.0-beta/compose/config/component-libraries.yml
new file mode 100644
index 0000000..dc5dd6c
--- /dev/null
+++ b/6/6.0-beta/compose/config/component-libraries.yml
@@ -0,0 +1,290 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+# Define all component libraries' names and IDs, used in monitored application.
+# This is a bothway mapping, agent or SDK could use the value(ID) to represent the component name in uplink data.
+#
+# ######
+# id
+# ######
+# We highly recommend DO NOT change the IDs in these file, just append new one, and make sure the ID unique.
+# Any replacement will cause visualization and aggregation error.
+#
+# All IDs in this files are reserved, even some IDs removed by some reasons, those IDs will be abandoned.
+#
+# ######
+# languages
+# ######
+# Languages declare which languages are using this component. Multi languages should be separated by `,`
+
+Tomcat:
+ id: 1
+ languages: Java
+HttpClient:
+ id: 2
+ languages: Java,C#,Node.js
+Dubbo:
+ id: 3
+ languages: Java
+H2:
+ id: 4
+ languages: Java
+Mysql:
+ id: 5
+ languages: Java,C#,Node.js
+ORACLE:
+ id: 6
+ languages: Java
+Redis:
+ id: 7
+ languages: Java,C#,Node.js
+Motan:
+ id: 8
+ languages: Java
+MongoDB:
+ id: 9
+ languages: Java,C#,Node.js
+Resin:
+ id: 10
+ languages: Java
+Feign:
+ id: 11
+ languages: Java
+OKHttp:
+ id: 12
+ languages: Java
+SpringRestTemplate:
+ id: 13
+ languages: Java
+SpringMVC:
+ id: 14
+ languages: Java
+Struts2:
+ id: 15
+ languages: Java
+NutzMVC:
+ id: 16
+ languages: Java
+NutzHttp:
+ id: 17
+ languages: Java
+JettyClient:
+ id: 18
+ languages: Java
+JettyServer:
+ id: 19
+ languages: Java
+Memcached:
+ id: 20
+ languages: Java
+ShardingJDBC:
+ id: 21
+ languages: Java
+PostgreSQL:
+ id: 22
+ languages: Java,C#,Node.js
+GRPC:
+ id: 23
+ languages: Java
+ElasticJob:
+ id: 24
+ languages: Java
+RocketMQ:
+ id: 25
+ languages: Java
+httpasyncclient:
+ id: 26
+ languages: Java
+Kafka:
+ id: 27
+ languages: Java
+ServiceComb:
+ id: 28
+ languages: Java
+Hystrix:
+ id: 29
+ languages: Java
+Jedis:
+ id: 30
+ languages: Java
+SQLite:
+ id: 31
+ languages: Java,C#
+h2-jdbc-driver:
+ id: 32
+ languages: Java
+mysql-connector-java:
+ id: 33
+ languages: Java
+ojdbc:
+ id: 34
+ languages: Java
+Spymemcached:
+ id: 35
+ languages: Java
+Xmemcached:
+ id: 36
+ languages: Java
+postgresql-jdbc-driver:
+ id: 37
+ languages: Java
+rocketMQ-producer:
+ id: 38
+ languages: Java
+rocketMQ-consumer:
+ id: 39
+ languages: Java
+kafka-producer:
+ id: 40
+ languages: Java
+kafka-consumer:
+ id: 41
+ languages: Java
+mongodb-driver:
+ id: 42
+ languages: Java
+SOFARPC:
+ id: 43
+ languages: Java
+ActiveMQ:
+ id: 44
+ languages: Java
+activemq-producer:
+ id: 45
+ languages: Java
+activemq-consumer:
+ id: 46
+ languages: Java
+Elasticsearch:
+ id: 47
+ languages: Java
+transport-client:
+ id: 48
+ languages: Java
+http:
+ id: 49
+ languages: Java,C#,Node.js
+rpc:
+ id: 50
+ languages: Java,C#,Node.js
+RabbitMQ:
+ id: 51
+ languages: Java
+rabbitmq-producer:
+ id: 52
+ languages: Java
+rabbitmq-consumer:
+ id: 53
+ languages: Java
+Canal:
+ id: 54
+ languages: Java
+Gson:
+ id: 55
+ languages: Java
+
+# .NET/.NET Core components
+# [3000, 4000) for C#/.NET only
+AspNetCore:
+ id: 3001
+ languages: C#
+EntityFrameworkCore:
+ id: 3002
+ languages: C#
+SqlClient:
+ id: 3003
+ languages: C#
+CAP:
+ id: 3004
+ languages: C#
+StackExchange.Redis:
+ id: 3005
+ languages: C#
+SqlServer:
+ id: 3006
+ languages: C#
+Npgsql:
+ id: 3007
+ languages: C#
+MySqlConnector:
+ id: 3008
+ languages: C#
+EntityFrameworkCore.InMemory:
+ id: 3009
+ languages: C#
+EntityFrameworkCore.SqlServer:
+ id: 3010
+ languages: C#
+EntityFrameworkCore.Sqlite:
+ id: 3011
+ languages: C#
+Pomelo.EntityFrameworkCore.MySql:
+ id: 3012
+ languages: C#
+Npgsql.EntityFrameworkCore.PostgreSQL:
+ id: 3013
+ languages: C#
+InMemoryDatabase:
+ id: 3014
+ languages: C#
+AspNet:
+ id: 3015
+ languages: C#
+
+# NoeJS components
+# [4000, 5000) for Node.js agent
+HttpServer:
+ id: 4001
+ languages: Node.js
+express:
+ id: 4002
+ languages: Node.js
+Egg:
+ id: 4003
+ languages: Node.js
+Koa:
+ id: 4004
+ languages: Node.js
+
+# Component Server mapping defines the server display names of some components
+# e.g.
+# Jedis is a client library in Java for Redis server
+Component-Server-Mappings:
+ mongodb-driver: MongoDB
+ rocketMQ-producer: RocketMQ
+ rocketMQ-consumer: RocketMQ
+ kafka-producer: Kafka
+ kafka-consumer: Kafka
+ activemq-producer: ActiveMQ
+ activemq-consumer: ActiveMQ
+ rabbitmq-producer: RabbitMQ
+ rabbitmq-consumer: RabbitMQ
+ postgresql-jdbc-driver: PostgreSQL
+ Xmemcached: Memcached
+ Spymemcached: Memcached
+ h2-jdbc-driver: H2
+ mysql-connector-java: Mysql
+ Jedis: Redis
+ StackExchange.Redis: Redis
+ SqlClient: SqlServer
+ Npgsql: PostgreSQL
+ MySqlConnector: Mysql
+ EntityFrameworkCore.InMemory: InMemoryDatabase
+ EntityFrameworkCore.SqlServer: SqlServer
+ EntityFrameworkCore.Sqlite: SQLite
+ Pomelo.EntityFrameworkCore.MySql: Mysql
+ Npgsql.EntityFrameworkCore.PostgreSQL: PostgreSQL
+ transport-client: Elasticsearch
diff --git a/6/6.0-beta/compose/config/datasource-settings.properties b/6/6.0-beta/compose/config/datasource-settings.properties
new file mode 100644
index 0000000..70b0099
--- /dev/null
+++ b/6/6.0-beta/compose/config/datasource-settings.properties
@@ -0,0 +1,31 @@
+#
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements. See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+#
+#
+
+jdbcUrl=jdbc:mysql://localhost:3306/swtest
+dataSource.user=root
+dataSource.password=root@1234
+dataSource.cachePrepStmts=true
+dataSource.prepStmtCacheSize=250
+dataSource.prepStmtCacheSqlLimit=2048
+dataSource.useServerPrepStmts=true
+dataSource.useLocalSessionState=true
+dataSource.rewriteBatchedStatements=true
+dataSource.cacheResultSetMetadata=true
+dataSource.cacheServerConfiguration=true
+dataSource.elideSetAutoCommits=true
+dataSource.maintainTimeStats=false
\ No newline at end of file
diff --git a/6/6.0-beta/compose/config/log4j2.xml b/6/6.0-beta/compose/config/log4j2.xml
new file mode 100644
index 0000000..c2439b6
--- /dev/null
+++ b/6/6.0-beta/compose/config/log4j2.xml
@@ -0,0 +1,36 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ ~ Licensed to the Apache Software Foundation (ASF) under one or more
+ ~ contributor license agreements. See the NOTICE file distributed with
+ ~ this work for additional information regarding copyright ownership.
+ ~ The ASF licenses this file to You under the Apache License, Version 2.0
+ ~ (the "License"); you may not use this file except in compliance with
+ ~ the License. You may obtain a copy of the License at
+ ~
+ ~ http://www.apache.org/licenses/LICENSE-2.0
+ ~
+ ~ Unless required by applicable law or agreed to in writing, software
+ ~ distributed under the License is distributed on an "AS IS" BASIS,
+ ~ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ ~ See the License for the specific language governing permissions and
+ ~ limitations under the License.
+ ~
+ -->
+
+<Configuration status="INFO">
+ <Appenders>
+ <Console name="Console" target="SYSTEM_OUT">
+ <PatternLayout charset="UTF-8" pattern="%d - %c -%-4r [%t] %-5p %x - %m%n"/>
+ </Console>
+ </Appenders>
+ <Loggers>
+ <logger name="org.eclipse.jetty" level="INFO"/>
+ <logger name="org.apache.zookeeper" level="INFO"/>
+ <logger name="org.elasticsearch.common.network.IfConfig" level="INFO"/>
+ <logger name="io.grpc.netty" level="INFO"/>
+ <logger name="org.apache.skywalking.aop.server.receiver.mesh" level="DEBUG"/>
+ <Root level="INFO">
+ <AppenderRef ref="Console"/>
+ </Root>
+ </Loggers>
+</Configuration>
diff --git a/6/6.0-beta/compose/docker-compose.yml b/6/6.0-beta/compose/docker-compose.yml
new file mode 100644
index 0000000..85425a2
--- /dev/null
+++ b/6/6.0-beta/compose/docker-compose.yml
@@ -0,0 +1,53 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements. See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership. The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License. You may obtain a copy of the License at
+#
+# http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+version: '3.3'
+services:
+ elasticsearch:
+ image: docker.elastic.co/elasticsearch/elasticsearch:6.3.2
+ container_name: elasticsearch
+ restart: always
+ ports:
+ - 9200:9200
+ - 9300:9300
+ environment:
+ discovery.type: single-node
+ oap:
+ image: skywalking/oap:6.0.0-beta
+ container_name: oap
+ depends_on:
+ - elasticsearch
+ links:
+ - elasticsearch
+ restart: always
+ ports:
+ - 11800:11800
+ - 12800:12800
+ volumes:
+ - ./config:/skywalking/config:ro
+ ui:
+ image: skywalking/ui:6.0.0-beta
+ container_name: ui
+ depends_on:
+ - oap
+ links:
+ - oap
+ restart: always
+ ports:
+ - 8080:8080
+ environment:
+ collector.ribbon.listOfServers: oap:12800
+ collector.ribbon.ReadTimeout: 20000