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.git
The following commit(s) were added to refs/heads/master by this push:
new c87e4df98d Add BanyanDB cluster mode e2e tests for Istio (ALS +
metrics) (#13768)
c87e4df98d is described below
commit c87e4df98da0458f8f4c6cba58cb41f9eb2ec972
Author: 吴晟 Wu Sheng <[email protected]>
AuthorDate: Mon Mar 30 09:26:01 2026 +0800
Add BanyanDB cluster mode e2e tests for Istio (ALS + metrics) (#13768)
Adds BanyanDB cluster mode variants for Istio ALS and Envoy Metrics Service
e2e tests.
**BanyanDB cluster configuration:**
- 2 liaison nodes + 2 data nodes (hot only)
- DNS service discovery (no etcd)
- Native metadata storage (property mode)
- Access log flags commented out (available for debugging, not enabled by
default)
**New files:**
- `test/e2e-v2/cases/istio/als/banyandb/e2e.yaml` — ALS with BanyanDB
cluster
- `test/e2e-v2/cases/istio/metrics/banyandb/e2e.yaml` — Envoy metrics
service with BanyanDB cluster
- `test/e2e-v2/cases/istio/als/als-cases.yaml` — shared verify cases
(extracted from als/e2e.yaml)
- `test/e2e-v2/cases/istio/metrics/metrics-cases.yaml` — shared verify
cases (extracted from metrics/e2e.yaml)
**Workflow improvements:**
- `e2e-test-istio` job: added `storage` matrix dimension (`ES`/`BanyanDB`)
for ALS tests
- `e2e-test` job: added `Istio Metrics Service BanyanDB 1.29.0` to matrix
- **Default docker images switched from JDK 11 to JDK 25** for all e2e tests
(JDK 11/17 compatibility covered by `e2e-test-java-versions` only)
- **Clean job names**: removed e2e YAML paths from display names
- `e2e-test`: uses `${{ matrix.test.name }}` directly (e.g., `Cluster ZK
ES`, `Agent PHP`)
- `e2e-test-istio`: `Istio ALS (k8s-mesh, ES, 1.29.0, 28)`
- `e2e-test-istio-ambient`: `Istio Ambient ALS (k8s-mesh, 1.29.0, 28)`
- `e2e-test-java-versions`: `Java 11`, `Java 17`, `Java 25`
- `e2e-test-banyandb-stages`: `BanyanDB Stages`
- Access log flags commented out in all BanyanDB configs (Compose + Kind)
with instructions for enabling during debugging
**Data collection on failure:**
Collects from all BanyanDB pods via `label-selector:
app.kubernetes.io/name=banyandb`:
| Pod | Collected |
|---|---|
| `skywalking-banyandb-liaison-{0,1}` | `/tmp/accesslog/` (when access logs
enabled) |
| `skywalking-banyandb-data-hot-{0,1}` |
`/tmp/{trace,stream,measure,property,schema-property}/` |
---
.github/workflows/skywalking.yaml | 48 ++++---
test/e2e-v2/cases/istio/als/als-cases.yaml | 154 +++++++++++++++++++++
.../access_log => istio/als}/banyandb/e2e.yaml | 66 +++++----
test/e2e-v2/cases/istio/als/e2e.yaml | 138 +-----------------
test/e2e-v2/cases/istio/metrics/banyandb/e2e.yaml | 132 ++++++++++++++++++
test/e2e-v2/cases/istio/metrics/e2e.yaml | 110 +--------------
.../istio/metrics/{e2e.yaml => metrics-cases.yaml} | 99 +------------
.../profiling/ebpf/access_log/banyandb/e2e.yaml | 13 +-
.../profiling/ebpf/continuous/banyandb/e2e.yaml | 13 +-
.../cases/profiling/ebpf/network/banyandb/e2e.yaml | 13 +-
.../cases/profiling/ebpf/oncpu/banyandb/e2e.yaml | 13 +-
.../banyandb/data-generate/docker-compose.yml | 2 +-
.../cases/storage/banyandb/docker-compose.yml | 2 +-
.../cases/storage/banyandb/tls/docker-compose.yml | 2 +-
test/e2e-v2/script/docker-compose/base-compose.yml | 4 +-
15 files changed, 396 insertions(+), 413 deletions(-)
diff --git a/.github/workflows/skywalking.yaml
b/.github/workflows/skywalking.yaml
index fcc2a11b7b..241427afb7 100644
--- a/.github/workflows/skywalking.yaml
+++ b/.github/workflows/skywalking.yaml
@@ -336,7 +336,7 @@ jobs:
if: |
( always() && ! cancelled() ) &&
((github.event_name == 'schedule' && github.repository ==
'apache/skywalking') || needs.changes.outputs.oap == 'true')
- name: E2E test
+ name: ${{ matrix.test.name }}
needs: [docker, dist-tar]
runs-on: ${{ matrix.test.runs-on || 'ubuntu-latest' }}
timeout-minutes: 60
@@ -536,51 +536,56 @@ jobs:
- name: Kafka Log
config: test/e2e-v2/cases/kafka/log/e2e.yaml
- - name: Istio Metrics Service 1.21.0
+ - name: Istio Metrics Service ES 1.21.0
config: test/e2e-v2/cases/istio/metrics/e2e.yaml
env: |
ISTIO_VERSION=1.21.0
KUBERNETES_VERSION=28
- - name: Istio Metrics Service 1.22.0
+ - name: Istio Metrics Service ES 1.22.0
config: test/e2e-v2/cases/istio/metrics/e2e.yaml
env: |
ISTIO_VERSION=1.22.0
KUBERNETES_VERSION=28
- - name: Istio Metrics Service 1.23.0
+ - name: Istio Metrics Service ES 1.23.0
config: test/e2e-v2/cases/istio/metrics/e2e.yaml
env: |
ISTIO_VERSION=1.23.0
KUBERNETES_VERSION=28
- - name: Istio Metrics Service 1.24.0
+ - name: Istio Metrics Service ES 1.24.0
config: test/e2e-v2/cases/istio/metrics/e2e.yaml
env: |
ISTIO_VERSION=1.24.0
KUBERNETES_VERSION=28
- - name: Istio Metrics Service 1.25.0
+ - name: Istio Metrics Service ES 1.25.0
config: test/e2e-v2/cases/istio/metrics/e2e.yaml
env: |
ISTIO_VERSION=1.25.0
KUBERNETES_VERSION=28
- - name: Istio Metrics Service 1.26.0
+ - name: Istio Metrics Service ES 1.26.0
config: test/e2e-v2/cases/istio/metrics/e2e.yaml
env: |
ISTIO_VERSION=1.26.0
KUBERNETES_VERSION=28
- - name: Istio Metrics Service 1.27.0
+ - name: Istio Metrics Service ES 1.27.0
config: test/e2e-v2/cases/istio/metrics/e2e.yaml
env: |
ISTIO_VERSION=1.27.0
KUBERNETES_VERSION=28
- - name: Istio Metrics Service 1.28.0
+ - name: Istio Metrics Service ES 1.28.0
config: test/e2e-v2/cases/istio/metrics/e2e.yaml
env: |
ISTIO_VERSION=1.28.0
KUBERNETES_VERSION=28
- - name: Istio Metrics Service 1.29.0
+ - name: Istio Metrics Service ES 1.29.0
config: test/e2e-v2/cases/istio/metrics/e2e.yaml
env: |
ISTIO_VERSION=1.29.0
KUBERNETES_VERSION=28
+ - name: Istio Metrics Service BanyanDB 1.29.0
+ config: test/e2e-v2/cases/istio/metrics/banyandb/e2e.yaml
+ env: |
+ ISTIO_VERSION=1.29.0
+ KUBERNETES_VERSION=28
- name: Rover with Istio Process 1.28.0
config: test/e2e-v2/cases/rover/process/istio/e2e.yaml
@@ -725,7 +730,7 @@ jobs:
- uses: actions/download-artifact@v4
name: Download docker images
with:
- name: docker-images-11
+ name: docker-images-25
path: docker-images
- name: Load docker images
run: |
@@ -778,7 +783,7 @@ jobs:
if: |
( always() && ! cancelled() ) &&
((github.event_name == 'schedule' && github.repository ==
'apache/skywalking') || needs.changes.outputs.oap == 'true')
- name: E2E test
+ name: Istio ALS
needs: [docker]
runs-on: ubuntu-24.04
timeout-minutes: 60
@@ -786,6 +791,7 @@ jobs:
fail-fast: false
matrix:
analyzer: [k8s-mesh, mx-mesh]
+ storage: [ES, BanyanDB]
versions:
- istio: 1.21.0
kubernetes: 28
@@ -818,7 +824,7 @@ jobs:
- uses: actions/download-artifact@v4
name: Download docker images
with:
- name: docker-images-11
+ name: docker-images-25
path: docker-images
- name: Load docker images
run: |
@@ -830,14 +836,14 @@ jobs:
registry: ghcr.io
username: ${{ github.repository_owner }}
password: ${{ secrets.GITHUB_TOKEN }}
- - name: ${{ matrix.test.name }}
+ - name: ALS ${{ matrix.storage }}, ${{ matrix.analyzer }}, istio-${{
matrix.versions.istio }}, k8s-${{ matrix.versions.kubernetes }}
uses:
apache/skywalking-infra-e2e@e26033e1faaf865899c486ffe17dabdf17b90aae
env:
ISTIO_VERSION: ${{ matrix.versions.istio }}
KUBERNETES_VERSION: ${{ matrix.versions.kubernetes }}
ALS_ANALYZER: ${{ matrix.analyzer }}
with:
- e2e-file: test/e2e-v2/cases/istio/als/e2e.yaml
+ e2e-file: ${{ matrix.storage == 'BanyanDB' &&
'test/e2e-v2/cases/istio/als/banyandb/e2e.yaml' ||
'test/e2e-v2/cases/istio/als/e2e.yaml' }}
- if: ${{ failure() }}
run: |
df -h
@@ -847,7 +853,7 @@ jobs:
if: ${{ failure() }}
name: Upload Logs
with:
- name: test-logs-${{ matrix.test.name }}
+ name: test-istio-als-logs-${{ matrix.storage }}-${{ matrix.analyzer
}}-istio-${{ matrix.versions.istio }}-k8s-${{ matrix.versions.kubernetes }}
path: "${{ env.SW_INFRA_E2E_LOG_DIR }}"
overwrite: true
@@ -855,7 +861,7 @@ jobs:
if: |
( always() && ! cancelled() ) &&
((github.event_name == 'schedule' && github.repository ==
'apache/skywalking') || needs.changes.outputs.oap == 'true')
- name: E2E test
+ name: Istio Ambient ALS
needs: [docker]
runs-on: ubuntu-24.04
timeout-minutes: 60
@@ -890,7 +896,7 @@ jobs:
- uses: actions/download-artifact@v4
name: Download docker images
with:
- name: docker-images-11
+ name: docker-images-25
path: docker-images
- name: Load docker images
run: |
@@ -927,7 +933,7 @@ jobs:
if: |
( always() && ! cancelled() ) &&
((github.event_name == 'schedule' && github.repository ==
'apache/skywalking') || needs.changes.outputs.oap == 'true')
- name: E2E test
+ name: Java ${{ matrix.java-version }}
needs: [docker]
runs-on: ubuntu-latest
timeout-minutes: 60
@@ -977,7 +983,7 @@ jobs:
if: |
( always() && ! cancelled() ) &&
((github.event_name == 'schedule' && github.repository ==
'apache/skywalking') || needs.changes.outputs.oap == 'true')
- name: E2E test
+ name: ${{ matrix.test.name }}
needs: [docker, dist-tar]
runs-on: ${{ matrix.test.runs-on || 'ubuntu-latest' }}
timeout-minutes: 60
@@ -1001,7 +1007,7 @@ jobs:
- uses: actions/download-artifact@v4
name: Download docker images
with:
- name: docker-images-11
+ name: docker-images-25
path: docker-images
- name: Load docker images
run: |
diff --git a/test/e2e-v2/cases/istio/als/als-cases.yaml
b/test/e2e-v2/cases/istio/als/als-cases.yaml
new file mode 100644
index 0000000000..0f298a2410
--- /dev/null
+++ b/test/e2e-v2/cases/istio/als/als-cases.yaml
@@ -0,0 +1,154 @@
+# 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.
+
+# Shared verify cases for Istio ALS tests (ES and BanyanDB variants)
+
+cases:
+ # service list
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
service ls
+ expected: expected/service.yml
+ # service instance list
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage
+ expected: expected/service-instance.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews
+ expected: expected/service-instance.yml
+ # service endpoint
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
endpoint list --service-name=e2e::productpage
+ expected: expected/service-endpoint-productpage.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
endpoint list --service-name=e2e::reviews
+ expected: expected/service-endpoint-reviews.yml
+
+ # service metrics: e2e::productpage
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_sla --service-name=e2e::productpage
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_cpm --service-name=e2e::productpage
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_resp_time --service-name=e2e::productpage
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_apdex --service-name=e2e::productpage
+ expected: expected/metrics-has-value.yml
+ # service metrics: e2e::reviews
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_sla --service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_cpm --service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_resp_time --service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_apdex --service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_sidecar_internal_req_latency_nanos
--service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_sidecar_internal_resp_latency_nanos
--service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ # service instance metrics: e2e::productpage
+ - query: |
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_resp_time
--service-name=e2e::productpage --instance-name=$( \
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
+ )
+ expected: expected/metrics-has-value.yml
+ - query: |
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_cpm --service-name=e2e::productpage
--instance-name=$( \
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
+ )
+ expected: expected/metrics-has-value.yml
+ - query: |
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_sla --service-name=e2e::productpage
--instance-name=$( \
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
+ )
+ expected: expected/metrics-has-value.yml
+ # service instance metrics: e2e::reviews
+ - query: |
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_resp_time
--service-name=e2e::reviews --instance-name=$( \
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews | yq e '.[0].name' -
+ )
+ expected: expected/metrics-has-value.yml
+ - query: |
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_cpm --service-name=e2e::reviews
--instance-name=$( \
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews | yq e '.[0].name' -
+ )
+ expected: expected/metrics-has-value.yml
+ - query: |
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_sla --service-name=e2e::reviews
--instance-name=$( \
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews | yq e '.[0].name' -
+ )
+ expected: expected/metrics-has-value.yml
+ - query: |
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_sidecar_internal_req_latency_nanos
--service-name=e2e::reviews --instance-name=$( \
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews | yq e '.[0].name' -
+ )
+ expected: expected/metrics-has-value.yml
+ - query: |
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_sidecar_internal_resp_latency_nanos
--service-name=e2e::reviews --instance-name=$( \
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews | yq e '.[0].name' -
+ )
+ expected: expected/metrics-has-value.yml
+
+ # service endpoint metrics: e2e::productpage GET:/productpage
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_cpm --endpoint-name=GET:/productpage
--service-name=e2e::productpage
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_resp_time --endpoint-name=GET:/productpage
--service-name=e2e::productpage
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_sla --endpoint-name=GET:/productpage
--service-name=e2e::productpage
+ expected: expected/metrics-has-value.yml
+ # service endpoint metrics: e2e::reviews GET:/reviews/0
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_cpm --endpoint-name=GET:/reviews/0
--service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_resp_time --endpoint-name=GET:/reviews/0
--service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_sla --endpoint-name=GET:/reviews/0
--service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_sidecar_internal_req_latency_nanos
--endpoint-name=GET:/reviews/0 --service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_sidecar_internal_resp_latency_nanos
--endpoint-name=GET:/reviews/0 --service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+
+ # dependency service
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
dependency service --service-name=e2e::productpage
+ expected: expected/dependency-services-productpage.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
dependency service --service-name=e2e::reviews
+ expected: expected/dependency-services-reviews.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
dependency instance --service-name=e2e::productpage
--dest-service-name=e2e::reviews
+ expected: expected/dependency-services-instance-productpage.yml
+
+ # service relation metrics
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_relation_client_cpm
--service-name=e2e::productpage --dest-service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_relation_server_cpm
--service-name=e2e::productpage --dest-service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_client_sidecar_internal_req_latency_nanos
--service-name=e2e::productpage --dest-service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_server_sidecar_internal_req_latency_nanos
--service-name=e2e::productpage --dest-service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_client_sidecar_internal_resp_latency_nanos
--service-name=e2e::productpage --dest-service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_server_sidecar_internal_resp_latency_nanos
--service-name=e2e::productpage --dest-service-name=e2e::reviews
+ expected: expected/metrics-has-value.yml
+ # service instance relation metrics, e2e::productpage -> e2e::reviews
+ - query: |
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_relation_client_cpm \
+ --service-name=e2e::productpage --instance-name=$( \
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' - ) \
+ --dest-service-name=e2e::reviews --dest-instance-name=$( \
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews | yq e '.[0].name' - ) \
+
+ expected: expected/metrics-has-value.yml
+ - query: |
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_relation_server_cpm \
+ --service-name=e2e::productpage --instance-name=$( \
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' - ) \
+ --dest-service-name=e2e::reviews --dest-instance-name=$( \
+ swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews | yq e '.[0].name' - ) \
+
+ expected: expected/metrics-has-value.yml
diff --git a/test/e2e-v2/cases/profiling/ebpf/access_log/banyandb/e2e.yaml
b/test/e2e-v2/cases/istio/als/banyandb/e2e.yaml
similarity index 54%
copy from test/e2e-v2/cases/profiling/ebpf/access_log/banyandb/e2e.yaml
copy to test/e2e-v2/cases/istio/als/banyandb/e2e.yaml
index 269367aa58..dd4c874901 100644
--- a/test/e2e-v2/cases/profiling/ebpf/access_log/banyandb/e2e.yaml
+++ b/test/e2e-v2/cases/istio/als/banyandb/e2e.yaml
@@ -13,12 +13,12 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-# This file is used to show how to write configuration files and can be used
to test.
+# Istio ALS test with BanyanDB cluster mode (liaison x2, data x2, DNS
discovery, native metadata)
setup:
env: kind
- file: ../../kind.yaml
- init-system-environment: ../../../../../script/env
+ file: ../../kind.k${KUBERNETES_VERSION}.yaml
+ init-system-environment: ../../../../script/env
kind:
import-images:
- skywalking/ui:latest
@@ -36,49 +36,67 @@ setup:
command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh swctl
- name: install kubectl
command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh
kubectl
+ - name: install istio
+ command: |
+ bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh istioctl
+ istioctl install -y --set profile=demo \
+ --set
meshConfig.defaultConfig.envoyAccessLogService.address=skywalking-oap.istio-system:11800
\
+ --set meshConfig.enableEnvoyAccessLogService=true
+ kubectl label namespace default istio-injection=enabled
- name: Install helm
command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh helm
- - name: Install kubectl
- command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh
kubectl
- - name: Install SkyWalking
+ - name: Install SkyWalking with BanyanDB cluster
+ # To enable BanyanDB access logs for debugging, add these flags to the
helm install:
+ # --set
"banyandb.cluster.liaison.env[0].name=BYDB_ENABLE_INGESTION_ACCESS_LOG" \
+ # --set "banyandb.cluster.liaison.env[0].value=\"true\"" \
+ # --set
"banyandb.cluster.liaison.env[1].name=BYDB_ENABLE_QUERY_ACCESS_LOG" \
+ # --set "banyandb.cluster.liaison.env[1].value=\"true\"" \
+ # --set
"banyandb.cluster.liaison.env[2].name=BYDB_ACCESS_LOG_ROOT_PATH" \
+ # --set "banyandb.cluster.liaison.env[2].value=/tmp"
command: |
- kubectl create namespace istio-system
helm -n istio-system install skywalking \
oci://ghcr.io/apache/skywalking-helm/skywalking-helm \
--version "0.0.0-${SW_KUBERNETES_COMMIT_SHA}" \
--set fullnameOverride=skywalking \
--set elasticsearch.enabled=false \
- --set banyandb.enabled=true \
- --set banyandb.image.tag=${SW_BANYANDB_COMMIT} \
- --set banyandb.image.repository=ghcr.io/apache/skywalking-banyandb \
+ --set oap.env.SW_ENVOY_METRIC_ALS_HTTP_ANALYSIS=$ALS_ANALYZER \
+ --set oap.env.SW_ENVOY_METRIC_ALS_TCP_ANALYSIS=$ALS_ANALYZER \
+ --set oap.env.K8S_SERVICE_NAME_RULE='e2e::${service.metadata.name}' \
+ --set oap.env.SW_HEALTH_CHECKER=default \
+ --set oap.envoy.als.enabled=true \
--set oap.replicas=1 \
--set ui.image.repository=skywalking/ui \
--set ui.image.tag=latest \
--set oap.image.tag=latest \
--set oap.image.repository=skywalking/oap \
--set oap.storageType=banyandb \
- --set oap.env.SW_HEALTH_CHECKER=default \
- --set
"banyandb.standalone.env[0].name=BYDB_ENABLE_INGESTION_ACCESS_LOG" \
- --set "banyandb.standalone.env[0].value=\"true\"" \
- --set "banyandb.standalone.env[1].name=BYDB_ENABLE_QUERY_ACCESS_LOG"
\
- --set "banyandb.standalone.env[1].value=\"true\"" \
- --set "banyandb.standalone.env[2].name=BYDB_ACCESS_LOG_ROOT_PATH" \
- --set "banyandb.standalone.env[2].value=/tmp" \
- -f test/e2e-v2/cases/profiling/ebpf/kubernetes-values.yaml
+ --set banyandb.enabled=true \
+ --set banyandb.standalone.enabled=false \
+ --set banyandb.cluster.enabled=true \
+ --set banyandb.cluster.liaison.replicas=2 \
+ --set banyandb.cluster.data.nodeTemplate.replicas=2 \
+ --set banyandb.image.tag=${SW_BANYANDB_COMMIT} \
+ --set banyandb.image.repository=ghcr.io/apache/skywalking-banyandb \
+ -f test/e2e-v2/cases/istio/values.yaml
wait:
- namespace: istio-system
resource: deployments/skywalking-oap
for: condition=available
- - name: Deploy rover services
+ - name: Deploy demo services
command: |
- kubectl apply -f
https://raw.githubusercontent.com/istio/istio/1.18.0/samples/bookinfo/platform/kube/bookinfo.yaml
- envsubst < test/e2e-v2/cases/profiling/ebpf/access_log/rover.yaml |
kubectl apply -f -
+ kubectl apply -f
https://raw.githubusercontent.com/istio/istio/$ISTIO_VERSION/samples/bookinfo/platform/kube/bookinfo.yaml
+ kubectl apply -f
https://raw.githubusercontent.com/istio/istio/$ISTIO_VERSION/samples/bookinfo/networking/bookinfo-gateway.yaml
+ # Enable TCP services
+ kubectl apply -f
https://raw.githubusercontent.com/istio/istio/$ISTIO_VERSION/samples/bookinfo/platform/kube/bookinfo-ratings-v2.yaml
+ kubectl apply -f
https://raw.githubusercontent.com/istio/istio/$ISTIO_VERSION/samples/bookinfo/platform/kube/bookinfo-db.yaml
+ kubectl apply -f
https://raw.githubusercontent.com/istio/istio/$ISTIO_VERSION/samples/bookinfo/networking/destination-rule-all.yaml
+ kubectl apply -f
https://raw.githubusercontent.com/istio/istio/$ISTIO_VERSION/samples/bookinfo/networking/virtual-service-ratings-db.yaml
wait:
- namespace: default
resource: pod
for: condition=Ready
- name: Generate traffic
- path: ../traffic-gen.yaml
+ path: ../../traffic-gen.yaml
wait:
- namespace: default
resource: pod
@@ -88,10 +106,10 @@ setup:
verify:
retry:
count: 20
- interval: 10s
+ interval: 15s
cases:
- includes:
- - ../accesslog-cases.yaml
+ - ../als-cases.yaml
cleanup:
on: always
diff --git a/test/e2e-v2/cases/istio/als/e2e.yaml
b/test/e2e-v2/cases/istio/als/e2e.yaml
index cd7957e886..6ff8d1b526 100644
--- a/test/e2e-v2/cases/istio/als/e2e.yaml
+++ b/test/e2e-v2/cases/istio/als/e2e.yaml
@@ -102,139 +102,5 @@ verify:
count: 20
interval: 15s
cases:
- # service list
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
service ls
- expected: expected/service.yml
- # service instance list
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage
- expected: expected/service-instance.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews
- expected: expected/service-instance.yml
- # service endpoint
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
endpoint list --service-name=e2e::productpage
- expected: expected/service-endpoint-productpage.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
endpoint list --service-name=e2e::reviews
- expected: expected/service-endpoint-reviews.yml
-
- # service metrics: e2e::productpage
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_sla --service-name=e2e::productpage
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_cpm --service-name=e2e::productpage
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_resp_time --service-name=e2e::productpage
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_apdex --service-name=e2e::productpage
- expected: expected/metrics-has-value.yml
- # service metrics: e2e::reviews
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_sla --service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_cpm --service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_resp_time --service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_apdex --service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_sidecar_internal_req_latency_nanos
--service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_sidecar_internal_resp_latency_nanos
--service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- # service instance metrics: e2e::productpage
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_resp_time
--service-name=e2e::productpage --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_cpm --service-name=e2e::productpage
--instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_sla --service-name=e2e::productpage
--instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- # service instance metrics: e2e::reviews
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_resp_time
--service-name=e2e::reviews --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_cpm --service-name=e2e::reviews
--instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_sla --service-name=e2e::reviews
--instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_sidecar_internal_req_latency_nanos
--service-name=e2e::reviews --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_sidecar_internal_resp_latency_nanos
--service-name=e2e::reviews --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
-
- # service endpoint metrics: e2e::productpage GET:/productpage
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_cpm --endpoint-name=GET:/productpage
--service-name=e2e::productpage
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_resp_time --endpoint-name=GET:/productpage
--service-name=e2e::productpage
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_sla --endpoint-name=GET:/productpage
--service-name=e2e::productpage
- expected: expected/metrics-has-value.yml
- # service endpoint metrics: e2e::reviews GET:/reviews/0
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_cpm --endpoint-name=GET:/reviews/0
--service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_resp_time --endpoint-name=GET:/reviews/0
--service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_sla --endpoint-name=GET:/reviews/0
--service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_sidecar_internal_req_latency_nanos
--endpoint-name=GET:/reviews/0 --service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=endpoint_sidecar_internal_resp_latency_nanos
--endpoint-name=GET:/reviews/0 --service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
-
- # dependency service
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
dependency service --service-name=e2e::productpage
- expected: expected/dependency-services-productpage.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
dependency service --service-name=e2e::reviews
- expected: expected/dependency-services-reviews.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
dependency instance --service-name=e2e::productpage
--dest-service-name=e2e::reviews
- expected: expected/dependency-services-instance-productpage.yml
-
- # service relation metrics
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_relation_client_cpm
--service-name=e2e::productpage --dest-service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_relation_server_cpm
--service-name=e2e::productpage --dest-service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_client_sidecar_internal_req_latency_nanos
--service-name=e2e::productpage --dest-service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_server_sidecar_internal_req_latency_nanos
--service-name=e2e::productpage --dest-service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_client_sidecar_internal_resp_latency_nanos
--service-name=e2e::productpage --dest-service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_server_sidecar_internal_resp_latency_nanos
--service-name=e2e::productpage --dest-service-name=e2e::reviews
- expected: expected/metrics-has-value.yml
- # service instance relation metrics, e2e::productpage -> e2e::reviews
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_relation_client_cpm \
- --service-name=e2e::productpage --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' - ) \
- --dest-service-name=e2e::reviews --dest-instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews | yq e '.[0].name' - ) \
-
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=service_instance_relation_server_cpm \
- --service-name=e2e::productpage --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' - ) \
- --dest-service-name=e2e::reviews --dest-instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::reviews | yq e '.[0].name' - ) \
-
- expected: expected/metrics-has-value.yml
+ - includes:
+ - als-cases.yaml
diff --git a/test/e2e-v2/cases/istio/metrics/banyandb/e2e.yaml
b/test/e2e-v2/cases/istio/metrics/banyandb/e2e.yaml
new file mode 100644
index 0000000000..84489087ab
--- /dev/null
+++ b/test/e2e-v2/cases/istio/metrics/banyandb/e2e.yaml
@@ -0,0 +1,132 @@
+# 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.
+
+# Istio Envoy Metrics Service test with BanyanDB cluster mode (liaison x2,
data x2, DNS discovery, native metadata)
+
+setup:
+ env: kind
+ file: ../../kind.k${KUBERNETES_VERSION}.yaml
+ init-system-environment: ../../../../script/env
+ kind:
+ import-images:
+ - skywalking/ui:latest
+ - skywalking/oap:latest
+ expose-ports:
+ - namespace: istio-system
+ resource: service/skywalking-ui
+ port: 80
+ steps:
+ - name: set PATH
+ command: export PATH=/tmp/skywalking-infra-e2e/bin:$PATH
+ - name: install yq
+ command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh yq
+ - name: install swctl
+ command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh swctl
+ - name: install kubectl
+ command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh
kubectl
+ - name: install istio
+ command: |
+ bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh istioctl
+ istioctl install -y --set profile=demo \
+ --set
meshConfig.defaultConfig.envoyMetricsService.address=skywalking-oap.istio-system:11800
\
+ --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[0]=.*membership_healthy.*'
\
+ --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[1]=.*upstream_cx_active.*'
\
+ --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[2]=.*upstream_cx_total.*'
\
+ --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[3]=.*upstream_rq_active.*'
\
+ --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[4]=.*upstream_rq_total.*'
\
+ --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[5]=.*upstream_rq_pending_active.*'
\
+ --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[6]=.*lb_healthy_panic.*'
\
+ --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[7]=.*upstream_cx_none_healthy.*'
\
+ --set values.telemetry.v2.enabled=false
+ kubectl label namespace default istio-injection=enabled
+ - name: Install helm
+ command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh helm
+ - name: Install SkyWalking with BanyanDB cluster
+ # To enable BanyanDB access logs for debugging, add these flags to the
helm install:
+ # --set
"banyandb.cluster.liaison.env[0].name=BYDB_ENABLE_INGESTION_ACCESS_LOG" \
+ # --set "banyandb.cluster.liaison.env[0].value=\"true\"" \
+ # --set
"banyandb.cluster.liaison.env[1].name=BYDB_ENABLE_QUERY_ACCESS_LOG" \
+ # --set "banyandb.cluster.liaison.env[1].value=\"true\"" \
+ # --set
"banyandb.cluster.liaison.env[2].name=BYDB_ACCESS_LOG_ROOT_PATH" \
+ # --set "banyandb.cluster.liaison.env[2].value=/tmp"
+ command: |
+ helm -n istio-system install skywalking \
+ oci://ghcr.io/apache/skywalking-helm/skywalking-helm \
+ --version "0.0.0-${SW_KUBERNETES_COMMIT_SHA}" \
+ --set fullnameOverride=skywalking \
+ --set elasticsearch.enabled=false \
+ --set oap.env.SW_ENVOY_METRIC_ALS_HTTP_ANALYSIS=$ALS_ANALYZER \
+ --set oap.env.SW_ENVOY_METRIC_ALS_TCP_ANALYSIS=$ALS_ANALYZER \
+ --set oap.env.K8S_SERVICE_NAME_RULE='e2e::${service.metadata.name}' \
+ --set oap.env.SW_HEALTH_CHECKER=default \
+ --set oap.replicas=1 \
+ --set ui.image.repository=skywalking/ui \
+ --set ui.image.tag=latest \
+ --set oap.image.tag=latest \
+ --set oap.image.repository=skywalking/oap \
+ --set oap.storageType=banyandb \
+ --set banyandb.enabled=true \
+ --set banyandb.standalone.enabled=false \
+ --set banyandb.cluster.enabled=true \
+ --set banyandb.cluster.liaison.replicas=2 \
+ --set banyandb.cluster.data.nodeTemplate.replicas=2 \
+ --set banyandb.image.tag=${SW_BANYANDB_COMMIT} \
+ --set banyandb.image.repository=ghcr.io/apache/skywalking-banyandb \
+ -f test/e2e-v2/cases/istio/values.yaml
+ wait:
+ - namespace: istio-system
+ resource: deployments/skywalking-oap
+ for: condition=available
+ - name: Deploy demo services
+ command: |
+ kubectl apply -f
https://raw.githubusercontent.com/istio/istio/$ISTIO_VERSION/samples/bookinfo/platform/kube/bookinfo.yaml
+ kubectl apply -f
https://raw.githubusercontent.com/istio/istio/$ISTIO_VERSION/samples/bookinfo/networking/bookinfo-gateway.yaml
+ kubectl apply -f
https://raw.githubusercontent.com/istio/istio/$ISTIO_VERSION/samples/bookinfo/networking/destination-rule-all.yaml
+ kubectl apply -f
https://raw.githubusercontent.com/istio/istio/$ISTIO_VERSION/samples/bookinfo/networking/virtual-service-all-v1.yaml
+ wait:
+ - namespace: default
+ resource: pod
+ for: condition=Ready
+ - name: Generate traffic
+ path: ../../traffic-gen.yaml
+ wait:
+ - namespace: default
+ resource: pod
+ for: condition=Ready
+ timeout: 25m
+
+verify:
+ retry:
+ count: 20
+ interval: 15s
+ cases:
+ - includes:
+ - ../metrics-cases.yaml
+
+cleanup:
+ on: always
+ collect:
+ on: failure
+ output-dir: $SW_INFRA_E2E_LOG_DIR/banyandb-data
+ items:
+ - namespace: istio-system
+ label-selector: app.kubernetes.io/name=banyandb
+ paths:
+ - /tmp/trace/
+ - /tmp/stream/
+ - /tmp/measure/
+ - /tmp/property/
+ - /tmp/schema-property/
+ - /tmp/accesslog/
diff --git a/test/e2e-v2/cases/istio/metrics/e2e.yaml
b/test/e2e-v2/cases/istio/metrics/e2e.yaml
index f11d083caf..2097661d45 100644
--- a/test/e2e-v2/cases/istio/metrics/e2e.yaml
+++ b/test/e2e-v2/cases/istio/metrics/e2e.yaml
@@ -109,111 +109,5 @@ verify:
count: 20
interval: 10s
cases:
- # service list
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
service ls
- expected: expected/service.yml
- # service instance list
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage
- expected: expected/service-instance.yml
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::istio-ingressgateway
- expected: expected/service-instance.yml
-
- # service instance metrics: e2e::productpage
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_heap_memory_used
--service-name=e2e::productpage --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_heap_memory_max_used
--service-name=e2e::productpage --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_memory_allocated
--service-name=e2e::productpage --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_memory_allocated_max
--service-name=e2e::productpage --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_memory_physical_size
--service-name=e2e::productpage --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_memory_physical_size_max
--service-name=e2e::productpage --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_worker_threads --service-name=e2e::productpage
--instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_worker_threads_max
--service-name=e2e::productpage --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- # service instance metrics: e2e::istio-ingressgateway
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_heap_memory_used
--service-name=e2e::istio-ingressgateway --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::istio-ingressgateway | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_heap_memory_max_used
--service-name=e2e::istio-ingressgateway --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::istio-ingressgateway | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_memory_allocated
--service-name=e2e::istio-ingressgateway --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::istio-ingressgateway | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_memory_allocated_max
--service-name=e2e::istio-ingressgateway --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::istio-ingressgateway | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_memory_physical_size
--service-name=e2e::istio-ingressgateway --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::istio-ingressgateway | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_memory_physical_size_max
--service-name=e2e::istio-ingressgateway --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::istio-ingressgateway | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_worker_threads
--service-name=e2e::istio-ingressgateway --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::istio-ingressgateway | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec --expression=envoy_worker_threads_max
--service-name=e2e::istio-ingressgateway --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::istio-ingressgateway | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value.yml
-
- # service instance labeled metrics: e2e::productpage, label: e2e::details
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec
--expression=envoy_cluster_membership_healthy{cluster_name=\"e2e::details\"}
--service-name=e2e::productpage --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value-label.yml
- # service instance labeled metrics: e2e::productpage, label: e2e::details
- - query: |
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec
--expression=envoy_cluster_membership_healthy{cluster_name=\"e2e::details\"}
--service-name=e2e::istio-ingressgateway --instance-name=$( \
- swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::istio-ingressgateway | yq e '.[0].name' -
- )
- expected: expected/metrics-has-value-label.yml
-
- # dependency service
- - query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
dependency service --service-name=e2e::productpage
- expected: expected/dependency-services-productpage.yml
+ - includes:
+ - metrics-cases.yaml
diff --git a/test/e2e-v2/cases/istio/metrics/e2e.yaml
b/test/e2e-v2/cases/istio/metrics/metrics-cases.yaml
similarity index 68%
copy from test/e2e-v2/cases/istio/metrics/e2e.yaml
copy to test/e2e-v2/cases/istio/metrics/metrics-cases.yaml
index f11d083caf..35134426aa 100644
--- a/test/e2e-v2/cases/istio/metrics/e2e.yaml
+++ b/test/e2e-v2/cases/istio/metrics/metrics-cases.yaml
@@ -13,102 +13,9 @@
# See the License for the specific language governing permissions and
# limitations under the License.
-# This file is used to show how to write configuration files and can be used
to test.
+# Shared verify cases for Istio metrics tests (ES and BanyanDB variants)
-setup:
- env: kind
- file: ../kind.k${KUBERNETES_VERSION}.yaml
- init-system-environment: ../../../script/env
- kind:
- import-images:
- - skywalking/ui:latest
- - skywalking/oap:latest
- expose-ports:
- - namespace: istio-system
- resource: service/skywalking-ui
- port: 80
- steps:
- - name: set PATH
- command: export PATH=/tmp/skywalking-infra-e2e/bin:$PATH
- - name: install yq
- command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh yq
- - name: install swctl
- command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh swctl
- - name: install kubectl
- command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh
kubectl
- - name: install istio
- command: |
- bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh istioctl
- istioctl install -y --set profile=demo \
- --set
meshConfig.defaultConfig.envoyMetricsService.address=skywalking-oap.istio-system:11800
\
- --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[0]=.*membership_healthy.*'
\
- --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[1]=.*upstream_cx_active.*'
\
- --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[2]=.*upstream_cx_total.*'
\
- --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[3]=.*upstream_rq_active.*'
\
- --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[4]=.*upstream_rq_total.*'
\
- --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[5]=.*upstream_rq_pending_active.*'
\
- --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[6]=.*lb_healthy_panic.*'
\
- --set
'meshConfig.defaultConfig.proxyStatsMatcher.inclusionRegexps[7]=.*upstream_cx_none_healthy.*'
\
- --set values.telemetry.v2.enabled=false # disable the
metadata-exchange extension intentionally to make sure metrics service doesn't
rely on it
- kubectl label namespace default istio-injection=enabled
- - name: Install helm
- command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh helm
- - name: Install kubectl
- command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh
kubectl
- - name: Install ECK operator
- command: |
- helm pull oci://ghcr.io/apache/skywalking-helm/skywalking-helm \
- --version "0.0.0-${SW_KUBERNETES_COMMIT_SHA}" --untar
- helm dep up skywalking-helm
- helm -n istio-system install eck-operator
skywalking-helm/charts/eck-operator-*.tgz \
- --create-namespace
- kubectl -n istio-system rollout status --watch --timeout=120s
statefulset/elastic-operator
- - name: Install SkyWalking
- command: |
- helm -n istio-system install skywalking \
- oci://ghcr.io/apache/skywalking-helm/skywalking-helm \
- --version "0.0.0-${SW_KUBERNETES_COMMIT_SHA}" \
- --set fullnameOverride=skywalking \
- --set eckOperator.enabled=false \
- --set oap.env.SW_ENVOY_METRIC_ALS_HTTP_ANALYSIS=$ALS_ANALYZER \
- --set oap.env.SW_ENVOY_METRIC_ALS_TCP_ANALYSIS=$ALS_ANALYZER \
- --set oap.env.K8S_SERVICE_NAME_RULE='e2e::${service.metadata.name}' \
- --set oap.env.SW_HEALTH_CHECKER=default \
- --set oap.envoy.als.enabled=true \
- --set oap.replicas=1 \
- --set ui.image.repository=skywalking/ui \
- --set ui.image.tag=latest \
- --set oap.image.tag=latest \
- --set oap.image.repository=skywalking/oap \
- --set oap.storageType=elasticsearch \
- -f test/e2e-v2/cases/istio/values.yaml
- wait:
- - namespace: istio-system
- resource: deployments/skywalking-oap
- for: condition=available
- - name: Deploy demo services
- command: |
- kubectl apply -f
https://raw.githubusercontent.com/istio/istio/$ISTIO_VERSION/samples/bookinfo/platform/kube/bookinfo.yaml
- kubectl apply -f
https://raw.githubusercontent.com/istio/istio/$ISTIO_VERSION/samples/bookinfo/networking/bookinfo-gateway.yaml
- kubectl apply -f
https://raw.githubusercontent.com/istio/istio/$ISTIO_VERSION/samples/bookinfo/networking/destination-rule-all.yaml
- kubectl apply -f
https://raw.githubusercontent.com/istio/istio/$ISTIO_VERSION/samples/bookinfo/networking/virtual-service-all-v1.yaml
- wait:
- - namespace: default
- resource: pod
- for: condition=Ready
- - name: Generate traffic
- path: ../traffic-gen.yaml
- wait:
- - namespace: default
- resource: pod
- for: condition=Ready
- timeout: 25m
-
-verify:
- retry:
- count: 20
- interval: 10s
- cases:
+cases:
# service list
- query: swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
service ls
expected: expected/service.yml
@@ -207,7 +114,7 @@ verify:
swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::productpage | yq e '.[0].name' -
)
expected: expected/metrics-has-value-label.yml
- # service instance labeled metrics: e2e::productpage, label: e2e::details
+ # service instance labeled metrics: e2e::istio-ingressgateway, label:
e2e::details
- query: |
swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
metrics exec
--expression=envoy_cluster_membership_healthy{cluster_name=\"e2e::details\"}
--service-name=e2e::istio-ingressgateway --instance-name=$( \
swctl --display yaml
--base-url=http://${service_skywalking_ui_host}:${service_skywalking_ui_80}/graphql
instance list --service-name=e2e::istio-ingressgateway | yq e '.[0].name' -
diff --git a/test/e2e-v2/cases/profiling/ebpf/access_log/banyandb/e2e.yaml
b/test/e2e-v2/cases/profiling/ebpf/access_log/banyandb/e2e.yaml
index 269367aa58..f563f9ded2 100644
--- a/test/e2e-v2/cases/profiling/ebpf/access_log/banyandb/e2e.yaml
+++ b/test/e2e-v2/cases/profiling/ebpf/access_log/banyandb/e2e.yaml
@@ -41,6 +41,13 @@ setup:
- name: Install kubectl
command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh
kubectl
- name: Install SkyWalking
+ # To enable BanyanDB access logs for debugging, add these flags to the
helm install:
+ # --set
"banyandb.standalone.env[0].name=BYDB_ENABLE_INGESTION_ACCESS_LOG" \
+ # --set "banyandb.standalone.env[0].value=\"true\"" \
+ # --set "banyandb.standalone.env[1].name=BYDB_ENABLE_QUERY_ACCESS_LOG"
\
+ # --set "banyandb.standalone.env[1].value=\"true\"" \
+ # --set "banyandb.standalone.env[2].name=BYDB_ACCESS_LOG_ROOT_PATH" \
+ # --set "banyandb.standalone.env[2].value=/tmp"
command: |
kubectl create namespace istio-system
helm -n istio-system install skywalking \
@@ -58,12 +65,6 @@ setup:
--set oap.image.repository=skywalking/oap \
--set oap.storageType=banyandb \
--set oap.env.SW_HEALTH_CHECKER=default \
- --set
"banyandb.standalone.env[0].name=BYDB_ENABLE_INGESTION_ACCESS_LOG" \
- --set "banyandb.standalone.env[0].value=\"true\"" \
- --set "banyandb.standalone.env[1].name=BYDB_ENABLE_QUERY_ACCESS_LOG"
\
- --set "banyandb.standalone.env[1].value=\"true\"" \
- --set "banyandb.standalone.env[2].name=BYDB_ACCESS_LOG_ROOT_PATH" \
- --set "banyandb.standalone.env[2].value=/tmp" \
-f test/e2e-v2/cases/profiling/ebpf/kubernetes-values.yaml
wait:
- namespace: istio-system
diff --git a/test/e2e-v2/cases/profiling/ebpf/continuous/banyandb/e2e.yaml
b/test/e2e-v2/cases/profiling/ebpf/continuous/banyandb/e2e.yaml
index 691f6e830e..618e14c4fc 100644
--- a/test/e2e-v2/cases/profiling/ebpf/continuous/banyandb/e2e.yaml
+++ b/test/e2e-v2/cases/profiling/ebpf/continuous/banyandb/e2e.yaml
@@ -42,6 +42,13 @@ setup:
- name: Install kubectl
command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh
kubectl
- name: Install SkyWalking
+ # To enable BanyanDB access logs for debugging, add these flags to the
helm install:
+ # --set
"banyandb.standalone.env[0].name=BYDB_ENABLE_INGESTION_ACCESS_LOG" \
+ # --set "banyandb.standalone.env[0].value=\"true\"" \
+ # --set "banyandb.standalone.env[1].name=BYDB_ENABLE_QUERY_ACCESS_LOG"
\
+ # --set "banyandb.standalone.env[1].value=\"true\"" \
+ # --set "banyandb.standalone.env[2].name=BYDB_ACCESS_LOG_ROOT_PATH" \
+ # --set "banyandb.standalone.env[2].value=/tmp"
command: |
kubectl create namespace istio-system
helm -n istio-system install skywalking \
@@ -59,12 +66,6 @@ setup:
--set oap.image.repository=skywalking/oap \
--set oap.storageType=banyandb \
--set oap.env.SW_HEALTH_CHECKER=default \
- --set
"banyandb.standalone.env[0].name=BYDB_ENABLE_INGESTION_ACCESS_LOG" \
- --set "banyandb.standalone.env[0].value=\"true\"" \
- --set "banyandb.standalone.env[1].name=BYDB_ENABLE_QUERY_ACCESS_LOG"
\
- --set "banyandb.standalone.env[1].value=\"true\"" \
- --set "banyandb.standalone.env[2].name=BYDB_ACCESS_LOG_ROOT_PATH" \
- --set "banyandb.standalone.env[2].value=/tmp" \
-f test/e2e-v2/cases/profiling/ebpf/kubernetes-values.yaml
wait:
- namespace: istio-system
diff --git a/test/e2e-v2/cases/profiling/ebpf/network/banyandb/e2e.yaml
b/test/e2e-v2/cases/profiling/ebpf/network/banyandb/e2e.yaml
index e6bdb0aea1..584bf001c7 100644
--- a/test/e2e-v2/cases/profiling/ebpf/network/banyandb/e2e.yaml
+++ b/test/e2e-v2/cases/profiling/ebpf/network/banyandb/e2e.yaml
@@ -45,6 +45,13 @@ setup:
- name: Install kubectl
command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh
kubectl
- name: Install SkyWalking
+ # To enable BanyanDB access logs for debugging, add these flags to the
helm install:
+ # --set
"banyandb.standalone.env[0].name=BYDB_ENABLE_INGESTION_ACCESS_LOG" \
+ # --set "banyandb.standalone.env[0].value=\"true\"" \
+ # --set "banyandb.standalone.env[1].name=BYDB_ENABLE_QUERY_ACCESS_LOG"
\
+ # --set "banyandb.standalone.env[1].value=\"true\"" \
+ # --set "banyandb.standalone.env[2].name=BYDB_ACCESS_LOG_ROOT_PATH" \
+ # --set "banyandb.standalone.env[2].value=/tmp"
command: |
kubectl create namespace istio-system
helm -n istio-system install skywalking \
@@ -62,12 +69,6 @@ setup:
--set oap.image.repository=skywalking/oap \
--set oap.storageType=banyandb \
--set oap.env.SW_HEALTH_CHECKER=default \
- --set
"banyandb.standalone.env[0].name=BYDB_ENABLE_INGESTION_ACCESS_LOG" \
- --set "banyandb.standalone.env[0].value=\"true\"" \
- --set "banyandb.standalone.env[1].name=BYDB_ENABLE_QUERY_ACCESS_LOG"
\
- --set "banyandb.standalone.env[1].value=\"true\"" \
- --set "banyandb.standalone.env[2].name=BYDB_ACCESS_LOG_ROOT_PATH" \
- --set "banyandb.standalone.env[2].value=/tmp" \
-f test/e2e-v2/cases/profiling/ebpf/network/kubernetes-values.yaml
wait:
- namespace: istio-system
diff --git a/test/e2e-v2/cases/profiling/ebpf/oncpu/banyandb/e2e.yaml
b/test/e2e-v2/cases/profiling/ebpf/oncpu/banyandb/e2e.yaml
index 184d80df80..b990a2e446 100644
--- a/test/e2e-v2/cases/profiling/ebpf/oncpu/banyandb/e2e.yaml
+++ b/test/e2e-v2/cases/profiling/ebpf/oncpu/banyandb/e2e.yaml
@@ -42,6 +42,13 @@ setup:
- name: Install kubectl
command: bash test/e2e-v2/script/prepare/setup-e2e-shell/install.sh
kubectl
- name: Install SkyWalking
+ # To enable BanyanDB access logs for debugging, add these flags to the
helm install:
+ # --set
"banyandb.standalone.env[0].name=BYDB_ENABLE_INGESTION_ACCESS_LOG" \
+ # --set "banyandb.standalone.env[0].value=\"true\"" \
+ # --set "banyandb.standalone.env[1].name=BYDB_ENABLE_QUERY_ACCESS_LOG"
\
+ # --set "banyandb.standalone.env[1].value=\"true\"" \
+ # --set "banyandb.standalone.env[2].name=BYDB_ACCESS_LOG_ROOT_PATH" \
+ # --set "banyandb.standalone.env[2].value=/tmp"
command: |
kubectl create namespace istio-system
helm -n istio-system install skywalking \
@@ -59,12 +66,6 @@ setup:
--set oap.image.repository=skywalking/oap \
--set oap.storageType=banyandb \
--set oap.env.SW_HEALTH_CHECKER=default \
- --set
"banyandb.standalone.env[0].name=BYDB_ENABLE_INGESTION_ACCESS_LOG" \
- --set "banyandb.standalone.env[0].value=\"true\"" \
- --set "banyandb.standalone.env[1].name=BYDB_ENABLE_QUERY_ACCESS_LOG"
\
- --set "banyandb.standalone.env[1].value=\"true\"" \
- --set "banyandb.standalone.env[2].name=BYDB_ACCESS_LOG_ROOT_PATH" \
- --set "banyandb.standalone.env[2].value=/tmp" \
-f test/e2e-v2/cases/profiling/ebpf/kubernetes-values.yaml
wait:
- namespace: istio-system
diff --git
a/test/e2e-v2/cases/storage/banyandb/data-generate/docker-compose.yml
b/test/e2e-v2/cases/storage/banyandb/data-generate/docker-compose.yml
index 10c048ffaf..d61a317c5a 100644
--- a/test/e2e-v2/cases/storage/banyandb/data-generate/docker-compose.yml
+++ b/test/e2e-v2/cases/storage/banyandb/data-generate/docker-compose.yml
@@ -21,7 +21,7 @@ services:
ports:
- 17912:17912
- 17913:17913
- command: standalone --measure-metadata-cache-wait-duration 1m
--stream-metadata-cache-wait-duration 1m --enable-ingestion-access-log
--enable-query-access-log --access-log-root-path /tmp
+ command: standalone --measure-metadata-cache-wait-duration 1m
--stream-metadata-cache-wait-duration 1m
networks:
- e2e
healthcheck:
diff --git a/test/e2e-v2/cases/storage/banyandb/docker-compose.yml
b/test/e2e-v2/cases/storage/banyandb/docker-compose.yml
index 32b44ec207..f51dabc4eb 100644
--- a/test/e2e-v2/cases/storage/banyandb/docker-compose.yml
+++ b/test/e2e-v2/cases/storage/banyandb/docker-compose.yml
@@ -25,7 +25,7 @@ services:
entrypoint: /bin/sh -c
command: |
"chmod 600 /auth-config.yaml &&
- /banyand standalone --measure-metadata-cache-wait-duration 1m
--stream-metadata-cache-wait-duration 1m --enable-ingestion-access-log
--enable-query-access-log --access-log-root-path /tmp
--auth-config-file=/auth-config.yaml"
+ /banyand standalone --measure-metadata-cache-wait-duration 1m
--stream-metadata-cache-wait-duration 1m --auth-config-file=/auth-config.yaml"
networks:
- e2e
diff --git a/test/e2e-v2/cases/storage/banyandb/tls/docker-compose.yml
b/test/e2e-v2/cases/storage/banyandb/tls/docker-compose.yml
index fe842021b6..1218179a63 100644
--- a/test/e2e-v2/cases/storage/banyandb/tls/docker-compose.yml
+++ b/test/e2e-v2/cases/storage/banyandb/tls/docker-compose.yml
@@ -22,7 +22,7 @@ services:
service: banyandb
volumes:
- ./tls:/tls
- command: standalone --tls=true --key-file=/tls/cert.key
--cert-file=/tls/cert.crt --http-grpc-cert-file=/tls/ca.crt
--enable-ingestion-access-log --enable-query-access-log --access-log-root-path
/tmp
+ command: standalone --tls=true --key-file=/tls/cert.key
--cert-file=/tls/cert.crt --http-grpc-cert-file=/tls/ca.crt
networks:
- e2e
diff --git a/test/e2e-v2/script/docker-compose/base-compose.yml
b/test/e2e-v2/script/docker-compose/base-compose.yml
index d421ea6d28..2ed82f1c7a 100644
--- a/test/e2e-v2/script/docker-compose/base-compose.yml
+++ b/test/e2e-v2/script/docker-compose/base-compose.yml
@@ -60,7 +60,9 @@ services:
ports:
- 17912:17912
- 17913:17913
- command: standalone --measure-metadata-cache-wait-duration 1m
--stream-metadata-cache-wait-duration 1m --enable-ingestion-access-log
--enable-query-access-log --access-log-root-path /tmp
+ # Access log flags are for debugging only. Uncomment when investigating
e2e failures:
+ # --enable-ingestion-access-log --enable-query-access-log
--access-log-root-path /tmp
+ command: standalone --measure-metadata-cache-wait-duration 1m
--stream-metadata-cache-wait-duration 1m
healthcheck:
test: [ "CMD", "sh", "-c", "nc -nz 127.0.0.1 17912" ]
interval: 5s