Skip to content

Микросервис для дипломчика

Notifications You must be signed in to change notification settings

omssky/compressor-service

Repository files navigation

Тестовый стенд в Minikube

Пошаговая инструкция по развёртыванию сервиса в Minikube с инструментами мониторинга.

🚀 Запуск стенда

1. Подготовка Minikube

Инициализация кластера с указанными ресурсами:

minikube delete
minikube start --container-runtime=containerd --driver=docker --cpus 10 --memory 10GB --disk-size 50GB

2. Сборка Docker-образа

Сборка образа в minukube:

minikube image build -t compressor-service:dev .\src\CompressorService.Api\

Проверка наличия образа

minikube image ls

3. Развёртывание в Kubernetes

Применение манифестов:

kubectl apply -f k8s/namespace.yaml
kubectl apply -n compressor -f k8s/deployment.yaml
kubectl apply -n compressor -f k8s/service.yaml

Проверка состояния

kubectl get pods -n compressor
kubectl get svc -n compressor

📊 Мониторинг

Установка Prometheus Stack

  1. Добавление репозитория Helm:
helm repo add prometheus-community https://prometheus-community.github.io/helm-charts
helm repo update
  1. Установка в namespace monitoring с заданными параметрами:
helm install prometheus-stack prometheus-community/kube-prometheus-stack --namespace monitoring --create-namespace --set alertmanager.enabled=false --set grafana.enabled=true --set kubernetesServiceMonitors.enabled=true --set nodeExporter.enabled=true --set prometheusOperator.enabled=true --set prometheus.enabled=true --set defaultRules.create=true  
  1. Применение ServiceMonitor:
kubectl apply -f k8s/servicemonitor.yaml

После этого Prometheus автоматически начнёт собирать метрики с compressor-svc:5000/metrics.

🔌 Получение доступа в кластер

Доступ к сервису

Поднять ingress

minikube service compressor-svc -n compressor --url

Или воспользоваться port-forward

kubectl port-forward -n compressor svc/compressor-svc 5000:5000 5002:5002

Prometheus UI

kubectl port-forward -n monitoring svc/prometheus-stack-kube-prom-prometheus 9090:9090

Grafana

kubectl port-forward -n monitoring svc/prometheus-stack-grafana 3000:80
  • Интерфейс: http://localhost:3000
  • Подготовленный дашборд с основными метриками для нагрузочного можно найти тут

About

Микросервис для дипломчика

Resources

Stars

Watchers

Forks