Apache SkyWalking Kubernetes Deployment Helm Chart

Clone this repo:
  1. d4d4cd1 Change logs for 4.0.0 (#62) by kezhenxu94 · 4 weeks ago master v4.0.0
  2. fd2eb30 Add 8.2.0 to compatibility check (#61) by kezhenxu94 · 4 weeks ago
  3. dd749f2 Add `services` resource role (#60) by kezhenxu94 · 5 weeks ago
  4. e29fa9c bugfix: hasPrefix arguments positions are wrong (#59) by kezhenxu94 · 5 weeks ago
  5. 80a18d1 Add endpoints resources to cluster role (#58) by kezhenxu94 · 5 weeks ago

Apache SkyWalking Kubernetes

GitHub stars Twitter Follow

SkyWalking Kubernetes repository provides ways to install and configure SkyWalking in a Kubernetes cluster. The scripts are written in Helm 3.

Documentation

Chart Detailed Configuration

Chart detailed configuration can be found at Chart Readme

Deploy SkyWalking in a Kubernetes cluster

There are required values that you must set explicitly when deploying SkyWalking.

namedescriptionexample
oap.image.tagthe OAP docker image tag8.1.0-es6, 8.1.0-es7, etc.
oap.storageTypethe storage type of the OAPelasticsearch, elasticsearch7, etc.
ui.image.tagthe UI docker image tag8.0.1, 8.1.0, ect.

You can set these required values via command line (e.g. --set oap.image.tag=8.1.0-es6 --set oap.storageType=elasticsearch), or edit them in a separate file(e.g. values-es6.yaml, values-es7.yaml) and use -f <filename> or --values=<filename>.

Prerequisites

git clone https://github.com/apache/skywalking-kubernetes
cd skywalking-kubernetes/chart
helm repo add elastic https://helm.elastic.co
helm dep up skywalking
export SKYWALKING_RELEASE_NAME=skywalking  # change the release name according to your scenario
export SKYWALKING_RELEASE_NAMESPACE=default  # change the namespace according to your scenario

Deploy a specific version of SkyWalking & Elasticsearch

In theory, you can deploy all versions of SkyWalking that are >= 6.0.0-GA, by specifying the desired oap.image.tag/ui.image.tag.

Please note that some configurations that are added in the later versions of SkyWalking may not work in earlier versions, and thus if you specify those configurations, they may take no effect.

here are some examples.

  • Deploy SkyWalking 8.0.1 & Elasticsearch 6.8.6
helm install "${SKYWALKING_RELEASE_NAME}" skywalking -n "${SKYWALKING_RELEASE_NAMESPACE}" \
  --set oap.image.tag=8.0.1-es6 \
  --set oap.storageType=elasticsearch \
  --set ui.image.tag=8.0.1 \
  --set elasticsearch.imageTag=6.8.6
  • Deploy SkyWalking 8.1.0 & Elasticsearch 7.5.1
helm install "${SKYWALKING_RELEASE_NAME}" skywalking -n "${SKYWALKING_RELEASE_NAMESPACE}" \
  --set oap.image.tag=8.1.0-es7 \
  --set oap.storageType=elasticsearch7 \
  --set ui.image.tag=8.1.0 \
  --set elasticsearch.imageTag=7.5.1
  • Deploy SkyWalking 6.6.0 with Elasticsearch 7
helm install "${SKYWALKING_RELEASE_NAME}" skywalking -n "${SKYWALKING_RELEASE_NAMESPACE}" \
  --set oap.image.tag=6.6.0-es7 \
  --set oap.storageType=elasticsearch7 \
  --set ui.image.tag=6.6.0
  • Deploy SkyWalking 6.5.0
helm install "${SKYWALKING_RELEASE_NAME}" skywalking -n "${SKYWALKING_RELEASE_NAMESPACE}" \
  --set oap.image.tag=6.5.0 \
  --set oap.storageType=elasticsearch \
  --set ui.image.tag=6.5.0

NOTE: Please make sure the specified OAP image tag supports the specified Elasticsearch version.

Deploy a specific version of SkyWalking with an existing Elasticsearch

Modify the connection information to the existing elasticsearch cluster in file values-my-es.yaml.

helm install "${SKYWALKING_RELEASE_NAME}" skywalking -n "${SKYWALKING_RELEASE_NAMESPACE}" \
  -f ./skywalking/values-my-es.yaml

Customization

  • Use your own configuration files

Put your own configuration files according to the overridable files under the working directory, files/conf.d, they will override the counterparts in the Docker image.

  • Pass environment variables to OAP

The SkyWalking OAP exposes many configurations that can be specified by environment variables, as listed in the main repo. You can set those environment variables by --set oap.env.<ENV_NAME>=<ENV_VALUE>, such as --set oap.env.SW_ENVOY_METRIC_ALS_HTTP_ANALYSIS=k8s-mesh.

The environment variables take priority over the overrode configuration files.

Contact Us

  • Submit an issue
  • Mail list: dev@skywalking.apache.org. Mail to dev-subscribe@skywalking.apache.org, follow the reply to subscribe the mail list.
  • Join skywalking channel at Apache Slack. If the link is not working, find the latest one at Apache INFRA WIKI.
  • QQ Group: 392443393(2000/2000, not available), 901167865(available)

LICENSE

Apache 2.0