Commit 50d8b345 authored by Nane Kratzke's avatar Nane Kratzke
Browse files

Vorbereitung

parent e15117eb
image: "transit/kubectl-plus:v1.19.4"
stages: stages:
- build - build
- deploy - deploy
- teardown - teardown
variables:
KUBECTL: "transit/kubectl-plus:v1.19.4"
CLUSTER: "rig.th-luebeck.dev"
hiphop-container: hiphop-container:
stage: build stage: build
image: image:
...@@ -41,7 +39,6 @@ space-container: ...@@ -41,7 +39,6 @@ space-container:
secrets: secrets:
stage: build stage: build
image: $KUBECTL
script: script:
- kubectl delete secret gitlab-registry-credentials || true - kubectl delete secret gitlab-registry-credentials || true
- "kubectl create secret docker-registry gitlab-registry-credentials \ - "kubectl create secret docker-registry gitlab-registry-credentials \
...@@ -50,9 +47,17 @@ secrets: ...@@ -50,9 +47,17 @@ secrets:
--docker-password=$REGISTRY_READ_TOKEN \ --docker-password=$REGISTRY_READ_TOKEN \
" "
space:
stage: deploy
script:
- kubectl apply -f deploy/tracing.yaml
- NS=$(kubectl config view -o jsonpath="{..namespace}")
- kubectl label ns $NS istio-injection=disabled --overwrite
- kubectl delete -f deploy/space-deploy+svc.yaml || true
- kubectl apply -f deploy/space-deploy+svc.yaml
hiphop: hiphop:
stage: deploy stage: deploy
image: $KUBECTL
script: script:
- kubectl apply -f deploy/tracing.yaml - kubectl apply -f deploy/tracing.yaml
- NS=$(kubectl config view -o jsonpath="{..namespace}") - NS=$(kubectl config view -o jsonpath="{..namespace}")
...@@ -66,19 +71,8 @@ hiphop: ...@@ -66,19 +71,8 @@ hiphop:
- TIER=3 mo deploy/hiphop-deploy+svc.yaml | kubectl apply -f - - TIER=3 mo deploy/hiphop-deploy+svc.yaml | kubectl apply -f -
- TIER=4 mo deploy/hiphop-deploy+svc.yaml | kubectl apply -f - - TIER=4 mo deploy/hiphop-deploy+svc.yaml | kubectl apply -f -
space:
stage: deploy
image: $KUBECTL
script:
- kubectl apply -f deploy/tracing.yaml
- NS=$(kubectl config view -o jsonpath="{..namespace}")
- kubectl label ns $NS istio-injection=disabled --overwrite
- kubectl delete -f deploy/space-deploy+svc.yaml || true
- kubectl apply -f deploy/space-deploy+svc.yaml
shutdown: shutdown:
stage: teardown stage: teardown
image: $KUBECTL
when: manual when: manual
script: script:
- NS=$(kubectl config view -o jsonpath="{..namespace}") - NS=$(kubectl config view -o jsonpath="{..namespace}")
......
# Lab Tracing # Lab 0x: Tracing
## Inhaltsverzeichnis
- [Lab 0x: Tracing](#lab-0x-tracing)
- [Inhaltsverzeichnis](#inhaltsverzeichnis)
- [Vorbereitung](#vorbereitung)
- [Übung 01: Instrumentieren von Microservices zum Zwecke des Tracings](#übung-01-instrumentieren-von-microservices-zum-zwecke-des-tracings)
- [Übung 02: Propagieren von Traces zwischen Microservices](#übung-02-propagieren-von-traces-zwischen-microservices)
## Vorbereitung
1. [Forken](https://git.mylab.th-luebeck.de/cloud-native/lab-tracing/-/forks/new) Sie sich bitte dieses [Repository](https://git.mylab.th-luebeck.de/cloud-native/lab-tracing).
2. Erstellen Sie anschließend in Gitlab unter `Einstellungen -> Repository -> Bereitstellungstoken` für das in Schritt 1 geforkte Repository einen **Bereitstellungstoken**, um selbstgebaute Container Images deployen zu können.
- **Name:** `Registry read access (deployment)`
- **Username:** `image-registry` (bitte exakt so!)
- **Scope:** `read-registry` (nicht mit *read repository* verwechseln!)
- Klicken Sie anschließend auf `Bereitstellungstoken erstellen` und kopieren Sie sich dieses geheime Token in die Zwischenablage!
3. Hinterlegen Sie nun für Gitlab Build-Pipelines dieses geheime Token unter `Einstellungen -> CI/CD -> Variables` als CI/CD-Variable.
- Klicken Sie auf `ADD Variable`
- **Key:** `REGISTRY_READ_TOKEN` (exakt so)
- **Value:** Fügen Sie hier das geheime Token (Schritt 2) aus der Zwischenablage ein.
- **Type:** `Variable` (nichts anderes)
- **Flags:** Selektieren Sie `Mask Variable` damit das geheime Token in Log-Dateien maskiert wird.
4. Setzen Sie bitte analog zu Schritt 3 die `KUBECONFIG` Variable in `Einstellungen -> CI/CD -> Variables` auf den Inhalt der Kubeconfig-Datei, die Sie für dieses Modul als Access Credential für den bereitgestellten Kubernetes Cluster erhalten haben (Type: `File`). Hierdurch erhält die Build Pipeline für das Deployment Zugriff auf den Cluster.
5. Installieren Sie **[Python 3](https://www.python.org/downloads)** (falls noch nicht geschehen).
6. Installieren Sie einen HTTP Load Generator wie bspw. **[salvo](https://github.com/tarekziade/salvo)** mittels `pip install salvo` oder `python3 -m install salvo` (je nachdem wie Ihre Python-Umgebung aufgesetzt ist). *Sie können mit anderen HTTP Load Generatoren arbeiten. Diese Anleitung basiert jedoch auf `salvo`.*
## Übung 01: Instrumentieren von Microservices zum Zwecke des Tracings
to be done
## Übung 02: Propagieren von Traces zwischen Microservices
to be done
\ No newline at end of file
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment