From 0670850de4b00aac5349f6612fc2a19a0327cb09 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elias=20M=C3=BCller?= Date: Thu, 19 Sep 2024 09:42:43 +0200 Subject: [PATCH 1/2] chore: ES-80 move .env to k8s folder and cleanup main.tf --- kubernetes/.env | 160 +++++++++++++++++++++++++++++++++++ main.tf => terraform/main.tf | 6 +- 2 files changed, 163 insertions(+), 3 deletions(-) create mode 100644 kubernetes/.env rename main.tf => terraform/main.tf (99%) diff --git a/kubernetes/.env b/kubernetes/.env new file mode 100644 index 0000000000..7f7054fa9e --- /dev/null +++ b/kubernetes/.env @@ -0,0 +1,160 @@ + + +# Demo App version +IMAGE_VERSION=1.11.0 +IMAGE_NAME=ghcr.io/open-telemetry/demo +DEMO_VERSION=latest + +# Dependent images +COLLECTOR_CONTRIB_IMAGE=otel/opentelemetry-collector-contrib:0.104.0 +FLAGD_IMAGE=ghcr.io/open-feature/flagd:v0.10.2 +GRAFANA_IMAGE=grafana/grafana:10.4.3 +JAEGERTRACING_IMAGE=jaegertracing/all-in-one:1.57 +# must also update version field in ./src/grafana/provisioning/datasources/opensearch.yaml +OPENSEARCH_IMAGE=opensearchproject/opensearch:2.14.0 +POSTGRES_IMAGE=postgres:16.3 +PROMETHEUS_IMAGE=quay.io/prometheus/prometheus:v2.52.0 +VALKEY_IMAGE=valkey/valkey:7.2-alpine +MONGO_IMAGE=mongo:8.0.0-rc9 +# must also update the version arg in ./test/tracetesting/Dockerfile +TRACETEST_IMAGE=kubeshop/tracetest:v1.3.0 + +# Demo Platform +ENV_PLATFORM=local + +# OpenTelemetry Collector +DOCKER_SOCK=/var/run/docker.sock +OTEL_COLLECTOR_HOST=otelcol +OTEL_COLLECTOR_PORT_GRPC=4317 +OTEL_COLLECTOR_PORT_HTTP=4318 +OTEL_COLLECTOR_CONFIG=./src/otelcollector/otelcol-config.yml +OTEL_COLLECTOR_CONFIG_EXTRAS=./src/otelcollector/otelcol-config-extras.yml +OTEL_EXPORTER_OTLP_ENDPOINT=http://${OTEL_COLLECTOR_HOST}:${OTEL_COLLECTOR_PORT_GRPC} +PUBLIC_OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=http://localhost:8080/otlp-http/v1/traces + +# OpenTelemetry Resource Definitions +OTEL_RESOURCE_ATTRIBUTES=service.namespace=opentelemetry-demo,service.version=${IMAGE_VERSION} + +# Metrics Temporality +OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE=cumulative + +# ****************** +# Core Demo Services +# ****************** +# Accounting Service +ACCOUNTING_SERVICE_DOCKERFILE=./src/accountingservice/Dockerfile + +# Ad Service +AD_SERVICE_PORT=9555 +AD_SERVICE_ADDR=adservice:${AD_SERVICE_PORT} +AD_SERVICE_DOCKERFILE=./src/adservice/Dockerfile + +# Cart Service +CART_SERVICE_PORT=7070 +CART_SERVICE_ADDR=cartservice:${CART_SERVICE_PORT} +CART_SERVICE_DOCKERFILE=./src/cartservice/src/Dockerfile + +# Checkout Service +CHECKOUT_SERVICE_PORT=5050 +CHECKOUT_SERVICE_ADDR=checkoutservice:${CHECKOUT_SERVICE_PORT} +CHECKOUT_SERVICE_DOCKERFILE=./src/checkoutservice/Dockerfile + +# Currency Service +CURRENCY_SERVICE_PORT=7001 +CURRENCY_SERVICE_ADDR=currencyservice:${CURRENCY_SERVICE_PORT} +CURRENCY_SERVICE_DOCKERFILE=./src/currencyservice/Dockerfile + +# Email Service +EMAIL_SERVICE_PORT=6060 +EMAIL_SERVICE_ADDR=http://emailservice:${EMAIL_SERVICE_PORT} +EMAIL_SERVICE_DOCKERFILE=./src/emailservice/Dockerfile + +# Fraud Service +FRAUD_SERVICE_DOCKERFILE=./src/frauddetectionservice/Dockerfile + +# Frontend +FRONTEND_PORT=8080 +FRONTEND_ADDR=frontend:${FRONTEND_PORT} +FRONTEND_DOCKERFILE=./src/frontend/Dockerfile + +# Frontend Proxy (Envoy) +FRONTEND_HOST=frontend +ENVOY_PORT=8080 +FRONTEND_PROXY_ADDR=frontend-proxy:${ENVOY_PORT} +FRONTEND_PROXY_DOCKERFILE=./src/frontendproxy/Dockerfile + +# Image Provider +IMAGE_PROVIDER_HOST=imageprovider +IMAGE_PROVIDER_PORT=8081 +IMAGE_PROVIDER_DOCKERFILE=./src/imageprovider/Dockerfile + +# Load Generator +LOCUST_WEB_PORT=8089 +LOCUST_USERS=10 +LOCUST_HOST=http://${FRONTEND_PROXY_ADDR} +LOCUST_WEB_HOST=loadgenerator +LOCUST_AUTOSTART=true +LOCUST_HEADLESS=false +LOAD_GENERATOR_DOCKERFILE=./src/loadgenerator/Dockerfile + +# Payment Service +PAYMENT_SERVICE_PORT=50051 +PAYMENT_SERVICE_ADDR=paymentservice:${PAYMENT_SERVICE_PORT} +PAYMENT_SERVICE_DOCKERFILE=./src/paymentservice/Dockerfile + +# Product Catalog Service +PRODUCT_CATALOG_SERVICE_PORT=3550 +PRODUCT_CATALOG_SERVICE_ADDR=productcatalogservice:${PRODUCT_CATALOG_SERVICE_PORT} +PRODUCT_CATALOG_DOCKERFILE=./src/productcatalogservice/Dockerfile + +# Quote Service +QUOTE_SERVICE_PORT=8090 +QUOTE_SERVICE_ADDR=http://quoteservice:${QUOTE_SERVICE_PORT} +QUOTE_SERVICE_DOCKERFILE=./src/quoteservice/Dockerfile + +# Recommendation Service +RECOMMENDATION_SERVICE_PORT=9001 +RECOMMENDATION_SERVICE_ADDR=recommendationservice:${RECOMMENDATION_SERVICE_PORT} +RECOMMENDATION_SERVICE_DOCKERFILE=./src/recommendationservice/Dockerfile + +# Shipping Service +SHIPPING_SERVICE_PORT=50050 +SHIPPING_SERVICE_ADDR=shippingservice:${SHIPPING_SERVICE_PORT} +SHIPPING_SERVICE_DOCKERFILE=./src/shippingservice/Dockerfile + +# ****************** +# Dependent Services +# ****************** +# flagd +FLAGD_HOST=flagd +FLAGD_PORT=8013 + +# Kafka +KAFKA_SERVICE_PORT=9092 +KAFKA_SERVICE_ADDR=kafka:${KAFKA_SERVICE_PORT} +KAFKA_SERVICE_DOCKERFILE=./src/kafka/Dockerfile + +# Valkey +VALKEY_PORT=6379 +VALKEY_ADDR=valkey-cart:${VALKEY_PORT} + +# MongoDB +MONGO_PORT=27017 +MONGO_USERNAME=mongo +MONGO_PASSWORD=mongo_product_catalog + +# ******************** +# Telemetry Components +# ******************** +# Grafana +GRAFANA_SERVICE_PORT=3000 +GRAFANA_SERVICE_HOST=grafana + +# Jaeger +JAEGER_SERVICE_PORT=16686 +JAEGER_SERVICE_HOST=jaeger + +# Prometheus +PROMETHEUS_SERVICE_PORT=9090 +PROMETHEUS_SERVICE_HOST=prometheus +PROMETHEUS_ADDR=${PROMETHEUS_SERVICE_HOST}:${PROMETHEUS_SERVICE_PORT} diff --git a/main.tf b/terraform/main.tf similarity index 99% rename from main.tf rename to terraform/main.tf index d6ad7b5baf..da2f47b010 100644 --- a/main.tf +++ b/terraform/main.tf @@ -9,13 +9,13 @@ terraform { variable "project_path" { type = string - default = "C:\\Users\\Pasca\\Documents\\Uni\\Master\\3. Semester\\Enpro\\opentelemetry-demo" + default = "/" description = "Path to the project" } variable "seperator" { type = string - default = "\\" + default = "/" description = "Path seperator" } @@ -47,7 +47,7 @@ resource "docker_container" "accountingservice-container" { "OTEL_EXPORTER_OTLP_ENDPOINT=http://otel-collector:4317", "OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE=Cumulative", "OTEL_RESOURCE_ATTRIBUTES=docker.cli.cobra.command_path=docker%20compose", - "OTEL_SERVICE_NAME=ccountingservice" + "OTEL_SERVICE_NAME=accountingservice" ] } From 1abb87ff360702dc00ec0444105b36956f23328c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Elias=20M=C3=BCller?= Date: Fri, 20 Sep 2024 10:46:01 +0200 Subject: [PATCH 2/2] chore: ES-80 remove .env --- kubernetes/.env | 160 ------------------------------------------------ 1 file changed, 160 deletions(-) delete mode 100644 kubernetes/.env diff --git a/kubernetes/.env b/kubernetes/.env deleted file mode 100644 index 7f7054fa9e..0000000000 --- a/kubernetes/.env +++ /dev/null @@ -1,160 +0,0 @@ - - -# Demo App version -IMAGE_VERSION=1.11.0 -IMAGE_NAME=ghcr.io/open-telemetry/demo -DEMO_VERSION=latest - -# Dependent images -COLLECTOR_CONTRIB_IMAGE=otel/opentelemetry-collector-contrib:0.104.0 -FLAGD_IMAGE=ghcr.io/open-feature/flagd:v0.10.2 -GRAFANA_IMAGE=grafana/grafana:10.4.3 -JAEGERTRACING_IMAGE=jaegertracing/all-in-one:1.57 -# must also update version field in ./src/grafana/provisioning/datasources/opensearch.yaml -OPENSEARCH_IMAGE=opensearchproject/opensearch:2.14.0 -POSTGRES_IMAGE=postgres:16.3 -PROMETHEUS_IMAGE=quay.io/prometheus/prometheus:v2.52.0 -VALKEY_IMAGE=valkey/valkey:7.2-alpine -MONGO_IMAGE=mongo:8.0.0-rc9 -# must also update the version arg in ./test/tracetesting/Dockerfile -TRACETEST_IMAGE=kubeshop/tracetest:v1.3.0 - -# Demo Platform -ENV_PLATFORM=local - -# OpenTelemetry Collector -DOCKER_SOCK=/var/run/docker.sock -OTEL_COLLECTOR_HOST=otelcol -OTEL_COLLECTOR_PORT_GRPC=4317 -OTEL_COLLECTOR_PORT_HTTP=4318 -OTEL_COLLECTOR_CONFIG=./src/otelcollector/otelcol-config.yml -OTEL_COLLECTOR_CONFIG_EXTRAS=./src/otelcollector/otelcol-config-extras.yml -OTEL_EXPORTER_OTLP_ENDPOINT=http://${OTEL_COLLECTOR_HOST}:${OTEL_COLLECTOR_PORT_GRPC} -PUBLIC_OTEL_EXPORTER_OTLP_TRACES_ENDPOINT=http://localhost:8080/otlp-http/v1/traces - -# OpenTelemetry Resource Definitions -OTEL_RESOURCE_ATTRIBUTES=service.namespace=opentelemetry-demo,service.version=${IMAGE_VERSION} - -# Metrics Temporality -OTEL_EXPORTER_OTLP_METRICS_TEMPORALITY_PREFERENCE=cumulative - -# ****************** -# Core Demo Services -# ****************** -# Accounting Service -ACCOUNTING_SERVICE_DOCKERFILE=./src/accountingservice/Dockerfile - -# Ad Service -AD_SERVICE_PORT=9555 -AD_SERVICE_ADDR=adservice:${AD_SERVICE_PORT} -AD_SERVICE_DOCKERFILE=./src/adservice/Dockerfile - -# Cart Service -CART_SERVICE_PORT=7070 -CART_SERVICE_ADDR=cartservice:${CART_SERVICE_PORT} -CART_SERVICE_DOCKERFILE=./src/cartservice/src/Dockerfile - -# Checkout Service -CHECKOUT_SERVICE_PORT=5050 -CHECKOUT_SERVICE_ADDR=checkoutservice:${CHECKOUT_SERVICE_PORT} -CHECKOUT_SERVICE_DOCKERFILE=./src/checkoutservice/Dockerfile - -# Currency Service -CURRENCY_SERVICE_PORT=7001 -CURRENCY_SERVICE_ADDR=currencyservice:${CURRENCY_SERVICE_PORT} -CURRENCY_SERVICE_DOCKERFILE=./src/currencyservice/Dockerfile - -# Email Service -EMAIL_SERVICE_PORT=6060 -EMAIL_SERVICE_ADDR=http://emailservice:${EMAIL_SERVICE_PORT} -EMAIL_SERVICE_DOCKERFILE=./src/emailservice/Dockerfile - -# Fraud Service -FRAUD_SERVICE_DOCKERFILE=./src/frauddetectionservice/Dockerfile - -# Frontend -FRONTEND_PORT=8080 -FRONTEND_ADDR=frontend:${FRONTEND_PORT} -FRONTEND_DOCKERFILE=./src/frontend/Dockerfile - -# Frontend Proxy (Envoy) -FRONTEND_HOST=frontend -ENVOY_PORT=8080 -FRONTEND_PROXY_ADDR=frontend-proxy:${ENVOY_PORT} -FRONTEND_PROXY_DOCKERFILE=./src/frontendproxy/Dockerfile - -# Image Provider -IMAGE_PROVIDER_HOST=imageprovider -IMAGE_PROVIDER_PORT=8081 -IMAGE_PROVIDER_DOCKERFILE=./src/imageprovider/Dockerfile - -# Load Generator -LOCUST_WEB_PORT=8089 -LOCUST_USERS=10 -LOCUST_HOST=http://${FRONTEND_PROXY_ADDR} -LOCUST_WEB_HOST=loadgenerator -LOCUST_AUTOSTART=true -LOCUST_HEADLESS=false -LOAD_GENERATOR_DOCKERFILE=./src/loadgenerator/Dockerfile - -# Payment Service -PAYMENT_SERVICE_PORT=50051 -PAYMENT_SERVICE_ADDR=paymentservice:${PAYMENT_SERVICE_PORT} -PAYMENT_SERVICE_DOCKERFILE=./src/paymentservice/Dockerfile - -# Product Catalog Service -PRODUCT_CATALOG_SERVICE_PORT=3550 -PRODUCT_CATALOG_SERVICE_ADDR=productcatalogservice:${PRODUCT_CATALOG_SERVICE_PORT} -PRODUCT_CATALOG_DOCKERFILE=./src/productcatalogservice/Dockerfile - -# Quote Service -QUOTE_SERVICE_PORT=8090 -QUOTE_SERVICE_ADDR=http://quoteservice:${QUOTE_SERVICE_PORT} -QUOTE_SERVICE_DOCKERFILE=./src/quoteservice/Dockerfile - -# Recommendation Service -RECOMMENDATION_SERVICE_PORT=9001 -RECOMMENDATION_SERVICE_ADDR=recommendationservice:${RECOMMENDATION_SERVICE_PORT} -RECOMMENDATION_SERVICE_DOCKERFILE=./src/recommendationservice/Dockerfile - -# Shipping Service -SHIPPING_SERVICE_PORT=50050 -SHIPPING_SERVICE_ADDR=shippingservice:${SHIPPING_SERVICE_PORT} -SHIPPING_SERVICE_DOCKERFILE=./src/shippingservice/Dockerfile - -# ****************** -# Dependent Services -# ****************** -# flagd -FLAGD_HOST=flagd -FLAGD_PORT=8013 - -# Kafka -KAFKA_SERVICE_PORT=9092 -KAFKA_SERVICE_ADDR=kafka:${KAFKA_SERVICE_PORT} -KAFKA_SERVICE_DOCKERFILE=./src/kafka/Dockerfile - -# Valkey -VALKEY_PORT=6379 -VALKEY_ADDR=valkey-cart:${VALKEY_PORT} - -# MongoDB -MONGO_PORT=27017 -MONGO_USERNAME=mongo -MONGO_PASSWORD=mongo_product_catalog - -# ******************** -# Telemetry Components -# ******************** -# Grafana -GRAFANA_SERVICE_PORT=3000 -GRAFANA_SERVICE_HOST=grafana - -# Jaeger -JAEGER_SERVICE_PORT=16686 -JAEGER_SERVICE_HOST=jaeger - -# Prometheus -PROMETHEUS_SERVICE_PORT=9090 -PROMETHEUS_SERVICE_HOST=prometheus -PROMETHEUS_ADDR=${PROMETHEUS_SERVICE_HOST}:${PROMETHEUS_SERVICE_PORT}